From 2ba160ae0730b60a9c9424368bbf6f91dd11a31f Mon Sep 17 00:00:00 2001 From: Mystical Date: Wed, 11 Apr 2018 08:42:06 -0600 Subject: [PATCH 001/130] Initial commit --- LICENSE | 674 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ README.md | 2 + 2 files changed, 676 insertions(+) create mode 100644 LICENSE create mode 100644 README.md diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..94a9ed0 --- /dev/null +++ b/LICENSE @@ -0,0 +1,674 @@ + GNU GENERAL PUBLIC LICENSE + Version 3, 29 June 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The GNU General Public License is a free, copyleft license for +software and other kinds of works. + + The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +the GNU General Public License is intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. We, the Free Software Foundation, use the +GNU General Public License for most of our software; it applies also to +any other work released this way by its authors. You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +them if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs, and that you know you can do these things. + + To protect your rights, we need to prevent others from denying you +these rights or asking you to surrender the rights. Therefore, you have +certain responsibilities if you distribute copies of the software, or if +you modify it: responsibilities to respect the freedom of others. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must pass on to the recipients the same +freedoms that you received. You must make sure that they, too, receive +or can get the source code. And you must show them these terms so they +know their rights. + + Developers that use the GNU GPL protect your rights with two steps: +(1) assert copyright on the software, and (2) offer you this License +giving you legal permission to copy, distribute and/or modify it. + + For the developers' and authors' protection, the GPL clearly explains +that there is no warranty for this free software. For both users' and +authors' sake, the GPL requires that modified versions be marked as +changed, so that their problems will not be attributed erroneously to +authors of previous versions. + + Some devices are designed to deny users access to install or run +modified versions of the software inside them, although the manufacturer +can do so. This is fundamentally incompatible with the aim of +protecting users' freedom to change the software. The systematic +pattern of such abuse occurs in the area of products for individuals to +use, which is precisely where it is most unacceptable. Therefore, we +have designed this version of the GPL to prohibit the practice for those +products. If such problems arise substantially in other domains, we +stand ready to extend this provision to those domains in future versions +of the GPL, as needed to protect the freedom of users. + + Finally, every program is threatened constantly by software patents. +States should not allow patents to restrict development and use of +software on general-purpose computers, but in those that do, we wish to +avoid the special danger that patents applied to a free program could +make it effectively proprietary. To prevent this, the GPL assures that +patents cannot be used to render the program non-free. + + The precise terms and conditions for copying, distribution and +modification follow. + + TERMS AND CONDITIONS + + 0. Definitions. + + "This License" refers to version 3 of the GNU General Public License. + + "Copyright" also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. + + "The Program" refers to any copyrightable work licensed under this +License. Each licensee is addressed as "you". "Licensees" and +"recipients" may be individuals or organizations. + + To "modify" a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a "modified version" of the +earlier work or a work "based on" the earlier work. + + A "covered work" means either the unmodified Program or a work based +on the Program. + + To "propagate" a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + + To "convey" a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. + + An interactive user interface displays "Appropriate Legal Notices" +to the extent that it includes a convenient and prominently visible +feature that (1) displays an appropriate copyright notice, and (2) +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + + 1. Source Code. + + The "source code" for a work means the preferred form of the work +for making modifications to it. "Object code" means any non-source +form of a work. + + A "Standard Interface" means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + + The "System Libraries" of an executable work include anything, other +than the work as a whole, that (a) is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and (b) serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +"Major Component", in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + + The "Corresponding Source" for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + + The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. + + The Corresponding Source for a work in source code form is that +same work. + + 2. Basic Permissions. + + All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + + You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + + Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + + 3. Protecting Users' Legal Rights From Anti-Circumvention Law. + + No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + + When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + + 4. Conveying Verbatim Copies. + + You may convey verbatim copies of the Program's source code as you +receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + + You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + + 5. Conveying Modified Source Versions. + + You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified + it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is + released under this License and any conditions added under section + 7. This requirement modifies the requirement in section 4 to + "keep intact all notices". + + c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so. + + A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +"aggregate" if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + + 6. Conveying Non-Source Forms. + + You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + + a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the + Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b. + + d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided + you inform other peers where the object code and Corresponding + Source of the work are being offered to the general public at no + charge under subsection 6d. + + A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + + A "User Product" is either (1) a "consumer product", which means any +tangible personal property which is normally used for personal, family, +or household purposes, or (2) anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, "normally used" refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + + "Installation Information" for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + + If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + + The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + + Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + + 7. Additional Terms. + + "Additional permissions" are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + + When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + + Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or + requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or + authors of the material; or + + e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions of + it) with contractual assumptions of liability to the recipient, for + any liability that these contractual assumptions directly impose on + those licensors and authors. + + All other non-permissive additional terms are considered "further +restrictions" within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + + If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + + Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + + 8. Termination. + + You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + + However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated (a) +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and (b) permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + + Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + + Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + + 9. Acceptance Not Required for Having Copies. + + You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + + 10. Automatic Licensing of Downstream Recipients. + + Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + + An "entity transaction" is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + + You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + + 11. Patents. + + A "contributor" is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's "contributor version". + + A contributor's "essential patent claims" are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, "control" includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + + Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + + In the following three paragraphs, a "patent license" is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To "grant" such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + + If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either (1) cause the Corresponding Source to be so +available, or (2) arrange to deprive yourself of the benefit of the +patent license for this particular work, or (3) arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. "Knowingly relying" means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + + If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + + A patent license is "discriminatory" if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license (a) in connection with copies of the covered work +conveyed by you (or copies made from those copies), or (b) primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + + Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + + 12. No Surrender of Others' Freedom. + + If conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. + + 13. Use with the GNU Affero General Public License. + + Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU Affero General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the special requirements of the GNU Affero General Public License, +section 13, concerning interaction through a network will apply to the +combination as such. + + 14. Revised Versions of this License. + + The Free Software Foundation may publish revised and/or new versions of +the GNU General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + + Each version is given a distinguishing version number. If the +Program specifies that a certain numbered version of the GNU General +Public License "or any later version" applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU General Public License, you may choose any version ever published +by the Free Software Foundation. + + If the Program specifies that a proxy can decide which future +versions of the GNU General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + + Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + + 15. Disclaimer of Warranty. + + THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF +ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. Limitation of Liability. + + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF +SUCH DAMAGES. + + 17. Interpretation of Sections 15 and 16. + + If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +state the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . + +Also add information on how to contact you by electronic and paper mail. + + If the program does terminal interaction, make it output a short +notice like this when it starts in an interactive mode: + + Copyright (C) + This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, your program's commands +might be different; for a GUI interface, you would use an "about box". + + You should also get your employer (if you work as a programmer) or school, +if any, to sign a "copyright disclaimer" for the program, if necessary. +For more information on this, and how to apply and follow the GNU GPL, see +. + + The GNU General Public License does not permit incorporating your program +into proprietary programs. If your program is a subroutine library, you +may consider it more useful to permit linking proprietary applications with +the library. If this is what you want to do, use the GNU Lesser General +Public License instead of this License. But first, please read +. diff --git a/README.md b/README.md new file mode 100644 index 0000000..a0020a8 --- /dev/null +++ b/README.md @@ -0,0 +1,2 @@ +# VRChatJS +A JavaScript for the VRChat API. From 1f69920f512e64e10ee4870185fac2b168bb012b Mon Sep 17 00:00:00 2001 From: Mystical Date: Wed, 11 Apr 2018 08:43:33 -0600 Subject: [PATCH 002/130] Added README.md to the VRChatJS --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index a0020a8..7b0cebc 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,4 @@ # VRChatJS A JavaScript for the VRChat API. + +For documentation based on the API itself. Check out our site. https://vrchatapi.github.io/ From 725df851c7bfd5b62a3dae0c4bebfc27681cc01b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Foorack=20/=20Max=20Fax=C3=A4lv?= Date: Sun, 25 Jul 2021 20:00:58 +0200 Subject: [PATCH 003/130] Initial commit Autogenerated library for NodeJS on OpenAPI spec 2021-07-25 --- .babelrc | 33 + .gitignore | 33 + .openapi-generator-ignore | 23 + .openapi-generator/FILES | 138 + .openapi-generator/VERSION | 1 + .travis.yml | 5 + LICENSE | 695 +--- README.md | 275 +- dist/ApiClient.js | 786 ++++ dist/api/AuthenticationApi.js | 273 ++ dist/api/FilesApi.js | 555 +++ dist/api/FriendsApi.js | 268 ++ dist/api/NotificationsApi.js | 264 ++ dist/api/SystemApi.js | 178 + dist/api/UsersApi.js | 286 ++ dist/api/WorldsApi.js | 131 + dist/index.js | 359 ++ dist/model/Config.js | 973 +++++ dist/model/ConfigAnnouncements.js | 92 + dist/model/ConfigDownloadUrls.js | 104 + dist/model/ConfigDynamicWorldRows.js | 143 + dist/model/ConfigEvents.js | 187 + dist/model/CurrentUser.js | 578 +++ dist/model/DeploymentGroup.js | 54 + dist/model/DeveloperType.js | 54 + dist/model/Error.js | 77 + dist/model/File.js | 150 + dist/model/FileData.js | 173 + dist/model/FileStatus.js | 52 + dist/model/FileVersion.js | 145 + dist/model/InlineObject.js | 78 + dist/model/InlineObject1.js | 78 + dist/model/InlineObject2.js | 150 + dist/model/InlineObject3.js | 111 + dist/model/InlineObject4.js | 129 + dist/model/InlineResponse200.js | 89 + dist/model/InlineResponse2001.js | 78 + dist/model/InlineResponse2002.js | 100 + dist/model/InlineResponse2003.js | 103 + dist/model/InlineResponse2004.js | 134 + dist/model/InlineResponse2005.js | 78 + dist/model/InlineResponse401.js | 80 + dist/model/LimitedUser.js | 246 ++ dist/model/LimitedWorld.js | 270 ++ dist/model/MIMEType.js | 74 + dist/model/Notification.js | 162 + dist/model/NotificationType.js | 60 + dist/model/ReleaseStatus.js | 52 + dist/model/Response.js | 89 + dist/model/Success.js | 77 + dist/model/User.js | 331 ++ dist/model/UserState.js | 52 + dist/model/UserStatus.js | 56 + docs/AuthenticationApi.md | 330 ++ docs/Config.md | 83 + docs/ConfigAnnouncements.md | 10 + docs/ConfigDownloadUrls.md | 11 + docs/ConfigDynamicWorldRows.md | 15 + docs/ConfigEvents.md | 18 + docs/CurrentUser.md | 54 + docs/DeploymentGroup.md | 14 + docs/DeveloperType.md | 14 + docs/Error.md | 9 + docs/File.md | 15 + docs/FileData.md | 28 + docs/FileStatus.md | 12 + docs/FileVersion.md | 15 + docs/FilesApi.md | 600 +++ docs/FriendsApi.md | 294 ++ docs/InlineObject.md | 9 + docs/InlineObject1.md | 9 + docs/InlineObject2.md | 17 + docs/InlineObject3.md | 12 + docs/InlineObject4.md | 29 + docs/InlineResponse200.md | 10 + docs/InlineResponse2001.md | 9 + docs/InlineResponse2002.md | 11 + docs/InlineResponse2003.md | 11 + docs/InlineResponse2004.md | 14 + docs/InlineResponse2005.md | 9 + docs/InlineResponse401.md | 9 + docs/LimitedUser.md | 24 + docs/LimitedWorld.md | 27 + docs/MIMEType.md | 34 + docs/Notification.md | 16 + docs/NotificationType.md | 20 + docs/NotificationsApi.md | 296 ++ docs/ReleaseStatus.md | 12 + docs/Response.md | 10 + docs/Success.md | 9 + docs/SystemApi.md | 172 + docs/User.md | 32 + docs/UserState.md | 12 + docs/UserStatus.md | 16 + docs/UsersApi.md | 308 ++ docs/WorldsApi.md | 96 + generate.sh | 16 + git_push.sh | 58 + mocha.opts | 1 + openapitools.json | 7 + package-lock.json | 4208 +++++++++++++++++++++ package.json | 46 + src/ApiClient.js | 692 ++++ src/api/AuthenticationApi.js | 307 ++ src/api/FilesApi.js | 597 +++ src/api/FriendsApi.js | 288 ++ src/api/NotificationsApi.js | 288 ++ src/api/SystemApi.js | 203 + src/api/UsersApi.js | 307 ++ src/api/WorldsApi.js | 131 + src/index.js | 356 ++ src/model/Config.js | 889 +++++ src/model/ConfigAnnouncements.js | 86 + src/model/ConfigDownloadUrls.js | 97 + src/model/ConfigDynamicWorldRows.js | 132 + src/model/ConfigEvents.js | 173 + src/model/CurrentUser.js | 525 +++ src/model/DeploymentGroup.js | 60 + src/model/DeveloperType.js | 60 + src/model/Error.js | 72 + src/model/File.js | 137 + src/model/FileData.js | 163 + src/model/FileStatus.js | 53 + src/model/FileVersion.js | 132 + src/model/InlineObject.js | 73 + src/model/InlineObject1.js | 73 + src/model/InlineObject2.js | 137 + src/model/InlineObject3.js | 102 + src/model/InlineObject4.js | 126 + src/model/InlineResponse200.js | 83 + src/model/InlineResponse2001.js | 73 + src/model/InlineResponse2002.js | 93 + src/model/InlineResponse2003.js | 96 + src/model/InlineResponse2004.js | 124 + src/model/InlineResponse2005.js | 73 + src/model/InlineResponse401.js | 74 + src/model/LimitedUser.js | 224 ++ src/model/LimitedWorld.js | 246 ++ src/model/MIMEType.js | 130 + src/model/Notification.js | 149 + src/model/NotificationType.js | 81 + src/model/ReleaseStatus.js | 53 + src/model/Response.js | 83 + src/model/Success.js | 72 + src/model/User.js | 300 ++ src/model/UserState.js | 53 + src/model/UserStatus.js | 67 + test/api/AuthenticationApi.spec.js | 113 + test/api/FilesApi.spec.js | 153 + test/api/FriendsApi.spec.js | 103 + test/api/NotificationsApi.spec.js | 103 + test/api/SystemApi.spec.js | 93 + test/api/UsersApi.spec.js | 103 + test/api/WorldsApi.spec.js | 63 + test/model/Config.spec.js | 509 +++ test/model/ConfigAnnouncements.spec.js | 71 + test/model/ConfigDownloadUrls.spec.js | 77 + test/model/ConfigDynamicWorldRows.spec.js | 101 + test/model/ConfigEvents.spec.js | 119 + test/model/CurrentUser.spec.js | 335 ++ test/model/DeploymentGroup.spec.js | 58 + test/model/DeveloperType.spec.js | 58 + test/model/Error.spec.js | 65 + test/model/File.spec.js | 101 + test/model/FileData.spec.js | 101 + test/model/FileStatus.spec.js | 58 + test/model/FileVersion.spec.js | 101 + test/model/InlineObject.spec.js | 65 + test/model/InlineObject1.spec.js | 65 + test/model/InlineObject2.spec.js | 113 + test/model/InlineObject3.spec.js | 83 + test/model/InlineObject4.spec.js | 77 + test/model/InlineResponse200.spec.js | 71 + test/model/InlineResponse2001.spec.js | 65 + test/model/InlineResponse2002.spec.js | 77 + test/model/InlineResponse2003.spec.js | 77 + test/model/InlineResponse2004.spec.js | 95 + test/model/InlineResponse2005.spec.js | 65 + test/model/InlineResponse401.spec.js | 65 + test/model/LimitedUser.spec.js | 155 + test/model/LimitedWorld.spec.js | 173 + test/model/MIMEType.spec.js | 58 + test/model/Notification.spec.js | 107 + test/model/NotificationType.spec.js | 58 + test/model/ReleaseStatus.spec.js | 58 + test/model/Response.spec.js | 71 + test/model/Success.spec.js | 65 + test/model/User.spec.js | 203 + test/model/UserState.spec.js | 58 + test/model/UserStatus.spec.js | 58 + 190 files changed, 28976 insertions(+), 677 deletions(-) create mode 100644 .babelrc create mode 100644 .gitignore create mode 100644 .openapi-generator-ignore create mode 100644 .openapi-generator/FILES create mode 100644 .openapi-generator/VERSION create mode 100644 .travis.yml create mode 100644 dist/ApiClient.js create mode 100644 dist/api/AuthenticationApi.js create mode 100644 dist/api/FilesApi.js create mode 100644 dist/api/FriendsApi.js create mode 100644 dist/api/NotificationsApi.js create mode 100644 dist/api/SystemApi.js create mode 100644 dist/api/UsersApi.js create mode 100644 dist/api/WorldsApi.js create mode 100644 dist/index.js create mode 100644 dist/model/Config.js create mode 100644 dist/model/ConfigAnnouncements.js create mode 100644 dist/model/ConfigDownloadUrls.js create mode 100644 dist/model/ConfigDynamicWorldRows.js create mode 100644 dist/model/ConfigEvents.js create mode 100644 dist/model/CurrentUser.js create mode 100644 dist/model/DeploymentGroup.js create mode 100644 dist/model/DeveloperType.js create mode 100644 dist/model/Error.js create mode 100644 dist/model/File.js create mode 100644 dist/model/FileData.js create mode 100644 dist/model/FileStatus.js create mode 100644 dist/model/FileVersion.js create mode 100644 dist/model/InlineObject.js create mode 100644 dist/model/InlineObject1.js create mode 100644 dist/model/InlineObject2.js create mode 100644 dist/model/InlineObject3.js create mode 100644 dist/model/InlineObject4.js create mode 100644 dist/model/InlineResponse200.js create mode 100644 dist/model/InlineResponse2001.js create mode 100644 dist/model/InlineResponse2002.js create mode 100644 dist/model/InlineResponse2003.js create mode 100644 dist/model/InlineResponse2004.js create mode 100644 dist/model/InlineResponse2005.js create mode 100644 dist/model/InlineResponse401.js create mode 100644 dist/model/LimitedUser.js create mode 100644 dist/model/LimitedWorld.js create mode 100644 dist/model/MIMEType.js create mode 100644 dist/model/Notification.js create mode 100644 dist/model/NotificationType.js create mode 100644 dist/model/ReleaseStatus.js create mode 100644 dist/model/Response.js create mode 100644 dist/model/Success.js create mode 100644 dist/model/User.js create mode 100644 dist/model/UserState.js create mode 100644 dist/model/UserStatus.js create mode 100644 docs/AuthenticationApi.md create mode 100644 docs/Config.md create mode 100644 docs/ConfigAnnouncements.md create mode 100644 docs/ConfigDownloadUrls.md create mode 100644 docs/ConfigDynamicWorldRows.md create mode 100644 docs/ConfigEvents.md create mode 100644 docs/CurrentUser.md create mode 100644 docs/DeploymentGroup.md create mode 100644 docs/DeveloperType.md create mode 100644 docs/Error.md create mode 100644 docs/File.md create mode 100644 docs/FileData.md create mode 100644 docs/FileStatus.md create mode 100644 docs/FileVersion.md create mode 100644 docs/FilesApi.md create mode 100644 docs/FriendsApi.md create mode 100644 docs/InlineObject.md create mode 100644 docs/InlineObject1.md create mode 100644 docs/InlineObject2.md create mode 100644 docs/InlineObject3.md create mode 100644 docs/InlineObject4.md create mode 100644 docs/InlineResponse200.md create mode 100644 docs/InlineResponse2001.md create mode 100644 docs/InlineResponse2002.md create mode 100644 docs/InlineResponse2003.md create mode 100644 docs/InlineResponse2004.md create mode 100644 docs/InlineResponse2005.md create mode 100644 docs/InlineResponse401.md create mode 100644 docs/LimitedUser.md create mode 100644 docs/LimitedWorld.md create mode 100644 docs/MIMEType.md create mode 100644 docs/Notification.md create mode 100644 docs/NotificationType.md create mode 100644 docs/NotificationsApi.md create mode 100644 docs/ReleaseStatus.md create mode 100644 docs/Response.md create mode 100644 docs/Success.md create mode 100644 docs/SystemApi.md create mode 100644 docs/User.md create mode 100644 docs/UserState.md create mode 100644 docs/UserStatus.md create mode 100644 docs/UsersApi.md create mode 100644 docs/WorldsApi.md create mode 100644 generate.sh create mode 100644 git_push.sh create mode 100644 mocha.opts create mode 100644 openapitools.json create mode 100644 package-lock.json create mode 100644 package.json create mode 100644 src/ApiClient.js create mode 100644 src/api/AuthenticationApi.js create mode 100644 src/api/FilesApi.js create mode 100644 src/api/FriendsApi.js create mode 100644 src/api/NotificationsApi.js create mode 100644 src/api/SystemApi.js create mode 100644 src/api/UsersApi.js create mode 100644 src/api/WorldsApi.js create mode 100644 src/index.js create mode 100644 src/model/Config.js create mode 100644 src/model/ConfigAnnouncements.js create mode 100644 src/model/ConfigDownloadUrls.js create mode 100644 src/model/ConfigDynamicWorldRows.js create mode 100644 src/model/ConfigEvents.js create mode 100644 src/model/CurrentUser.js create mode 100644 src/model/DeploymentGroup.js create mode 100644 src/model/DeveloperType.js create mode 100644 src/model/Error.js create mode 100644 src/model/File.js create mode 100644 src/model/FileData.js create mode 100644 src/model/FileStatus.js create mode 100644 src/model/FileVersion.js create mode 100644 src/model/InlineObject.js create mode 100644 src/model/InlineObject1.js create mode 100644 src/model/InlineObject2.js create mode 100644 src/model/InlineObject3.js create mode 100644 src/model/InlineObject4.js create mode 100644 src/model/InlineResponse200.js create mode 100644 src/model/InlineResponse2001.js create mode 100644 src/model/InlineResponse2002.js create mode 100644 src/model/InlineResponse2003.js create mode 100644 src/model/InlineResponse2004.js create mode 100644 src/model/InlineResponse2005.js create mode 100644 src/model/InlineResponse401.js create mode 100644 src/model/LimitedUser.js create mode 100644 src/model/LimitedWorld.js create mode 100644 src/model/MIMEType.js create mode 100644 src/model/Notification.js create mode 100644 src/model/NotificationType.js create mode 100644 src/model/ReleaseStatus.js create mode 100644 src/model/Response.js create mode 100644 src/model/Success.js create mode 100644 src/model/User.js create mode 100644 src/model/UserState.js create mode 100644 src/model/UserStatus.js create mode 100644 test/api/AuthenticationApi.spec.js create mode 100644 test/api/FilesApi.spec.js create mode 100644 test/api/FriendsApi.spec.js create mode 100644 test/api/NotificationsApi.spec.js create mode 100644 test/api/SystemApi.spec.js create mode 100644 test/api/UsersApi.spec.js create mode 100644 test/api/WorldsApi.spec.js create mode 100644 test/model/Config.spec.js create mode 100644 test/model/ConfigAnnouncements.spec.js create mode 100644 test/model/ConfigDownloadUrls.spec.js create mode 100644 test/model/ConfigDynamicWorldRows.spec.js create mode 100644 test/model/ConfigEvents.spec.js create mode 100644 test/model/CurrentUser.spec.js create mode 100644 test/model/DeploymentGroup.spec.js create mode 100644 test/model/DeveloperType.spec.js create mode 100644 test/model/Error.spec.js create mode 100644 test/model/File.spec.js create mode 100644 test/model/FileData.spec.js create mode 100644 test/model/FileStatus.spec.js create mode 100644 test/model/FileVersion.spec.js create mode 100644 test/model/InlineObject.spec.js create mode 100644 test/model/InlineObject1.spec.js create mode 100644 test/model/InlineObject2.spec.js create mode 100644 test/model/InlineObject3.spec.js create mode 100644 test/model/InlineObject4.spec.js create mode 100644 test/model/InlineResponse200.spec.js create mode 100644 test/model/InlineResponse2001.spec.js create mode 100644 test/model/InlineResponse2002.spec.js create mode 100644 test/model/InlineResponse2003.spec.js create mode 100644 test/model/InlineResponse2004.spec.js create mode 100644 test/model/InlineResponse2005.spec.js create mode 100644 test/model/InlineResponse401.spec.js create mode 100644 test/model/LimitedUser.spec.js create mode 100644 test/model/LimitedWorld.spec.js create mode 100644 test/model/MIMEType.spec.js create mode 100644 test/model/Notification.spec.js create mode 100644 test/model/NotificationType.spec.js create mode 100644 test/model/ReleaseStatus.spec.js create mode 100644 test/model/Response.spec.js create mode 100644 test/model/Success.spec.js create mode 100644 test/model/User.spec.js create mode 100644 test/model/UserState.spec.js create mode 100644 test/model/UserStatus.spec.js diff --git a/.babelrc b/.babelrc new file mode 100644 index 0000000..c73df9d --- /dev/null +++ b/.babelrc @@ -0,0 +1,33 @@ +{ + "presets": [ + "@babel/preset-env" + ], + "plugins": [ + "@babel/plugin-syntax-dynamic-import", + "@babel/plugin-syntax-import-meta", + "@babel/plugin-proposal-class-properties", + "@babel/plugin-proposal-json-strings", + [ + "@babel/plugin-proposal-decorators", + { + "legacy": true + } + ], + "@babel/plugin-proposal-function-sent", + "@babel/plugin-proposal-export-namespace-from", + "@babel/plugin-proposal-numeric-separator", + "@babel/plugin-proposal-throw-expressions", + "@babel/plugin-proposal-export-default-from", + "@babel/plugin-proposal-logical-assignment-operators", + "@babel/plugin-proposal-optional-chaining", + [ + "@babel/plugin-proposal-pipeline-operator", + { + "proposal": "minimal" + } + ], + "@babel/plugin-proposal-nullish-coalescing-operator", + "@babel/plugin-proposal-do-expressions", + "@babel/plugin-proposal-function-bind" + ] +} diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..e920c16 --- /dev/null +++ b/.gitignore @@ -0,0 +1,33 @@ +# Logs +logs +*.log +npm-debug.log* + +# Runtime data +pids +*.pid +*.seed + +# Directory for instrumented libs generated by jscoverage/JSCover +lib-cov + +# Coverage directory used by tools like istanbul +coverage + +# Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files) +.grunt + +# node-waf configuration +.lock-wscript + +# Compiled binary addons (http://nodejs.org/api/addons.html) +build/Release + +# Dependency directory +node_modules + +# Optional npm cache directory +.npm + +# Optional REPL history +.node_repl_history diff --git a/.openapi-generator-ignore b/.openapi-generator-ignore new file mode 100644 index 0000000..7484ee5 --- /dev/null +++ b/.openapi-generator-ignore @@ -0,0 +1,23 @@ +# OpenAPI Generator Ignore +# Generated by openapi-generator https://github.com/openapitools/openapi-generator + +# Use this file to prevent files from being overwritten by the generator. +# The patterns follow closely to .gitignore or .dockerignore. + +# As an example, the C# client generator defines ApiClient.cs. +# You can make changes and tell OpenAPI Generator to ignore just this file by uncommenting the following line: +#ApiClient.cs + +# You can match any string of characters against a directory, file or extension with a single asterisk (*): +#foo/*/qux +# The above matches foo/bar/qux and foo/baz/qux, but not foo/bar/baz/qux + +# You can recursively match patterns against a directory, file or extension with a double asterisk (**): +#foo/**/qux +# This matches foo/bar/qux, foo/baz/qux, and foo/bar/baz/qux + +# You can also negate patterns with an exclamation (!). +# For example, you can ignore all files in a docs folder with the file extension .md: +#docs/*.md +# Then explicitly reverse the ignore rule for a single file: +#!docs/README.md diff --git a/.openapi-generator/FILES b/.openapi-generator/FILES new file mode 100644 index 0000000..857f3c4 --- /dev/null +++ b/.openapi-generator/FILES @@ -0,0 +1,138 @@ +.babelrc +.gitignore +.travis.yml +README.md +docs/AuthenticationApi.md +docs/Config.md +docs/ConfigAnnouncements.md +docs/ConfigDownloadUrls.md +docs/ConfigDynamicWorldRows.md +docs/ConfigEvents.md +docs/CurrentUser.md +docs/DeploymentGroup.md +docs/DeveloperType.md +docs/Error.md +docs/File.md +docs/FileData.md +docs/FileStatus.md +docs/FileVersion.md +docs/FilesApi.md +docs/FriendsApi.md +docs/InlineObject.md +docs/InlineObject1.md +docs/InlineObject2.md +docs/InlineObject3.md +docs/InlineObject4.md +docs/InlineResponse200.md +docs/InlineResponse2001.md +docs/InlineResponse2002.md +docs/InlineResponse2003.md +docs/InlineResponse2004.md +docs/InlineResponse2005.md +docs/InlineResponse401.md +docs/LimitedUser.md +docs/LimitedWorld.md +docs/MIMEType.md +docs/Notification.md +docs/NotificationType.md +docs/NotificationsApi.md +docs/ReleaseStatus.md +docs/Response.md +docs/Success.md +docs/SystemApi.md +docs/User.md +docs/UserState.md +docs/UserStatus.md +docs/UsersApi.md +docs/WorldsApi.md +git_push.sh +mocha.opts +package.json +src/ApiClient.js +src/api/AuthenticationApi.js +src/api/FilesApi.js +src/api/FriendsApi.js +src/api/NotificationsApi.js +src/api/SystemApi.js +src/api/UsersApi.js +src/api/WorldsApi.js +src/index.js +src/model/Config.js +src/model/ConfigAnnouncements.js +src/model/ConfigDownloadUrls.js +src/model/ConfigDynamicWorldRows.js +src/model/ConfigEvents.js +src/model/CurrentUser.js +src/model/DeploymentGroup.js +src/model/DeveloperType.js +src/model/Error.js +src/model/File.js +src/model/FileData.js +src/model/FileStatus.js +src/model/FileVersion.js +src/model/InlineObject.js +src/model/InlineObject1.js +src/model/InlineObject2.js +src/model/InlineObject3.js +src/model/InlineObject4.js +src/model/InlineResponse200.js +src/model/InlineResponse2001.js +src/model/InlineResponse2002.js +src/model/InlineResponse2003.js +src/model/InlineResponse2004.js +src/model/InlineResponse2005.js +src/model/InlineResponse401.js +src/model/LimitedUser.js +src/model/LimitedWorld.js +src/model/MIMEType.js +src/model/Notification.js +src/model/NotificationType.js +src/model/ReleaseStatus.js +src/model/Response.js +src/model/Success.js +src/model/User.js +src/model/UserState.js +src/model/UserStatus.js +test/api/AuthenticationApi.spec.js +test/api/FilesApi.spec.js +test/api/FriendsApi.spec.js +test/api/NotificationsApi.spec.js +test/api/SystemApi.spec.js +test/api/UsersApi.spec.js +test/api/WorldsApi.spec.js +test/model/Config.spec.js +test/model/ConfigAnnouncements.spec.js +test/model/ConfigDownloadUrls.spec.js +test/model/ConfigDynamicWorldRows.spec.js +test/model/ConfigEvents.spec.js +test/model/CurrentUser.spec.js +test/model/DeploymentGroup.spec.js +test/model/DeveloperType.spec.js +test/model/Error.spec.js +test/model/File.spec.js +test/model/FileData.spec.js +test/model/FileStatus.spec.js +test/model/FileVersion.spec.js +test/model/InlineObject.spec.js +test/model/InlineObject1.spec.js +test/model/InlineObject2.spec.js +test/model/InlineObject3.spec.js +test/model/InlineObject4.spec.js +test/model/InlineResponse200.spec.js +test/model/InlineResponse2001.spec.js +test/model/InlineResponse2002.spec.js +test/model/InlineResponse2003.spec.js +test/model/InlineResponse2004.spec.js +test/model/InlineResponse2005.spec.js +test/model/InlineResponse401.spec.js +test/model/LimitedUser.spec.js +test/model/LimitedWorld.spec.js +test/model/MIMEType.spec.js +test/model/Notification.spec.js +test/model/NotificationType.spec.js +test/model/ReleaseStatus.spec.js +test/model/Response.spec.js +test/model/Success.spec.js +test/model/User.spec.js +test/model/UserState.spec.js +test/model/UserStatus.spec.js diff --git a/.openapi-generator/VERSION b/.openapi-generator/VERSION new file mode 100644 index 0000000..7cbea07 --- /dev/null +++ b/.openapi-generator/VERSION @@ -0,0 +1 @@ +5.2.0 \ No newline at end of file diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000..0968f7a --- /dev/null +++ b/.travis.yml @@ -0,0 +1,5 @@ +language: node_js +cache: npm +node_js: + - "6" + - "6.1" diff --git a/LICENSE b/LICENSE index 94a9ed0..ad4b3c7 100644 --- a/LICENSE +++ b/LICENSE @@ -1,674 +1,21 @@ - GNU GENERAL PUBLIC LICENSE - Version 3, 29 June 2007 - - Copyright (C) 2007 Free Software Foundation, Inc. - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - - Preamble - - The GNU General Public License is a free, copyleft license for -software and other kinds of works. - - The licenses for most software and other practical works are designed -to take away your freedom to share and change the works. By contrast, -the GNU General Public License is intended to guarantee your freedom to -share and change all versions of a program--to make sure it remains free -software for all its users. We, the Free Software Foundation, use the -GNU General Public License for most of our software; it applies also to -any other work released this way by its authors. You can apply it to -your programs, too. - - When we speak of free software, we are referring to freedom, not -price. Our General Public Licenses are designed to make sure that you -have the freedom to distribute copies of free software (and charge for -them if you wish), that you receive source code or can get it if you -want it, that you can change the software or use pieces of it in new -free programs, and that you know you can do these things. - - To protect your rights, we need to prevent others from denying you -these rights or asking you to surrender the rights. Therefore, you have -certain responsibilities if you distribute copies of the software, or if -you modify it: responsibilities to respect the freedom of others. - - For example, if you distribute copies of such a program, whether -gratis or for a fee, you must pass on to the recipients the same -freedoms that you received. You must make sure that they, too, receive -or can get the source code. And you must show them these terms so they -know their rights. - - Developers that use the GNU GPL protect your rights with two steps: -(1) assert copyright on the software, and (2) offer you this License -giving you legal permission to copy, distribute and/or modify it. - - For the developers' and authors' protection, the GPL clearly explains -that there is no warranty for this free software. For both users' and -authors' sake, the GPL requires that modified versions be marked as -changed, so that their problems will not be attributed erroneously to -authors of previous versions. - - Some devices are designed to deny users access to install or run -modified versions of the software inside them, although the manufacturer -can do so. This is fundamentally incompatible with the aim of -protecting users' freedom to change the software. The systematic -pattern of such abuse occurs in the area of products for individuals to -use, which is precisely where it is most unacceptable. Therefore, we -have designed this version of the GPL to prohibit the practice for those -products. If such problems arise substantially in other domains, we -stand ready to extend this provision to those domains in future versions -of the GPL, as needed to protect the freedom of users. - - Finally, every program is threatened constantly by software patents. -States should not allow patents to restrict development and use of -software on general-purpose computers, but in those that do, we wish to -avoid the special danger that patents applied to a free program could -make it effectively proprietary. To prevent this, the GPL assures that -patents cannot be used to render the program non-free. - - The precise terms and conditions for copying, distribution and -modification follow. - - TERMS AND CONDITIONS - - 0. Definitions. - - "This License" refers to version 3 of the GNU General Public License. - - "Copyright" also means copyright-like laws that apply to other kinds of -works, such as semiconductor masks. - - "The Program" refers to any copyrightable work licensed under this -License. Each licensee is addressed as "you". "Licensees" and -"recipients" may be individuals or organizations. - - To "modify" a work means to copy from or adapt all or part of the work -in a fashion requiring copyright permission, other than the making of an -exact copy. The resulting work is called a "modified version" of the -earlier work or a work "based on" the earlier work. - - A "covered work" means either the unmodified Program or a work based -on the Program. - - To "propagate" a work means to do anything with it that, without -permission, would make you directly or secondarily liable for -infringement under applicable copyright law, except executing it on a -computer or modifying a private copy. Propagation includes copying, -distribution (with or without modification), making available to the -public, and in some countries other activities as well. - - To "convey" a work means any kind of propagation that enables other -parties to make or receive copies. Mere interaction with a user through -a computer network, with no transfer of a copy, is not conveying. - - An interactive user interface displays "Appropriate Legal Notices" -to the extent that it includes a convenient and prominently visible -feature that (1) displays an appropriate copyright notice, and (2) -tells the user that there is no warranty for the work (except to the -extent that warranties are provided), that licensees may convey the -work under this License, and how to view a copy of this License. If -the interface presents a list of user commands or options, such as a -menu, a prominent item in the list meets this criterion. - - 1. Source Code. - - The "source code" for a work means the preferred form of the work -for making modifications to it. "Object code" means any non-source -form of a work. - - A "Standard Interface" means an interface that either is an official -standard defined by a recognized standards body, or, in the case of -interfaces specified for a particular programming language, one that -is widely used among developers working in that language. - - The "System Libraries" of an executable work include anything, other -than the work as a whole, that (a) is included in the normal form of -packaging a Major Component, but which is not part of that Major -Component, and (b) serves only to enable use of the work with that -Major Component, or to implement a Standard Interface for which an -implementation is available to the public in source code form. A -"Major Component", in this context, means a major essential component -(kernel, window system, and so on) of the specific operating system -(if any) on which the executable work runs, or a compiler used to -produce the work, or an object code interpreter used to run it. - - The "Corresponding Source" for a work in object code form means all -the source code needed to generate, install, and (for an executable -work) run the object code and to modify the work, including scripts to -control those activities. However, it does not include the work's -System Libraries, or general-purpose tools or generally available free -programs which are used unmodified in performing those activities but -which are not part of the work. For example, Corresponding Source -includes interface definition files associated with source files for -the work, and the source code for shared libraries and dynamically -linked subprograms that the work is specifically designed to require, -such as by intimate data communication or control flow between those -subprograms and other parts of the work. - - The Corresponding Source need not include anything that users -can regenerate automatically from other parts of the Corresponding -Source. - - The Corresponding Source for a work in source code form is that -same work. - - 2. Basic Permissions. - - All rights granted under this License are granted for the term of -copyright on the Program, and are irrevocable provided the stated -conditions are met. This License explicitly affirms your unlimited -permission to run the unmodified Program. The output from running a -covered work is covered by this License only if the output, given its -content, constitutes a covered work. This License acknowledges your -rights of fair use or other equivalent, as provided by copyright law. - - You may make, run and propagate covered works that you do not -convey, without conditions so long as your license otherwise remains -in force. You may convey covered works to others for the sole purpose -of having them make modifications exclusively for you, or provide you -with facilities for running those works, provided that you comply with -the terms of this License in conveying all material for which you do -not control copyright. Those thus making or running the covered works -for you must do so exclusively on your behalf, under your direction -and control, on terms that prohibit them from making any copies of -your copyrighted material outside their relationship with you. - - Conveying under any other circumstances is permitted solely under -the conditions stated below. Sublicensing is not allowed; section 10 -makes it unnecessary. - - 3. Protecting Users' Legal Rights From Anti-Circumvention Law. - - No covered work shall be deemed part of an effective technological -measure under any applicable law fulfilling obligations under article -11 of the WIPO copyright treaty adopted on 20 December 1996, or -similar laws prohibiting or restricting circumvention of such -measures. - - When you convey a covered work, you waive any legal power to forbid -circumvention of technological measures to the extent such circumvention -is effected by exercising rights under this License with respect to -the covered work, and you disclaim any intention to limit operation or -modification of the work as a means of enforcing, against the work's -users, your or third parties' legal rights to forbid circumvention of -technological measures. - - 4. Conveying Verbatim Copies. - - You may convey verbatim copies of the Program's source code as you -receive it, in any medium, provided that you conspicuously and -appropriately publish on each copy an appropriate copyright notice; -keep intact all notices stating that this License and any -non-permissive terms added in accord with section 7 apply to the code; -keep intact all notices of the absence of any warranty; and give all -recipients a copy of this License along with the Program. - - You may charge any price or no price for each copy that you convey, -and you may offer support or warranty protection for a fee. - - 5. Conveying Modified Source Versions. - - You may convey a work based on the Program, or the modifications to -produce it from the Program, in the form of source code under the -terms of section 4, provided that you also meet all of these conditions: - - a) The work must carry prominent notices stating that you modified - it, and giving a relevant date. - - b) The work must carry prominent notices stating that it is - released under this License and any conditions added under section - 7. This requirement modifies the requirement in section 4 to - "keep intact all notices". - - c) You must license the entire work, as a whole, under this - License to anyone who comes into possession of a copy. This - License will therefore apply, along with any applicable section 7 - additional terms, to the whole of the work, and all its parts, - regardless of how they are packaged. This License gives no - permission to license the work in any other way, but it does not - invalidate such permission if you have separately received it. - - d) If the work has interactive user interfaces, each must display - Appropriate Legal Notices; however, if the Program has interactive - interfaces that do not display Appropriate Legal Notices, your - work need not make them do so. - - A compilation of a covered work with other separate and independent -works, which are not by their nature extensions of the covered work, -and which are not combined with it such as to form a larger program, -in or on a volume of a storage or distribution medium, is called an -"aggregate" if the compilation and its resulting copyright are not -used to limit the access or legal rights of the compilation's users -beyond what the individual works permit. Inclusion of a covered work -in an aggregate does not cause this License to apply to the other -parts of the aggregate. - - 6. Conveying Non-Source Forms. - - You may convey a covered work in object code form under the terms -of sections 4 and 5, provided that you also convey the -machine-readable Corresponding Source under the terms of this License, -in one of these ways: - - a) Convey the object code in, or embodied in, a physical product - (including a physical distribution medium), accompanied by the - Corresponding Source fixed on a durable physical medium - customarily used for software interchange. - - b) Convey the object code in, or embodied in, a physical product - (including a physical distribution medium), accompanied by a - written offer, valid for at least three years and valid for as - long as you offer spare parts or customer support for that product - model, to give anyone who possesses the object code either (1) a - copy of the Corresponding Source for all the software in the - product that is covered by this License, on a durable physical - medium customarily used for software interchange, for a price no - more than your reasonable cost of physically performing this - conveying of source, or (2) access to copy the - Corresponding Source from a network server at no charge. - - c) Convey individual copies of the object code with a copy of the - written offer to provide the Corresponding Source. This - alternative is allowed only occasionally and noncommercially, and - only if you received the object code with such an offer, in accord - with subsection 6b. - - d) Convey the object code by offering access from a designated - place (gratis or for a charge), and offer equivalent access to the - Corresponding Source in the same way through the same place at no - further charge. You need not require recipients to copy the - Corresponding Source along with the object code. If the place to - copy the object code is a network server, the Corresponding Source - may be on a different server (operated by you or a third party) - that supports equivalent copying facilities, provided you maintain - clear directions next to the object code saying where to find the - Corresponding Source. Regardless of what server hosts the - Corresponding Source, you remain obligated to ensure that it is - available for as long as needed to satisfy these requirements. - - e) Convey the object code using peer-to-peer transmission, provided - you inform other peers where the object code and Corresponding - Source of the work are being offered to the general public at no - charge under subsection 6d. - - A separable portion of the object code, whose source code is excluded -from the Corresponding Source as a System Library, need not be -included in conveying the object code work. - - A "User Product" is either (1) a "consumer product", which means any -tangible personal property which is normally used for personal, family, -or household purposes, or (2) anything designed or sold for incorporation -into a dwelling. In determining whether a product is a consumer product, -doubtful cases shall be resolved in favor of coverage. For a particular -product received by a particular user, "normally used" refers to a -typical or common use of that class of product, regardless of the status -of the particular user or of the way in which the particular user -actually uses, or expects or is expected to use, the product. A product -is a consumer product regardless of whether the product has substantial -commercial, industrial or non-consumer uses, unless such uses represent -the only significant mode of use of the product. - - "Installation Information" for a User Product means any methods, -procedures, authorization keys, or other information required to install -and execute modified versions of a covered work in that User Product from -a modified version of its Corresponding Source. The information must -suffice to ensure that the continued functioning of the modified object -code is in no case prevented or interfered with solely because -modification has been made. - - If you convey an object code work under this section in, or with, or -specifically for use in, a User Product, and the conveying occurs as -part of a transaction in which the right of possession and use of the -User Product is transferred to the recipient in perpetuity or for a -fixed term (regardless of how the transaction is characterized), the -Corresponding Source conveyed under this section must be accompanied -by the Installation Information. But this requirement does not apply -if neither you nor any third party retains the ability to install -modified object code on the User Product (for example, the work has -been installed in ROM). - - The requirement to provide Installation Information does not include a -requirement to continue to provide support service, warranty, or updates -for a work that has been modified or installed by the recipient, or for -the User Product in which it has been modified or installed. Access to a -network may be denied when the modification itself materially and -adversely affects the operation of the network or violates the rules and -protocols for communication across the network. - - Corresponding Source conveyed, and Installation Information provided, -in accord with this section must be in a format that is publicly -documented (and with an implementation available to the public in -source code form), and must require no special password or key for -unpacking, reading or copying. - - 7. Additional Terms. - - "Additional permissions" are terms that supplement the terms of this -License by making exceptions from one or more of its conditions. -Additional permissions that are applicable to the entire Program shall -be treated as though they were included in this License, to the extent -that they are valid under applicable law. If additional permissions -apply only to part of the Program, that part may be used separately -under those permissions, but the entire Program remains governed by -this License without regard to the additional permissions. - - When you convey a copy of a covered work, you may at your option -remove any additional permissions from that copy, or from any part of -it. (Additional permissions may be written to require their own -removal in certain cases when you modify the work.) You may place -additional permissions on material, added by you to a covered work, -for which you have or can give appropriate copyright permission. - - Notwithstanding any other provision of this License, for material you -add to a covered work, you may (if authorized by the copyright holders of -that material) supplement the terms of this License with terms: - - a) Disclaiming warranty or limiting liability differently from the - terms of sections 15 and 16 of this License; or - - b) Requiring preservation of specified reasonable legal notices or - author attributions in that material or in the Appropriate Legal - Notices displayed by works containing it; or - - c) Prohibiting misrepresentation of the origin of that material, or - requiring that modified versions of such material be marked in - reasonable ways as different from the original version; or - - d) Limiting the use for publicity purposes of names of licensors or - authors of the material; or - - e) Declining to grant rights under trademark law for use of some - trade names, trademarks, or service marks; or - - f) Requiring indemnification of licensors and authors of that - material by anyone who conveys the material (or modified versions of - it) with contractual assumptions of liability to the recipient, for - any liability that these contractual assumptions directly impose on - those licensors and authors. - - All other non-permissive additional terms are considered "further -restrictions" within the meaning of section 10. If the Program as you -received it, or any part of it, contains a notice stating that it is -governed by this License along with a term that is a further -restriction, you may remove that term. If a license document contains -a further restriction but permits relicensing or conveying under this -License, you may add to a covered work material governed by the terms -of that license document, provided that the further restriction does -not survive such relicensing or conveying. - - If you add terms to a covered work in accord with this section, you -must place, in the relevant source files, a statement of the -additional terms that apply to those files, or a notice indicating -where to find the applicable terms. - - Additional terms, permissive or non-permissive, may be stated in the -form of a separately written license, or stated as exceptions; -the above requirements apply either way. - - 8. Termination. - - You may not propagate or modify a covered work except as expressly -provided under this License. Any attempt otherwise to propagate or -modify it is void, and will automatically terminate your rights under -this License (including any patent licenses granted under the third -paragraph of section 11). - - However, if you cease all violation of this License, then your -license from a particular copyright holder is reinstated (a) -provisionally, unless and until the copyright holder explicitly and -finally terminates your license, and (b) permanently, if the copyright -holder fails to notify you of the violation by some reasonable means -prior to 60 days after the cessation. - - Moreover, your license from a particular copyright holder is -reinstated permanently if the copyright holder notifies you of the -violation by some reasonable means, this is the first time you have -received notice of violation of this License (for any work) from that -copyright holder, and you cure the violation prior to 30 days after -your receipt of the notice. - - Termination of your rights under this section does not terminate the -licenses of parties who have received copies or rights from you under -this License. If your rights have been terminated and not permanently -reinstated, you do not qualify to receive new licenses for the same -material under section 10. - - 9. Acceptance Not Required for Having Copies. - - You are not required to accept this License in order to receive or -run a copy of the Program. Ancillary propagation of a covered work -occurring solely as a consequence of using peer-to-peer transmission -to receive a copy likewise does not require acceptance. However, -nothing other than this License grants you permission to propagate or -modify any covered work. These actions infringe copyright if you do -not accept this License. Therefore, by modifying or propagating a -covered work, you indicate your acceptance of this License to do so. - - 10. Automatic Licensing of Downstream Recipients. - - Each time you convey a covered work, the recipient automatically -receives a license from the original licensors, to run, modify and -propagate that work, subject to this License. You are not responsible -for enforcing compliance by third parties with this License. - - An "entity transaction" is a transaction transferring control of an -organization, or substantially all assets of one, or subdividing an -organization, or merging organizations. If propagation of a covered -work results from an entity transaction, each party to that -transaction who receives a copy of the work also receives whatever -licenses to the work the party's predecessor in interest had or could -give under the previous paragraph, plus a right to possession of the -Corresponding Source of the work from the predecessor in interest, if -the predecessor has it or can get it with reasonable efforts. - - You may not impose any further restrictions on the exercise of the -rights granted or affirmed under this License. For example, you may -not impose a license fee, royalty, or other charge for exercise of -rights granted under this License, and you may not initiate litigation -(including a cross-claim or counterclaim in a lawsuit) alleging that -any patent claim is infringed by making, using, selling, offering for -sale, or importing the Program or any portion of it. - - 11. Patents. - - A "contributor" is a copyright holder who authorizes use under this -License of the Program or a work on which the Program is based. The -work thus licensed is called the contributor's "contributor version". - - A contributor's "essential patent claims" are all patent claims -owned or controlled by the contributor, whether already acquired or -hereafter acquired, that would be infringed by some manner, permitted -by this License, of making, using, or selling its contributor version, -but do not include claims that would be infringed only as a -consequence of further modification of the contributor version. For -purposes of this definition, "control" includes the right to grant -patent sublicenses in a manner consistent with the requirements of -this License. - - Each contributor grants you a non-exclusive, worldwide, royalty-free -patent license under the contributor's essential patent claims, to -make, use, sell, offer for sale, import and otherwise run, modify and -propagate the contents of its contributor version. - - In the following three paragraphs, a "patent license" is any express -agreement or commitment, however denominated, not to enforce a patent -(such as an express permission to practice a patent or covenant not to -sue for patent infringement). To "grant" such a patent license to a -party means to make such an agreement or commitment not to enforce a -patent against the party. - - If you convey a covered work, knowingly relying on a patent license, -and the Corresponding Source of the work is not available for anyone -to copy, free of charge and under the terms of this License, through a -publicly available network server or other readily accessible means, -then you must either (1) cause the Corresponding Source to be so -available, or (2) arrange to deprive yourself of the benefit of the -patent license for this particular work, or (3) arrange, in a manner -consistent with the requirements of this License, to extend the patent -license to downstream recipients. "Knowingly relying" means you have -actual knowledge that, but for the patent license, your conveying the -covered work in a country, or your recipient's use of the covered work -in a country, would infringe one or more identifiable patents in that -country that you have reason to believe are valid. - - If, pursuant to or in connection with a single transaction or -arrangement, you convey, or propagate by procuring conveyance of, a -covered work, and grant a patent license to some of the parties -receiving the covered work authorizing them to use, propagate, modify -or convey a specific copy of the covered work, then the patent license -you grant is automatically extended to all recipients of the covered -work and works based on it. - - A patent license is "discriminatory" if it does not include within -the scope of its coverage, prohibits the exercise of, or is -conditioned on the non-exercise of one or more of the rights that are -specifically granted under this License. You may not convey a covered -work if you are a party to an arrangement with a third party that is -in the business of distributing software, under which you make payment -to the third party based on the extent of your activity of conveying -the work, and under which the third party grants, to any of the -parties who would receive the covered work from you, a discriminatory -patent license (a) in connection with copies of the covered work -conveyed by you (or copies made from those copies), or (b) primarily -for and in connection with specific products or compilations that -contain the covered work, unless you entered into that arrangement, -or that patent license was granted, prior to 28 March 2007. - - Nothing in this License shall be construed as excluding or limiting -any implied license or other defenses to infringement that may -otherwise be available to you under applicable patent law. - - 12. No Surrender of Others' Freedom. - - If conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot convey a -covered work so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you may -not convey it at all. For example, if you agree to terms that obligate you -to collect a royalty for further conveying from those to whom you convey -the Program, the only way you could satisfy both those terms and this -License would be to refrain entirely from conveying the Program. - - 13. Use with the GNU Affero General Public License. - - Notwithstanding any other provision of this License, you have -permission to link or combine any covered work with a work licensed -under version 3 of the GNU Affero General Public License into a single -combined work, and to convey the resulting work. The terms of this -License will continue to apply to the part which is the covered work, -but the special requirements of the GNU Affero General Public License, -section 13, concerning interaction through a network will apply to the -combination as such. - - 14. Revised Versions of this License. - - The Free Software Foundation may publish revised and/or new versions of -the GNU General Public License from time to time. Such new versions will -be similar in spirit to the present version, but may differ in detail to -address new problems or concerns. - - Each version is given a distinguishing version number. If the -Program specifies that a certain numbered version of the GNU General -Public License "or any later version" applies to it, you have the -option of following the terms and conditions either of that numbered -version or of any later version published by the Free Software -Foundation. If the Program does not specify a version number of the -GNU General Public License, you may choose any version ever published -by the Free Software Foundation. - - If the Program specifies that a proxy can decide which future -versions of the GNU General Public License can be used, that proxy's -public statement of acceptance of a version permanently authorizes you -to choose that version for the Program. - - Later license versions may give you additional or different -permissions. However, no additional obligations are imposed on any -author or copyright holder as a result of your choosing to follow a -later version. - - 15. Disclaimer of Warranty. - - THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY -APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT -HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY -OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR -PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM -IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF -ALL NECESSARY SERVICING, REPAIR OR CORRECTION. - - 16. Limitation of Liability. - - IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING -WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS -THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY -GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE -USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF -DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD -PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), -EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF -SUCH DAMAGES. - - 17. Interpretation of Sections 15 and 16. - - If the disclaimer of warranty and limitation of liability provided -above cannot be given local legal effect according to their terms, -reviewing courts shall apply local law that most closely approximates -an absolute waiver of all civil liability in connection with the -Program, unless a warranty or assumption of liability accompanies a -copy of the Program in return for a fee. - - END OF TERMS AND CONDITIONS - - How to Apply These Terms to Your New Programs - - If you develop a new program, and you want it to be of the greatest -possible use to the public, the best way to achieve this is to make it -free software which everyone can redistribute and change under these terms. - - To do so, attach the following notices to the program. It is safest -to attach them to the start of each source file to most effectively -state the exclusion of warranty; and each file should have at least -the "copyright" line and a pointer to where the full notice is found. - - - Copyright (C) - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . - -Also add information on how to contact you by electronic and paper mail. - - If the program does terminal interaction, make it output a short -notice like this when it starts in an interactive mode: - - Copyright (C) - This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. - This is free software, and you are welcome to redistribute it - under certain conditions; type `show c' for details. - -The hypothetical commands `show w' and `show c' should show the appropriate -parts of the General Public License. Of course, your program's commands -might be different; for a GUI interface, you would use an "about box". - - You should also get your employer (if you work as a programmer) or school, -if any, to sign a "copyright disclaimer" for the program, if necessary. -For more information on this, and how to apply and follow the GNU GPL, see -. - - The GNU General Public License does not permit incorporating your program -into proprietary programs. If your program is a subroutine library, you -may consider it more useful to permit linking proprietary applications with -the library. If this is what you want to do, use the GNU Lesser General -Public License instead of this License. But first, please read -. +The MIT License (MIT) + +Copyright (c) 2021 Rubybb and individual contributors. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. \ No newline at end of file diff --git a/README.md b/README.md index 7b0cebc..582cc1c 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,273 @@ -# VRChatJS -A JavaScript for the VRChat API. +# vrchatapi + +vrchatapi - JavaScript client for vrchatapi +![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) + +# VRChat API Documentation +This project is an [OPEN Open Source Project](https://openopensource.org) + +Individuals making significant and valuable contributions are given +commit-access to the project to contribute as they see fit. This project +is more like an open wiki than a standard guarded open source project. + +## Disclaimer + +This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. + +> **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** +> * We do not provide documentation or support for the API. +> * Do not make queries to the API more than once per 60 seconds. +> * Abuse of the API may result in account termination. +> * Access to API endpoints may break at any given time, with no warning. + +As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. + +## Get in touch with us! + +[https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) +This SDK is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project: + +- API version: 1.0.0 +- Package version: 1.0.0 +- Build package: org.openapitools.codegen.languages.JavascriptClientCodegen +For more information, please visit [https://github.com/VRChatAPI](https://github.com/VRChatAPI) + +## Installation + +### For [Node.js](https://nodejs.org/) + +#### npm + +To publish the library as a [npm](https://www.npmjs.com/), please follow the procedure in ["Publishing npm packages"](https://docs.npmjs.com/getting-started/publishing-npm-packages). + +Then install it via: + +```shell +npm install vrchatapi --save +``` + +Finally, you need to build the module: + +```shell +npm run build +``` + +##### Local development + +To use the library locally without publishing to a remote npm registry, first install the dependencies by changing into the directory containing `package.json` (and this README). Let's call this `JAVASCRIPT_CLIENT_DIR`. Then run: + +```shell +npm install +``` + +Next, [link](https://docs.npmjs.com/cli/link) it globally in npm with the following, also from `JAVASCRIPT_CLIENT_DIR`: + +```shell +npm link +``` + +To use the link you just defined in your project, switch to the directory you want to use your vrchatapi from, and run: + +```shell +npm link /path/to/ +``` + +Finally, you need to build the module: + +```shell +npm run build +``` + +#### git + +If the library is hosted at a git repository, e.g.https://github.com/vrchatapi/vrchatapi-node +then install it via: + +```shell + npm install vrchatapi/vrchatapi-node --save +``` + +### For browser + +The library also works in the browser environment via npm and [browserify](http://browserify.org/). After following +the above steps with Node.js and installing browserify with `npm install -g browserify`, +perform the following (assuming *main.js* is your entry file): + +```shell +browserify main.js > bundle.js +``` + +Then include *bundle.js* in the HTML pages. + +### Webpack Configuration + +Using Webpack you may encounter the following error: "Module not found: Error: +Cannot resolve module", most certainly you should disable AMD loader. Add/merge +the following section to your webpack config: + +```javascript +module: { + rules: [ + { + parser: { + amd: false + } + } + ] +} +``` + +## Getting Started + +Please follow the [installation](#installation) instruction and execute the following JS code: + +```javascript +var vrchatapi = require('vrchatapi'); + +var defaultClient = vrchatapi.ApiClient.instance; +// Configure API key authorization: apiKeyCookie +var apiKeyCookie = defaultClient.authentications['apiKeyCookie']; +apiKeyCookie.apiKey = "YOUR API KEY" +// Configure API key authorization: authCookie +var authCookie = defaultClient.authentications['authCookie']; +authCookie.apiKey = "YOUR API KEY" + +var api = new vrchatapi.AuthenticationApi() +var userId = "userId_example"; // {String} +api.deleteUserById(userId).then(function(data) { + console.log('API called successfully. Returned data: ' + data); +}, function(error) { + console.error(error); +}); + + +``` + +## Documentation for API Endpoints + +All URIs are relative to *https://api.vrchat.cloud/api/1* + +Class | Method | HTTP request | Description +------------ | ------------- | ------------- | ------------- +*vrchatapi.AuthenticationApi* | [**deleteUserById**](docs/AuthenticationApi.md#deleteUserById) | **PUT** /user/{userId}/delete | Delete User +*vrchatapi.AuthenticationApi* | [**getCurrentUser**](docs/AuthenticationApi.md#getCurrentUser) | **GET** /auth/user | Login and/or Get Current User Info +*vrchatapi.AuthenticationApi* | [**logout**](docs/AuthenticationApi.md#logout) | **PUT** /logout | Logout +*vrchatapi.AuthenticationApi* | [**verify2FA**](docs/AuthenticationApi.md#verify2FA) | **POST** /auth/twofactorauth/totp/verify | Verify 2FA code +*vrchatapi.AuthenticationApi* | [**verifyAuthToken**](docs/AuthenticationApi.md#verifyAuthToken) | **GET** /auth | Verify Auth Token +*vrchatapi.AuthenticationApi* | [**verifyRecoveryCode**](docs/AuthenticationApi.md#verifyRecoveryCode) | **POST** /auth/twofactorauth/otp/verify | Verify 2FA code with Recovery code +*vrchatapi.FilesApi* | [**createFile**](docs/FilesApi.md#createFile) | **POST** /file | Create File +*vrchatapi.FilesApi* | [**createFileVersion**](docs/FilesApi.md#createFileVersion) | **POST** /file/{fileId} | Create File Version +*vrchatapi.FilesApi* | [**deleteFile**](docs/FilesApi.md#deleteFile) | **DELETE** /file/{fileId} | Delete File +*vrchatapi.FilesApi* | [**deleteFileVersion**](docs/FilesApi.md#deleteFileVersion) | **DELETE** /file/{fileId}/{versionId} | Delete File Version +*vrchatapi.FilesApi* | [**downloadFileVersion**](docs/FilesApi.md#downloadFileVersion) | **GET** /file/{fileId}/{versionId} | Download File Version +*vrchatapi.FilesApi* | [**finishFileDataUpload**](docs/FilesApi.md#finishFileDataUpload) | **PUT** /file/{fileId}/{versionId}/{fileType}/finish | Finish FileData Upload +*vrchatapi.FilesApi* | [**getFile**](docs/FilesApi.md#getFile) | **GET** /file/{fileId} | Show File +*vrchatapi.FilesApi* | [**getFileDataUploadStatus**](docs/FilesApi.md#getFileDataUploadStatus) | **GET** /file/{fileId}/{versionId}/{fileType}/status | Check FileData Upload Status +*vrchatapi.FilesApi* | [**getFiles**](docs/FilesApi.md#getFiles) | **GET** /files | List Files +*vrchatapi.FilesApi* | [**startFileDataUpload**](docs/FilesApi.md#startFileDataUpload) | **PUT** /file/{fileId}/{versionId}/{fileType}/start | Start FileData Upload +*vrchatapi.FriendsApi* | [**deleteFriendRequest**](docs/FriendsApi.md#deleteFriendRequest) | **DELETE** /user/{userId}/friendRequest | Delete Friend Request +*vrchatapi.FriendsApi* | [**friend**](docs/FriendsApi.md#friend) | **POST** /user/{userId}/friendRequest | Send Friend Request +*vrchatapi.FriendsApi* | [**getFriendStatus**](docs/FriendsApi.md#getFriendStatus) | **GET** /user/{userId}/friendStatus | Check Friend Status +*vrchatapi.FriendsApi* | [**getFriends**](docs/FriendsApi.md#getFriends) | **GET** /auth/user/friends | List Friends +*vrchatapi.FriendsApi* | [**unfriend**](docs/FriendsApi.md#unfriend) | **DELETE** /auth/user/friends/{userId} | Unfriend +*vrchatapi.NotificationsApi* | [**acceptFriendRequest**](docs/NotificationsApi.md#acceptFriendRequest) | **PUT** /auth/user/notifications/{notificationId}/accept | Accept Friend Request +*vrchatapi.NotificationsApi* | [**clearNotifications**](docs/NotificationsApi.md#clearNotifications) | **PUT** /auth/user/notifications/clear | Clear All Notifications +*vrchatapi.NotificationsApi* | [**deleteNotification**](docs/NotificationsApi.md#deleteNotification) | **PUT** /auth/user/notifications/{notificationId}/hide | Delete Notification +*vrchatapi.NotificationsApi* | [**getNotifications**](docs/NotificationsApi.md#getNotifications) | **GET** /auth/user/notifications | List Notifications +*vrchatapi.NotificationsApi* | [**markNotificationAsRead**](docs/NotificationsApi.md#markNotificationAsRead) | **PUT** /auth/user/notifications/{notificationId}/see | Mark As Read +*vrchatapi.SystemApi* | [**getConfig**](docs/SystemApi.md#getConfig) | **GET** /config | Fetch API Config +*vrchatapi.SystemApi* | [**getCurrentOnlineUsers**](docs/SystemApi.md#getCurrentOnlineUsers) | **GET** /visits | Current Online Users +*vrchatapi.SystemApi* | [**getHealth**](docs/SystemApi.md#getHealth) | **GET** /health | Check API Health +*vrchatapi.SystemApi* | [**getSystemTime**](docs/SystemApi.md#getSystemTime) | **GET** /time | Current System Time +*vrchatapi.UsersApi* | [**getUser**](docs/UsersApi.md#getUser) | **GET** /users/{userId} | Get User by ID +*vrchatapi.UsersApi* | [**getUserByName**](docs/UsersApi.md#getUserByName) | **GET** /users/{username}/name | Get User by Username +*vrchatapi.UsersApi* | [**searchActiveUsers**](docs/UsersApi.md#searchActiveUsers) | **GET** /users/active | Search Active Users +*vrchatapi.UsersApi* | [**searchUsers**](docs/UsersApi.md#searchUsers) | **GET** /users | Search All Users +*vrchatapi.UsersApi* | [**updateUser**](docs/UsersApi.md#updateUser) | **PUT** /users/{userId} | Update User Info +*vrchatapi.WorldsApi* | [**searchWorlds**](docs/WorldsApi.md#searchWorlds) | **GET** /worlds | Search all worlds + + +## Documentation for Models + + - [vrchatapi.Config](docs/Config.md) + - [vrchatapi.ConfigAnnouncements](docs/ConfigAnnouncements.md) + - [vrchatapi.ConfigDownloadUrls](docs/ConfigDownloadUrls.md) + - [vrchatapi.ConfigDynamicWorldRows](docs/ConfigDynamicWorldRows.md) + - [vrchatapi.ConfigEvents](docs/ConfigEvents.md) + - [vrchatapi.CurrentUser](docs/CurrentUser.md) + - [vrchatapi.DeploymentGroup](docs/DeploymentGroup.md) + - [vrchatapi.DeveloperType](docs/DeveloperType.md) + - [vrchatapi.Error](docs/Error.md) + - [vrchatapi.File](docs/File.md) + - [vrchatapi.FileData](docs/FileData.md) + - [vrchatapi.FileStatus](docs/FileStatus.md) + - [vrchatapi.FileVersion](docs/FileVersion.md) + - [vrchatapi.InlineObject](docs/InlineObject.md) + - [vrchatapi.InlineObject1](docs/InlineObject1.md) + - [vrchatapi.InlineObject2](docs/InlineObject2.md) + - [vrchatapi.InlineObject3](docs/InlineObject3.md) + - [vrchatapi.InlineObject4](docs/InlineObject4.md) + - [vrchatapi.InlineResponse200](docs/InlineResponse200.md) + - [vrchatapi.InlineResponse2001](docs/InlineResponse2001.md) + - [vrchatapi.InlineResponse2002](docs/InlineResponse2002.md) + - [vrchatapi.InlineResponse2003](docs/InlineResponse2003.md) + - [vrchatapi.InlineResponse2004](docs/InlineResponse2004.md) + - [vrchatapi.InlineResponse2005](docs/InlineResponse2005.md) + - [vrchatapi.InlineResponse401](docs/InlineResponse401.md) + - [vrchatapi.LimitedUser](docs/LimitedUser.md) + - [vrchatapi.LimitedWorld](docs/LimitedWorld.md) + - [vrchatapi.MIMEType](docs/MIMEType.md) + - [vrchatapi.Notification](docs/Notification.md) + - [vrchatapi.NotificationType](docs/NotificationType.md) + - [vrchatapi.ReleaseStatus](docs/ReleaseStatus.md) + - [vrchatapi.Response](docs/Response.md) + - [vrchatapi.Success](docs/Success.md) + - [vrchatapi.User](docs/User.md) + - [vrchatapi.UserState](docs/UserState.md) + - [vrchatapi.UserStatus](docs/UserStatus.md) + + +## Documentation for Authorization + + + +### apiKeyCookie + + +- **Type**: API key +- **API key parameter name**: apiKey +- **Location**: + + + +### apiKeyQuery + + +- **Type**: API key +- **API key parameter name**: apiKey +- **Location**: URL query string + + + +### authCookie + + +- **Type**: API key +- **API key parameter name**: auth +- **Location**: + + + +### authHeader + +- **Type**: HTTP basic authentication + + + +### twoFactorAuthCookie + + +- **Type**: API key +- **API key parameter name**: twoFactorAuth +- **Location**: -For documentation based on the API itself. Check out our site. https://vrchatapi.github.io/ diff --git a/dist/ApiClient.js b/dist/ApiClient.js new file mode 100644 index 0000000..dc4b91f --- /dev/null +++ b/dist/ApiClient.js @@ -0,0 +1,786 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var _superagent = _interopRequireDefault(require("superagent")); + +var _querystring = _interopRequireDefault(require("querystring")); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +/** +* @module ApiClient +* @version 1.0.0 +*/ + +/** +* Manages low level client-server communications, parameter marshalling, etc. There should not be any need for an +* application to use this class directly - the *Api and model classes provide the public API for the service. The +* contents of this file should be regarded as internal but are documented for completeness. +* @alias module:ApiClient +* @class +*/ +var ApiClient = /*#__PURE__*/function () { + function ApiClient() { + _classCallCheck(this, ApiClient); + + /** + * The base URL against which to resolve every API call's (relative) path. + * @type {String} + * @default https://api.vrchat.cloud/api/1 + */ + this.basePath = 'https://api.vrchat.cloud/api/1'.replace(/\/+$/, ''); + /** + * The authentication methods to be included for all API calls. + * @type {Array.} + */ + + this.authentications = { + 'apiKeyCookie': { + type: 'apiKey', + 'in': 'query', + name: 'apiKey' + }, + 'apiKeyQuery': { + type: 'apiKey', + 'in': 'query', + name: 'apiKey' + }, + 'authCookie': { + type: 'apiKey', + 'in': 'query', + name: 'auth' + }, + 'authHeader': { + type: 'basic' + }, + 'twoFactorAuthCookie': { + type: 'apiKey', + 'in': 'query', + name: 'twoFactorAuth' + } + }; + /** + * The default HTTP headers to be included for all API calls. + * @type {Array.} + * @default {} + */ + + this.defaultHeaders = { + 'User-Agent': 'vrchatapi-node' + }; + /** + * The default HTTP timeout for all API calls. + * @type {Number} + * @default 60000 + */ + + this.timeout = 60000; + /** + * If set to false an additional timestamp parameter is added to all API GET calls to + * prevent browser caching + * @type {Boolean} + * @default true + */ + + this.cache = true; + /** + * If set to true, the client will save the cookies from each server + * response, and return them in the next request. + * @default false + */ + + this.enableCookies = false; + /* + * Used to save and return cookies in a node.js (non-browser) setting, + * if this.enableCookies is set to true. + */ + + if (typeof window === 'undefined') { + this.agent = new _superagent["default"].agent(); + } + /* + * Allow user to override superagent agent + */ + + + this.requestAgent = null; + /* + * Allow user to add superagent plugins + */ + + this.plugins = null; + } + /** + * Returns a string representation for an actual parameter. + * @param param The actual parameter. + * @returns {String} The string representation of param. + */ + + + _createClass(ApiClient, [{ + key: "paramToString", + value: function paramToString(param) { + if (param == undefined || param == null) { + return ''; + } + + if (param instanceof Date) { + return param.toJSON(); + } + + if (ApiClient.canBeJsonified(param)) { + return JSON.stringify(param); + } + + return param.toString(); + } + /** + * Returns a boolean indicating if the parameter could be JSON.stringified + * @param param The actual parameter + * @returns {Boolean} Flag indicating if param can be JSON.stringified + */ + + }, { + key: "buildUrl", + value: + /** + * Builds full URL by appending the given path to the base URL and replacing path parameter place-holders with parameter values. + * NOTE: query parameters are not handled here. + * @param {String} path The path to append to the base URL. + * @param {Object} pathParams The parameter values to append. + * @param {String} apiBasePath Base path defined in the path, operation level to override the default one + * @returns {String} The encoded path with parameter values substituted. + */ + function buildUrl(path, pathParams, apiBasePath) { + var _this = this; + + if (!path.match(/^\//)) { + path = '/' + path; + } + + var url = this.basePath + path; // use API (operation, path) base path if defined + + if (apiBasePath !== null && apiBasePath !== undefined) { + url = apiBasePath + path; + } + + url = url.replace(/\{([\w-\.]+)\}/g, function (fullMatch, key) { + var value; + + if (pathParams.hasOwnProperty(key)) { + value = _this.paramToString(pathParams[key]); + } else { + value = fullMatch; + } + + return encodeURIComponent(value); + }); + return url; + } + /** + * Checks whether the given content type represents JSON.
+ * JSON content type examples:
+ *
    + *
  • application/json
  • + *
  • application/json; charset=UTF8
  • + *
  • APPLICATION/JSON
  • + *
+ * @param {String} contentType The MIME content type to check. + * @returns {Boolean} true if contentType represents JSON, otherwise false. + */ + + }, { + key: "isJsonMime", + value: function isJsonMime(contentType) { + return Boolean(contentType != null && contentType.match(/^application\/json(;.*)?$/i)); + } + /** + * Chooses a content type from the given array, with JSON preferred; i.e. return JSON if included, otherwise return the first. + * @param {Array.} contentTypes + * @returns {String} The chosen content type, preferring JSON. + */ + + }, { + key: "jsonPreferredMime", + value: function jsonPreferredMime(contentTypes) { + for (var i = 0; i < contentTypes.length; i++) { + if (this.isJsonMime(contentTypes[i])) { + return contentTypes[i]; + } + } + + return contentTypes[0]; + } + /** + * Checks whether the given parameter value represents file-like content. + * @param param The parameter to check. + * @returns {Boolean} true if param represents a file. + */ + + }, { + key: "isFileParam", + value: function isFileParam(param) { + // fs.ReadStream in Node.js and Electron (but not in runtime like browserify) + if (typeof require === 'function') { + var fs; + + try { + fs = require('fs'); + } catch (err) {} + + if (fs && fs.ReadStream && param instanceof fs.ReadStream) { + return true; + } + } // Buffer in Node.js + + + if (typeof Buffer === 'function' && param instanceof Buffer) { + return true; + } // Blob in browser + + + if (typeof Blob === 'function' && param instanceof Blob) { + return true; + } // File in browser (it seems File object is also instance of Blob, but keep this for safe) + + + if (typeof File === 'function' && param instanceof File) { + return true; + } + + return false; + } + /** + * Normalizes parameter values: + *
    + *
  • remove nils
  • + *
  • keep files and arrays
  • + *
  • format to string with `paramToString` for other cases
  • + *
+ * @param {Object.} params The parameters as object properties. + * @returns {Object.} normalized parameters. + */ + + }, { + key: "normalizeParams", + value: function normalizeParams(params) { + var newParams = {}; + + for (var key in params) { + if (params.hasOwnProperty(key) && params[key] != undefined && params[key] != null) { + var value = params[key]; + + if (this.isFileParam(value) || Array.isArray(value)) { + newParams[key] = value; + } else { + newParams[key] = this.paramToString(value); + } + } + } + + return newParams; + } + /** + * Builds a string representation of an array-type actual parameter, according to the given collection format. + * @param {Array} param An array parameter. + * @param {module:ApiClient.CollectionFormatEnum} collectionFormat The array element separator strategy. + * @returns {String|Array} A string representation of the supplied collection, using the specified delimiter. Returns + * param as is if collectionFormat is multi. + */ + + }, { + key: "buildCollectionParam", + value: function buildCollectionParam(param, collectionFormat) { + if (param == null) { + return null; + } + + switch (collectionFormat) { + case 'csv': + return param.map(this.paramToString, this).join(','); + + case 'ssv': + return param.map(this.paramToString, this).join(' '); + + case 'tsv': + return param.map(this.paramToString, this).join('\t'); + + case 'pipes': + return param.map(this.paramToString, this).join('|'); + + case 'multi': + //return the array directly as SuperAgent will handle it as expected + return param.map(this.paramToString, this); + + case 'passthrough': + return param; + + default: + throw new Error('Unknown collection format: ' + collectionFormat); + } + } + /** + * Applies authentication headers to the request. + * @param {Object} request The request object created by a superagent() call. + * @param {Array.} authNames An array of authentication method names. + */ + + }, { + key: "applyAuthToRequest", + value: function applyAuthToRequest(request, authNames) { + var _this2 = this; + + authNames.forEach(function (authName) { + var auth = _this2.authentications[authName]; + + switch (auth.type) { + case 'basic': + if (auth.username || auth.password) { + request.auth(auth.username || '', auth.password || ''); + } + + break; + + case 'bearer': + if (auth.accessToken) { + var localVarBearerToken = typeof auth.accessToken === 'function' ? auth.accessToken() : auth.accessToken; + request.set({ + 'Authorization': 'Bearer ' + localVarBearerToken + }); + } + + break; + + case 'apiKey': + if (auth.apiKey) { + var data = {}; + + if (auth.apiKeyPrefix) { + data[auth.name] = auth.apiKeyPrefix + ' ' + auth.apiKey; + } else { + data[auth.name] = auth.apiKey; + } + + if (auth['in'] === 'header') { + request.set(data); + } else { + request.query(data); + } + } + + break; + + case 'oauth2': + if (auth.accessToken) { + request.set({ + 'Authorization': 'Bearer ' + auth.accessToken + }); + } + + break; + + default: + throw new Error('Unknown authentication type: ' + auth.type); + } + }); + } + /** + * Deserializes an HTTP response body into a value of the specified type. + * @param {Object} response A SuperAgent response object. + * @param {(String|Array.|Object.|Function)} returnType The type to return. Pass a string for simple types + * or the constructor function for a complex type. Pass an array containing the type name to return an array of that type. To + * return an object, pass an object with one property whose name is the key type and whose value is the corresponding value type: + * all properties on data will be converted to this type. + * @returns A value of the specified type. + */ + + }, { + key: "deserialize", + value: function deserialize(response, returnType) { + if (response == null || returnType == null || response.status == 204) { + return null; + } // Rely on SuperAgent for parsing response body. + // See http://visionmedia.github.io/superagent/#parsing-response-bodies + + + var data = response.body; + + if (data == null || _typeof(data) === 'object' && typeof data.length === 'undefined' && !Object.keys(data).length) { + // SuperAgent does not always produce a body; use the unparsed response as a fallback + data = response.text; + } + + return ApiClient.convertToType(data, returnType); + } + /** + * Invokes the REST service using the supplied settings and parameters. + * @param {String} path The base URL to invoke. + * @param {String} httpMethod The HTTP method to use. + * @param {Object.} pathParams A map of path parameters and their values. + * @param {Object.} queryParams A map of query parameters and their values. + * @param {Object.} headerParams A map of header parameters and their values. + * @param {Object.} formParams A map of form parameters and their values. + * @param {Object} bodyParam The value to pass as the request body. + * @param {Array.} authNames An array of authentication type names. + * @param {Array.} contentTypes An array of request MIME types. + * @param {Array.} accepts An array of acceptable response MIME types. + * @param {(String|Array|ObjectFunction)} returnType The required type to return; can be a string for simple types or the + * constructor for a complex type. + * @param {String} apiBasePath base path defined in the operation/path level to override the default one + * @returns {Promise} A {@link https://www.promisejs.org/|Promise} object. + */ + + }, { + key: "callApi", + value: function callApi(path, httpMethod, pathParams, queryParams, headerParams, formParams, bodyParam, authNames, contentTypes, accepts, returnType, apiBasePath) { + var _this3 = this; + + var url = this.buildUrl(path, pathParams, apiBasePath); + var request = (0, _superagent["default"])(httpMethod, url); + + if (this.plugins !== null) { + for (var index in this.plugins) { + if (this.plugins.hasOwnProperty(index)) { + request.use(this.plugins[index]); + } + } + } // apply authentications + + + this.applyAuthToRequest(request, authNames); // set query parameters + + if (httpMethod.toUpperCase() === 'GET' && this.cache === false) { + queryParams['_'] = new Date().getTime(); + } + + request.query(this.normalizeParams(queryParams)); // set header parameters + + request.set(this.defaultHeaders).set(this.normalizeParams(headerParams)); // set requestAgent if it is set by user + + if (this.requestAgent) { + request.agent(this.requestAgent); + } // set request timeout + + + request.timeout(this.timeout); + var contentType = this.jsonPreferredMime(contentTypes); + + if (contentType) { + // Issue with superagent and multipart/form-data (https://github.com/visionmedia/superagent/issues/746) + if (contentType != 'multipart/form-data') { + request.type(contentType); + } + } + + if (contentType === 'application/x-www-form-urlencoded') { + request.send(_querystring["default"].stringify(this.normalizeParams(formParams))); + } else if (contentType == 'multipart/form-data') { + var _formParams = this.normalizeParams(formParams); + + for (var key in _formParams) { + if (_formParams.hasOwnProperty(key)) { + var _formParamsValue = _formParams[key]; + + if (this.isFileParam(_formParamsValue)) { + // file field + request.attach(key, _formParamsValue); + } else if (Array.isArray(_formParamsValue) && _formParamsValue.length && this.isFileParam(_formParamsValue[0])) { + // multiple files + _formParamsValue.forEach(function (file) { + return request.attach(key, file); + }); + } else { + request.field(key, _formParamsValue); + } + } + } + } else if (bodyParam !== null && bodyParam !== undefined) { + if (!request.header['Content-Type']) { + request.type('application/json'); + } + + request.send(bodyParam); + } + + var accept = this.jsonPreferredMime(accepts); + + if (accept) { + request.accept(accept); + } + + if (returnType === 'Blob') { + request.responseType('blob'); + } else if (returnType === 'String') { + request.responseType('string'); + } // Attach previously saved cookies, if enabled + + + if (this.enableCookies) { + if (typeof window === 'undefined') { + this.agent._attachCookies(request); + } else { + request.withCredentials(); + } + } + + return new Promise(function (resolve, reject) { + request.end(function (error, response) { + if (error) { + var err = {}; + + if (response) { + err.status = response.status; + err.statusText = response.statusText; + err.body = response.body; + err.response = response; + } + + err.error = error; + reject(err); + } else { + try { + var data = _this3.deserialize(response, returnType); + + if (_this3.enableCookies && typeof window === 'undefined') { + _this3.agent._saveCookies(response); + } + + resolve({ + data: data, + response: response + }); + } catch (err) { + reject(err); + } + } + }); + }); + } + /** + * Parses an ISO-8601 string representation or epoch representation of a date value. + * @param {String} str The date value as a string. + * @returns {Date} The parsed date object. + */ + + }, { + key: "hostSettings", + value: + /** + * Gets an array of host settings + * @returns An array of host settings + */ + function hostSettings() { + return [{ + 'url': "https://api.vrchat.cloud/api/1", + 'description': "No description provided" + }]; + } + }, { + key: "getBasePathFromSettings", + value: function getBasePathFromSettings(index) { + var variables = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; + var servers = this.hostSettings(); // check array index out of bound + + if (index < 0 || index >= servers.length) { + throw new Error("Invalid index " + index + " when selecting the host settings. Must be less than " + servers.length); + } + + var server = servers[index]; + var url = server['url']; // go through variable and assign a value + + for (var variable_name in server['variables']) { + if (variable_name in variables) { + var variable = server['variables'][variable_name]; + + if (!('enum_values' in variable) || variable['enum_values'].includes(variables[variable_name])) { + url = url.replace("{" + variable_name + "}", variables[variable_name]); + } else { + throw new Error("The variable `" + variable_name + "` in the host URL has invalid value " + variables[variable_name] + ". Must be " + server['variables'][variable_name]['enum_values'] + "."); + } + } else { + // use default value + url = url.replace("{" + variable_name + "}", server['variables'][variable_name]['default_value']); + } + } + + return url; + } + /** + * Constructs a new map or array model from REST data. + * @param data {Object|Array} The REST data. + * @param obj {Object|Array} The target object or array. + */ + + }], [{ + key: "canBeJsonified", + value: function canBeJsonified(str) { + if (typeof str !== 'string' && _typeof(str) !== 'object') return false; + + try { + var type = str.toString(); + return type === '[object Object]' || type === '[object Array]'; + } catch (err) { + return false; + } + } + }, { + key: "parseDate", + value: function parseDate(str) { + if (isNaN(str)) { + return new Date(str.replace(/(\d)(T)(\d)/i, '$1 $3')); + } + + return new Date(+str); + } + /** + * Converts a value to the specified type. + * @param {(String|Object)} data The data to convert, as a string or object. + * @param {(String|Array.|Object.|Function)} type The type to return. Pass a string for simple types + * or the constructor function for a complex type. Pass an array containing the type name to return an array of that type. To + * return an object, pass an object with one property whose name is the key type and whose value is the corresponding value type: + * all properties on data will be converted to this type. + * @returns An instance of the specified type or null or undefined if data is null or undefined. + */ + + }, { + key: "convertToType", + value: function convertToType(data, type) { + if (data === null || data === undefined) return data; + + switch (type) { + case 'Boolean': + return Boolean(data); + + case 'Integer': + return parseInt(data, 10); + + case 'Number': + return parseFloat(data); + + case 'String': + return String(data); + + case 'Date': + return ApiClient.parseDate(String(data)); + + case 'Blob': + return data; + + default: + if (type === Object) { + // generic object, return directly + return data; + } else if (typeof type.constructFromObject === 'function') { + // for model type like User and enum class + return type.constructFromObject(data); + } else if (Array.isArray(type)) { + // for array type like: ['String'] + var itemType = type[0]; + return data.map(function (item) { + return ApiClient.convertToType(item, itemType); + }); + } else if (_typeof(type) === 'object') { + // for plain object type like: {'String': 'Integer'} + var keyType, valueType; + + for (var k in type) { + if (type.hasOwnProperty(k)) { + keyType = k; + valueType = type[k]; + break; + } + } + + var result = {}; + + for (var k in data) { + if (data.hasOwnProperty(k)) { + var key = ApiClient.convertToType(k, keyType); + var value = ApiClient.convertToType(data[k], valueType); + result[key] = value; + } + } + + return result; + } else { + // for unknown type, return the data directly + return data; + } + + } + } + }, { + key: "constructFromObject", + value: function constructFromObject(data, obj, itemType) { + if (Array.isArray(data)) { + for (var i = 0; i < data.length; i++) { + if (data.hasOwnProperty(i)) obj[i] = ApiClient.convertToType(data[i], itemType); + } + } else { + for (var k in data) { + if (data.hasOwnProperty(k)) obj[k] = ApiClient.convertToType(data[k], itemType); + } + } + } + }]); + + return ApiClient; +}(); +/** + * Enumeration of collection format separator strategies. + * @enum {String} + * @readonly + */ + + +ApiClient.CollectionFormatEnum = { + /** + * Comma-separated values. Value: csv + * @const + */ + CSV: ',', + + /** + * Space-separated values. Value: ssv + * @const + */ + SSV: ' ', + + /** + * Tab-separated values. Value: tsv + * @const + */ + TSV: '\t', + + /** + * Pipe(|)-separated values. Value: pipes + * @const + */ + PIPES: '|', + + /** + * Native array. Value: multi + * @const + */ + MULTI: 'multi' +}; +/** +* The default API client implementation. +* @type {module:ApiClient} +*/ + +ApiClient.instance = new ApiClient(); +var _default = ApiClient; +exports["default"] = _default; \ No newline at end of file diff --git a/dist/api/AuthenticationApi.js b/dist/api/AuthenticationApi.js new file mode 100644 index 0000000..884c727 --- /dev/null +++ b/dist/api/AuthenticationApi.js @@ -0,0 +1,273 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var _ApiClient = _interopRequireDefault(require("../ApiClient")); + +var _CurrentUser = _interopRequireDefault(require("../model/CurrentUser")); + +var _InlineObject = _interopRequireDefault(require("../model/InlineObject")); + +var _InlineObject2 = _interopRequireDefault(require("../model/InlineObject1")); + +var _InlineResponse = _interopRequireDefault(require("../model/InlineResponse200")); + +var _InlineResponse2 = _interopRequireDefault(require("../model/InlineResponse2001")); + +var _InlineResponse3 = _interopRequireDefault(require("../model/InlineResponse401")); + +var _Success = _interopRequireDefault(require("../model/Success")); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +/** +* Authentication service. +* @module api/AuthenticationApi +* @version 1.0.0 +*/ +var AuthenticationApi = /*#__PURE__*/function () { + /** + * Constructs a new AuthenticationApi. + * @alias module:api/AuthenticationApi + * @class + * @param {module:ApiClient} [apiClient] Optional API client implementation to use, + * default to {@link module:ApiClient#instance} if unspecified. + */ + function AuthenticationApi(apiClient) { + _classCallCheck(this, AuthenticationApi); + + this.apiClient = apiClient || _ApiClient["default"].instance; + } + /** + * Delete User + * Deletes the account with given ID. Normal users only have permission to delete their own account. Account deletion is 14 days from this request, and will be cancelled if you do an authenticated request with the account afterwards. **VRC+ NOTE:** Despite the 14-days cooldown, any VRC+ subscription will be cancelled **immediately**. **METHOD NOTE:** Despite this being a Delete action, the method type required is PUT. + * @param {String} userId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/CurrentUser} and HTTP response + */ + + + _createClass(AuthenticationApi, [{ + key: "deleteUserByIdWithHttpInfo", + value: function deleteUserByIdWithHttpInfo(userId) { + var postBody = null; // verify the required parameter 'userId' is set + + if (userId === undefined || userId === null) { + throw new Error("Missing the required parameter 'userId' when calling deleteUserById"); + } + + var pathParams = { + 'userId': userId + }; + var queryParams = {}; + var headerParams = {}; + var formParams = {}; + var authNames = ['apiKeyCookie', 'authCookie']; + var contentTypes = []; + var accepts = ['application/json']; + var returnType = _CurrentUser["default"]; + return this.apiClient.callApi('/user/{userId}/delete', 'PUT', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); + } + /** + * Delete User + * Deletes the account with given ID. Normal users only have permission to delete their own account. Account deletion is 14 days from this request, and will be cancelled if you do an authenticated request with the account afterwards. **VRC+ NOTE:** Despite the 14-days cooldown, any VRC+ subscription will be cancelled **immediately**. **METHOD NOTE:** Despite this being a Delete action, the method type required is PUT. + * @param {String} userId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/CurrentUser} + */ + + }, { + key: "deleteUserById", + value: function deleteUserById(userId) { + return this.deleteUserByIdWithHttpInfo(userId).then(function (response_and_data) { + return response_and_data.data; + }); + } + /** + * Login and/or Get Current User Info + * Login and/or Get user data from your VRChat account. If `Authorization` header is present then a new login session will be generated, and a new `auth` cookie is returned. **WARNING: Session Limit:** Each authentication with login credentials counts as a separate session, out of which you have a limited amount. Make sure to save and reuse the `auth` cookie whenever you can, and avoid sending the Authorization header unless strictly neccesary. While the exact number of simultaneous open sessions is secret, expect to **very fast** run into the rate-limit and be temporarily blocked from making new sessions until the old ones expire. + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/CurrentUser} and HTTP response + */ + + }, { + key: "getCurrentUserWithHttpInfo", + value: function getCurrentUserWithHttpInfo() { + var postBody = null; + var pathParams = {}; + var queryParams = {}; + var headerParams = {}; + var formParams = {}; + var authNames = ['authCookie', 'authHeader', 'twoFactorAuthCookie']; + var contentTypes = []; + var accepts = ['application/json']; + var returnType = _CurrentUser["default"]; + return this.apiClient.callApi('/auth/user', 'GET', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); + } + /** + * Login and/or Get Current User Info + * Login and/or Get user data from your VRChat account. If `Authorization` header is present then a new login session will be generated, and a new `auth` cookie is returned. **WARNING: Session Limit:** Each authentication with login credentials counts as a separate session, out of which you have a limited amount. Make sure to save and reuse the `auth` cookie whenever you can, and avoid sending the Authorization header unless strictly neccesary. While the exact number of simultaneous open sessions is secret, expect to **very fast** run into the rate-limit and be temporarily blocked from making new sessions until the old ones expire. + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/CurrentUser} + */ + + }, { + key: "getCurrentUser", + value: function getCurrentUser() { + return this.getCurrentUserWithHttpInfo().then(function (response_and_data) { + return response_and_data.data; + }); + } + /** + * Logout + * Invalidates the auth cookie. + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/Success} and HTTP response + */ + + }, { + key: "logoutWithHttpInfo", + value: function logoutWithHttpInfo() { + var postBody = null; + var pathParams = {}; + var queryParams = {}; + var headerParams = {}; + var formParams = {}; + var authNames = ['apiKeyCookie', 'authCookie']; + var contentTypes = []; + var accepts = ['application/json']; + var returnType = _Success["default"]; + return this.apiClient.callApi('/logout', 'PUT', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); + } + /** + * Logout + * Invalidates the auth cookie. + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/Success} + */ + + }, { + key: "logout", + value: function logout() { + return this.logoutWithHttpInfo().then(function (response_and_data) { + return response_and_data.data; + }); + } + /** + * Verify 2FA code + * Finishes the login sequence with a normal 2FA-generated code for accounts with 2FA-protection enabled. + * @param {Object} opts Optional parameters + * @param {module:model/InlineObject} opts.inlineObject + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/InlineResponse2001} and HTTP response + */ + + }, { + key: "verify2FAWithHttpInfo", + value: function verify2FAWithHttpInfo(opts) { + opts = opts || {}; + var postBody = opts['inlineObject']; + var pathParams = {}; + var queryParams = {}; + var headerParams = {}; + var formParams = {}; + var authNames = ['authCookie']; + var contentTypes = ['application/json']; + var accepts = ['application/json']; + var returnType = _InlineResponse2["default"]; + return this.apiClient.callApi('/auth/twofactorauth/totp/verify', 'POST', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); + } + /** + * Verify 2FA code + * Finishes the login sequence with a normal 2FA-generated code for accounts with 2FA-protection enabled. + * @param {Object} opts Optional parameters + * @param {module:model/InlineObject} opts.inlineObject + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/InlineResponse2001} + */ + + }, { + key: "verify2FA", + value: function verify2FA(opts) { + return this.verify2FAWithHttpInfo(opts).then(function (response_and_data) { + return response_and_data.data; + }); + } + /** + * Verify Auth Token + * Verify whether the currently provided Auth Token is valid. + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/InlineResponse200} and HTTP response + */ + + }, { + key: "verifyAuthTokenWithHttpInfo", + value: function verifyAuthTokenWithHttpInfo() { + var postBody = null; + var pathParams = {}; + var queryParams = {}; + var headerParams = {}; + var formParams = {}; + var authNames = ['apiKeyCookie', 'authCookie']; + var contentTypes = []; + var accepts = ['application/json']; + var returnType = _InlineResponse["default"]; + return this.apiClient.callApi('/auth', 'GET', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); + } + /** + * Verify Auth Token + * Verify whether the currently provided Auth Token is valid. + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/InlineResponse200} + */ + + }, { + key: "verifyAuthToken", + value: function verifyAuthToken() { + return this.verifyAuthTokenWithHttpInfo().then(function (response_and_data) { + return response_and_data.data; + }); + } + /** + * Verify 2FA code with Recovery code + * Finishes the login sequence with an OTP (One Time Password) recovery code for accounts with 2FA-protection enabled. + * @param {Object} opts Optional parameters + * @param {module:model/InlineObject1} opts.inlineObject1 + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/InlineResponse2001} and HTTP response + */ + + }, { + key: "verifyRecoveryCodeWithHttpInfo", + value: function verifyRecoveryCodeWithHttpInfo(opts) { + opts = opts || {}; + var postBody = opts['inlineObject1']; + var pathParams = {}; + var queryParams = {}; + var headerParams = {}; + var formParams = {}; + var authNames = ['authCookie']; + var contentTypes = ['application/json']; + var accepts = ['application/json']; + var returnType = _InlineResponse2["default"]; + return this.apiClient.callApi('/auth/twofactorauth/otp/verify', 'POST', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); + } + /** + * Verify 2FA code with Recovery code + * Finishes the login sequence with an OTP (One Time Password) recovery code for accounts with 2FA-protection enabled. + * @param {Object} opts Optional parameters + * @param {module:model/InlineObject1} opts.inlineObject1 + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/InlineResponse2001} + */ + + }, { + key: "verifyRecoveryCode", + value: function verifyRecoveryCode(opts) { + return this.verifyRecoveryCodeWithHttpInfo(opts).then(function (response_and_data) { + return response_and_data.data; + }); + } + }]); + + return AuthenticationApi; +}(); + +exports["default"] = AuthenticationApi; \ No newline at end of file diff --git a/dist/api/FilesApi.js b/dist/api/FilesApi.js new file mode 100644 index 0000000..6b2341e --- /dev/null +++ b/dist/api/FilesApi.js @@ -0,0 +1,555 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var _ApiClient = _interopRequireDefault(require("../ApiClient")); + +var _Error = _interopRequireDefault(require("../model/Error")); + +var _InlineObject = _interopRequireDefault(require("../model/InlineObject3")); + +var _InlineObject2 = _interopRequireDefault(require("../model/InlineObject4")); + +var _InlineResponse = _interopRequireDefault(require("../model/InlineResponse2004")); + +var _InlineResponse2 = _interopRequireDefault(require("../model/InlineResponse2005")); + +var _Success = _interopRequireDefault(require("../model/Success")); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +/** +* Files service. +* @module api/FilesApi +* @version 1.0.0 +*/ +var FilesApi = /*#__PURE__*/function () { + /** + * Constructs a new FilesApi. + * @alias module:api/FilesApi + * @class + * @param {module:ApiClient} [apiClient] Optional API client implementation to use, + * default to {@link module:ApiClient#instance} if unspecified. + */ + function FilesApi(apiClient) { + _classCallCheck(this, FilesApi); + + this.apiClient = apiClient || _ApiClient["default"].instance; + } + /** + * Create File + * Creates a new File object + * @param {Object} opts Optional parameters + * @param {module:model/InlineObject3} opts.inlineObject3 + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link File} and HTTP response + */ + + + _createClass(FilesApi, [{ + key: "createFileWithHttpInfo", + value: function createFileWithHttpInfo(opts) { + opts = opts || {}; + var postBody = opts['inlineObject3']; + var pathParams = {}; + var queryParams = {}; + var headerParams = {}; + var formParams = {}; + var authNames = ['apiKeyCookie', 'authCookie']; + var contentTypes = ['application/json']; + var accepts = ['application/json']; + var returnType = File; + return this.apiClient.callApi('/file', 'POST', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); + } + /** + * Create File + * Creates a new File object + * @param {Object} opts Optional parameters + * @param {module:model/InlineObject3} opts.inlineObject3 + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link File} + */ + + }, { + key: "createFile", + value: function createFile(opts) { + return this.createFileWithHttpInfo(opts).then(function (response_and_data) { + return response_and_data.data; + }); + } + /** + * Create File Version + * Creates a new FileVersion. Once a Version has been created, proceed to the `/file/{fileId}/{versionId}/file/start` endpoint to start a file upload. + * @param {String} fileId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link File} and HTTP response + */ + + }, { + key: "createFileVersionWithHttpInfo", + value: function createFileVersionWithHttpInfo(fileId) { + var postBody = null; // verify the required parameter 'fileId' is set + + if (fileId === undefined || fileId === null) { + throw new _Error["default"]("Missing the required parameter 'fileId' when calling createFileVersion"); + } + + var pathParams = { + 'fileId': fileId + }; + var queryParams = {}; + var headerParams = {}; + var formParams = {}; + var authNames = ['apiKeyCookie', 'authCookie']; + var contentTypes = []; + var accepts = ['application/json']; + var returnType = File; + return this.apiClient.callApi('/file/{fileId}', 'POST', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); + } + /** + * Create File Version + * Creates a new FileVersion. Once a Version has been created, proceed to the `/file/{fileId}/{versionId}/file/start` endpoint to start a file upload. + * @param {String} fileId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link File} + */ + + }, { + key: "createFileVersion", + value: function createFileVersion(fileId) { + return this.createFileVersionWithHttpInfo(fileId).then(function (response_and_data) { + return response_and_data.data; + }); + } + /** + * Delete File + * Deletes a File object. + * @param {String} fileId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/Success} and HTTP response + */ + + }, { + key: "deleteFileWithHttpInfo", + value: function deleteFileWithHttpInfo(fileId) { + var postBody = null; // verify the required parameter 'fileId' is set + + if (fileId === undefined || fileId === null) { + throw new _Error["default"]("Missing the required parameter 'fileId' when calling deleteFile"); + } + + var pathParams = { + 'fileId': fileId + }; + var queryParams = {}; + var headerParams = {}; + var formParams = {}; + var authNames = ['apiKeyCookie', 'authCookie']; + var contentTypes = []; + var accepts = ['application/json']; + var returnType = _Success["default"]; + return this.apiClient.callApi('/file/{fileId}', 'DELETE', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); + } + /** + * Delete File + * Deletes a File object. + * @param {String} fileId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/Success} + */ + + }, { + key: "deleteFile", + value: function deleteFile(fileId) { + return this.deleteFileWithHttpInfo(fileId).then(function (response_and_data) { + return response_and_data.data; + }); + } + /** + * Delete File Version + * Delete a specific version of a file. You can only delete the latest version. + * @param {String} fileId + * @param {Number} versionId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link File} and HTTP response + */ + + }, { + key: "deleteFileVersionWithHttpInfo", + value: function deleteFileVersionWithHttpInfo(fileId, versionId) { + var postBody = null; // verify the required parameter 'fileId' is set + + if (fileId === undefined || fileId === null) { + throw new _Error["default"]("Missing the required parameter 'fileId' when calling deleteFileVersion"); + } // verify the required parameter 'versionId' is set + + + if (versionId === undefined || versionId === null) { + throw new _Error["default"]("Missing the required parameter 'versionId' when calling deleteFileVersion"); + } + + var pathParams = { + 'fileId': fileId, + 'versionId': versionId + }; + var queryParams = {}; + var headerParams = {}; + var formParams = {}; + var authNames = ['apiKeyCookie', 'authCookie']; + var contentTypes = []; + var accepts = ['application/json']; + var returnType = File; + return this.apiClient.callApi('/file/{fileId}/{versionId}', 'DELETE', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); + } + /** + * Delete File Version + * Delete a specific version of a file. You can only delete the latest version. + * @param {String} fileId + * @param {Number} versionId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link File} + */ + + }, { + key: "deleteFileVersion", + value: function deleteFileVersion(fileId, versionId) { + return this.deleteFileVersionWithHttpInfo(fileId, versionId).then(function (response_and_data) { + return response_and_data.data; + }); + } + /** + * Download File Version + * Downloads the file with the provided version number. **Version Note:** Version 0 is always when the file was created. The real data is usually always located in version 1 and up. **Extension Note:** Files are not guaranteed to have a file extensions. UnityPackage files tends to have it, images through this endpoint do not. You are responsible for appending file extension from the `extension` field when neccesary. + * @param {String} fileId + * @param {Number} versionId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing HTTP response + */ + + }, { + key: "downloadFileVersionWithHttpInfo", + value: function downloadFileVersionWithHttpInfo(fileId, versionId) { + var postBody = null; // verify the required parameter 'fileId' is set + + if (fileId === undefined || fileId === null) { + throw new _Error["default"]("Missing the required parameter 'fileId' when calling downloadFileVersion"); + } // verify the required parameter 'versionId' is set + + + if (versionId === undefined || versionId === null) { + throw new _Error["default"]("Missing the required parameter 'versionId' when calling downloadFileVersion"); + } + + var pathParams = { + 'fileId': fileId, + 'versionId': versionId + }; + var queryParams = {}; + var headerParams = {}; + var formParams = {}; + var authNames = ['apiKeyCookie', 'authCookie']; + var contentTypes = []; + var accepts = []; + var returnType = null; + return this.apiClient.callApi('/file/{fileId}/{versionId}', 'GET', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); + } + /** + * Download File Version + * Downloads the file with the provided version number. **Version Note:** Version 0 is always when the file was created. The real data is usually always located in version 1 and up. **Extension Note:** Files are not guaranteed to have a file extensions. UnityPackage files tends to have it, images through this endpoint do not. You are responsible for appending file extension from the `extension` field when neccesary. + * @param {String} fileId + * @param {Number} versionId + * @return {Promise} a {@link https://www.promisejs.org/|Promise} + */ + + }, { + key: "downloadFileVersion", + value: function downloadFileVersion(fileId, versionId) { + return this.downloadFileVersionWithHttpInfo(fileId, versionId).then(function (response_and_data) { + return response_and_data.data; + }); + } + /** + * Finish FileData Upload + * Finish an upload of a FileData. This will mark it as \"complete\". After uploading the `file` for Avatars and Worlds you then have to upload a `signature` file. + * @param {String} fileId + * @param {Number} versionId + * @param {module:model/String} fileType + * @param {Object} opts Optional parameters + * @param {module:model/InlineObject4} opts.inlineObject4 + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link File} and HTTP response + */ + + }, { + key: "finishFileDataUploadWithHttpInfo", + value: function finishFileDataUploadWithHttpInfo(fileId, versionId, fileType, opts) { + opts = opts || {}; + var postBody = opts['inlineObject4']; // verify the required parameter 'fileId' is set + + if (fileId === undefined || fileId === null) { + throw new _Error["default"]("Missing the required parameter 'fileId' when calling finishFileDataUpload"); + } // verify the required parameter 'versionId' is set + + + if (versionId === undefined || versionId === null) { + throw new _Error["default"]("Missing the required parameter 'versionId' when calling finishFileDataUpload"); + } // verify the required parameter 'fileType' is set + + + if (fileType === undefined || fileType === null) { + throw new _Error["default"]("Missing the required parameter 'fileType' when calling finishFileDataUpload"); + } + + var pathParams = { + 'fileId': fileId, + 'versionId': versionId, + 'fileType': fileType + }; + var queryParams = {}; + var headerParams = {}; + var formParams = {}; + var authNames = ['apiKeyCookie', 'authCookie']; + var contentTypes = ['application/json']; + var accepts = ['application/json']; + var returnType = File; + return this.apiClient.callApi('/file/{fileId}/{versionId}/{fileType}/finish', 'PUT', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); + } + /** + * Finish FileData Upload + * Finish an upload of a FileData. This will mark it as \"complete\". After uploading the `file` for Avatars and Worlds you then have to upload a `signature` file. + * @param {String} fileId + * @param {Number} versionId + * @param {module:model/String} fileType + * @param {Object} opts Optional parameters + * @param {module:model/InlineObject4} opts.inlineObject4 + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link File} + */ + + }, { + key: "finishFileDataUpload", + value: function finishFileDataUpload(fileId, versionId, fileType, opts) { + return this.finishFileDataUploadWithHttpInfo(fileId, versionId, fileType, opts).then(function (response_and_data) { + return response_and_data.data; + }); + } + /** + * Show File + * Shows general information about the \"File\" object. Each File can have several \"Version\"'s, and each Version can have multiple real files or \"Data\" blobs. + * @param {String} fileId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link File} and HTTP response + */ + + }, { + key: "getFileWithHttpInfo", + value: function getFileWithHttpInfo(fileId) { + var postBody = null; // verify the required parameter 'fileId' is set + + if (fileId === undefined || fileId === null) { + throw new _Error["default"]("Missing the required parameter 'fileId' when calling getFile"); + } + + var pathParams = { + 'fileId': fileId + }; + var queryParams = {}; + var headerParams = {}; + var formParams = {}; + var authNames = ['apiKeyCookie', 'authCookie']; + var contentTypes = []; + var accepts = ['application/json']; + var returnType = File; + return this.apiClient.callApi('/file/{fileId}', 'GET', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); + } + /** + * Show File + * Shows general information about the \"File\" object. Each File can have several \"Version\"'s, and each Version can have multiple real files or \"Data\" blobs. + * @param {String} fileId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link File} + */ + + }, { + key: "getFile", + value: function getFile(fileId) { + return this.getFileWithHttpInfo(fileId).then(function (response_and_data) { + return response_and_data.data; + }); + } + /** + * Check FileData Upload Status + * Retrieves the upload status for file upload. Can currently only be accessed when `status` is `waiting`. Trying to access it on a file version already uploaded currently times out. + * @param {String} fileId + * @param {Number} versionId + * @param {module:model/String} fileType + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/InlineResponse2004} and HTTP response + */ + + }, { + key: "getFileDataUploadStatusWithHttpInfo", + value: function getFileDataUploadStatusWithHttpInfo(fileId, versionId, fileType) { + var postBody = null; // verify the required parameter 'fileId' is set + + if (fileId === undefined || fileId === null) { + throw new _Error["default"]("Missing the required parameter 'fileId' when calling getFileDataUploadStatus"); + } // verify the required parameter 'versionId' is set + + + if (versionId === undefined || versionId === null) { + throw new _Error["default"]("Missing the required parameter 'versionId' when calling getFileDataUploadStatus"); + } // verify the required parameter 'fileType' is set + + + if (fileType === undefined || fileType === null) { + throw new _Error["default"]("Missing the required parameter 'fileType' when calling getFileDataUploadStatus"); + } + + var pathParams = { + 'fileId': fileId, + 'versionId': versionId, + 'fileType': fileType + }; + var queryParams = {}; + var headerParams = {}; + var formParams = {}; + var authNames = ['apiKeyCookie', 'authCookie']; + var contentTypes = []; + var accepts = ['application/json']; + var returnType = _InlineResponse["default"]; + return this.apiClient.callApi('/file/{fileId}/{versionId}/{fileType}/status', 'GET', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); + } + /** + * Check FileData Upload Status + * Retrieves the upload status for file upload. Can currently only be accessed when `status` is `waiting`. Trying to access it on a file version already uploaded currently times out. + * @param {String} fileId + * @param {Number} versionId + * @param {module:model/String} fileType + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/InlineResponse2004} + */ + + }, { + key: "getFileDataUploadStatus", + value: function getFileDataUploadStatus(fileId, versionId, fileType) { + return this.getFileDataUploadStatusWithHttpInfo(fileId, versionId, fileType).then(function (response_and_data) { + return response_and_data.data; + }); + } + /** + * List Files + * Returns a list of files + * @param {Object} opts Optional parameters + * @param {String} opts.tag Tag, for example \"icon\" or \"gallery\", not included by default. + * @param {String} opts.userId UserID, will always generate a 500 permission error. + * @param {Number} opts.n The number of objects to return. (default to 60) + * @param {Number} opts.offset A zero-based offset from the default object sorting from where search results start. + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link Array.} and HTTP response + */ + + }, { + key: "getFilesWithHttpInfo", + value: function getFilesWithHttpInfo(opts) { + opts = opts || {}; + var postBody = null; + var pathParams = {}; + var queryParams = { + 'tag': opts['tag'], + 'userId': opts['userId'], + 'n': opts['n'], + 'offset': opts['offset'] + }; + var headerParams = {}; + var formParams = {}; + var authNames = ['apiKeyCookie', 'authCookie']; + var contentTypes = []; + var accepts = ['application/json']; + var returnType = [File]; + return this.apiClient.callApi('/files', 'GET', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); + } + /** + * List Files + * Returns a list of files + * @param {Object} opts Optional parameters + * @param {String} opts.tag Tag, for example \"icon\" or \"gallery\", not included by default. + * @param {String} opts.userId UserID, will always generate a 500 permission error. + * @param {Number} opts.n The number of objects to return. (default to 60) + * @param {Number} opts.offset A zero-based offset from the default object sorting from where search results start. + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link Array.} + */ + + }, { + key: "getFiles", + value: function getFiles(opts) { + return this.getFilesWithHttpInfo(opts).then(function (response_and_data) { + return response_and_data.data; + }); + } + /** + * Start FileData Upload + * Starts an upload of a specific FilePart. This endpoint will return an AWS URL which you can PUT data to. You need to call this and receive a new AWS API URL for each `partNumber`. Please see AWS's REST documentation on \"PUT Object to S3\" on how to upload. Once all parts has been uploaded, proceed to `/finish` endpoint. **Note:** `nextPartNumber` seems like it is always ignored. Despite it returning 0, first partNumber is always 1. + * @param {String} fileId + * @param {Number} versionId + * @param {module:model/String} fileType + * @param {Number} partNumber + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/InlineResponse2005} and HTTP response + */ + + }, { + key: "startFileDataUploadWithHttpInfo", + value: function startFileDataUploadWithHttpInfo(fileId, versionId, fileType, partNumber) { + var postBody = null; // verify the required parameter 'fileId' is set + + if (fileId === undefined || fileId === null) { + throw new _Error["default"]("Missing the required parameter 'fileId' when calling startFileDataUpload"); + } // verify the required parameter 'versionId' is set + + + if (versionId === undefined || versionId === null) { + throw new _Error["default"]("Missing the required parameter 'versionId' when calling startFileDataUpload"); + } // verify the required parameter 'fileType' is set + + + if (fileType === undefined || fileType === null) { + throw new _Error["default"]("Missing the required parameter 'fileType' when calling startFileDataUpload"); + } // verify the required parameter 'partNumber' is set + + + if (partNumber === undefined || partNumber === null) { + throw new _Error["default"]("Missing the required parameter 'partNumber' when calling startFileDataUpload"); + } + + var pathParams = { + 'fileId': fileId, + 'versionId': versionId, + 'fileType': fileType + }; + var queryParams = { + 'partNumber': partNumber + }; + var headerParams = {}; + var formParams = {}; + var authNames = ['apiKeyCookie', 'authCookie']; + var contentTypes = []; + var accepts = ['application/json']; + var returnType = _InlineResponse2["default"]; + return this.apiClient.callApi('/file/{fileId}/{versionId}/{fileType}/start', 'PUT', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); + } + /** + * Start FileData Upload + * Starts an upload of a specific FilePart. This endpoint will return an AWS URL which you can PUT data to. You need to call this and receive a new AWS API URL for each `partNumber`. Please see AWS's REST documentation on \"PUT Object to S3\" on how to upload. Once all parts has been uploaded, proceed to `/finish` endpoint. **Note:** `nextPartNumber` seems like it is always ignored. Despite it returning 0, first partNumber is always 1. + * @param {String} fileId + * @param {Number} versionId + * @param {module:model/String} fileType + * @param {Number} partNumber + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/InlineResponse2005} + */ + + }, { + key: "startFileDataUpload", + value: function startFileDataUpload(fileId, versionId, fileType, partNumber) { + return this.startFileDataUploadWithHttpInfo(fileId, versionId, fileType, partNumber).then(function (response_and_data) { + return response_and_data.data; + }); + } + }]); + + return FilesApi; +}(); + +exports["default"] = FilesApi; \ No newline at end of file diff --git a/dist/api/FriendsApi.js b/dist/api/FriendsApi.js new file mode 100644 index 0000000..f8bd6c3 --- /dev/null +++ b/dist/api/FriendsApi.js @@ -0,0 +1,268 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var _ApiClient = _interopRequireDefault(require("../ApiClient")); + +var _Error = _interopRequireDefault(require("../model/Error")); + +var _InlineResponse = _interopRequireDefault(require("../model/InlineResponse2003")); + +var _InlineResponse2 = _interopRequireDefault(require("../model/InlineResponse401")); + +var _LimitedUser = _interopRequireDefault(require("../model/LimitedUser")); + +var _Notification = _interopRequireDefault(require("../model/Notification")); + +var _Success = _interopRequireDefault(require("../model/Success")); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +/** +* Friends service. +* @module api/FriendsApi +* @version 1.0.0 +*/ +var FriendsApi = /*#__PURE__*/function () { + /** + * Constructs a new FriendsApi. + * @alias module:api/FriendsApi + * @class + * @param {module:ApiClient} [apiClient] Optional API client implementation to use, + * default to {@link module:ApiClient#instance} if unspecified. + */ + function FriendsApi(apiClient) { + _classCallCheck(this, FriendsApi); + + this.apiClient = apiClient || _ApiClient["default"].instance; + } + /** + * Delete Friend Request + * Deletes an outgoing pending friend request to another user. To delete an incoming friend request, use the `deleteNotification` endpoint instead. + * @param {String} userId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/Success} and HTTP response + */ + + + _createClass(FriendsApi, [{ + key: "deleteFriendRequestWithHttpInfo", + value: function deleteFriendRequestWithHttpInfo(userId) { + var postBody = null; // verify the required parameter 'userId' is set + + if (userId === undefined || userId === null) { + throw new _Error["default"]("Missing the required parameter 'userId' when calling deleteFriendRequest"); + } + + var pathParams = { + 'userId': userId + }; + var queryParams = {}; + var headerParams = {}; + var formParams = {}; + var authNames = ['apiKeyCookie', 'authCookie']; + var contentTypes = []; + var accepts = ['application/json']; + var returnType = _Success["default"]; + return this.apiClient.callApi('/user/{userId}/friendRequest', 'DELETE', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); + } + /** + * Delete Friend Request + * Deletes an outgoing pending friend request to another user. To delete an incoming friend request, use the `deleteNotification` endpoint instead. + * @param {String} userId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/Success} + */ + + }, { + key: "deleteFriendRequest", + value: function deleteFriendRequest(userId) { + return this.deleteFriendRequestWithHttpInfo(userId).then(function (response_and_data) { + return response_and_data.data; + }); + } + /** + * Send Friend Request + * Send a friend request to another user. + * @param {String} userId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/Notification} and HTTP response + */ + + }, { + key: "friendWithHttpInfo", + value: function friendWithHttpInfo(userId) { + var postBody = null; // verify the required parameter 'userId' is set + + if (userId === undefined || userId === null) { + throw new _Error["default"]("Missing the required parameter 'userId' when calling friend"); + } + + var pathParams = { + 'userId': userId + }; + var queryParams = {}; + var headerParams = {}; + var formParams = {}; + var authNames = ['apiKeyCookie', 'authCookie']; + var contentTypes = []; + var accepts = ['application/json']; + var returnType = _Notification["default"]; + return this.apiClient.callApi('/user/{userId}/friendRequest', 'POST', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); + } + /** + * Send Friend Request + * Send a friend request to another user. + * @param {String} userId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/Notification} + */ + + }, { + key: "friend", + value: function friend(userId) { + return this.friendWithHttpInfo(userId).then(function (response_and_data) { + return response_and_data.data; + }); + } + /** + * Check Friend Status + * Retrieve if the user is currently a friend with a given user, if they have an outgoing friend request, and if they have an incoming friend request. The proper way to receive and accept friend request is by checking if the user has an incoming `Notification` of type `friendRequest`, and then accepting that notification. + * @param {String} userId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/InlineResponse2003} and HTTP response + */ + + }, { + key: "getFriendStatusWithHttpInfo", + value: function getFriendStatusWithHttpInfo(userId) { + var postBody = null; // verify the required parameter 'userId' is set + + if (userId === undefined || userId === null) { + throw new _Error["default"]("Missing the required parameter 'userId' when calling getFriendStatus"); + } + + var pathParams = { + 'userId': userId + }; + var queryParams = {}; + var headerParams = {}; + var formParams = {}; + var authNames = ['apiKeyCookie', 'authCookie']; + var contentTypes = []; + var accepts = ['application/json']; + var returnType = _InlineResponse["default"]; + return this.apiClient.callApi('/user/{userId}/friendStatus', 'GET', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); + } + /** + * Check Friend Status + * Retrieve if the user is currently a friend with a given user, if they have an outgoing friend request, and if they have an incoming friend request. The proper way to receive and accept friend request is by checking if the user has an incoming `Notification` of type `friendRequest`, and then accepting that notification. + * @param {String} userId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/InlineResponse2003} + */ + + }, { + key: "getFriendStatus", + value: function getFriendStatus(userId) { + return this.getFriendStatusWithHttpInfo(userId).then(function (response_and_data) { + return response_and_data.data; + }); + } + /** + * List Friends + * List information about friends. + * @param {Object} opts Optional parameters + * @param {Number} opts.offset A zero-based offset from the default object sorting from where search results start. + * @param {Number} opts.n The number of objects to return. (default to 60) + * @param {Boolean} opts.offline Returns *only* offline users if true, returns only online and active users if false + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link Array.} and HTTP response + */ + + }, { + key: "getFriendsWithHttpInfo", + value: function getFriendsWithHttpInfo(opts) { + opts = opts || {}; + var postBody = null; + var pathParams = {}; + var queryParams = { + 'offset': opts['offset'], + 'n': opts['n'], + 'offline': opts['offline'] + }; + var headerParams = {}; + var formParams = {}; + var authNames = ['apiKeyCookie', 'authCookie']; + var contentTypes = []; + var accepts = ['application/json']; + var returnType = [_LimitedUser["default"]]; + return this.apiClient.callApi('/auth/user/friends', 'GET', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); + } + /** + * List Friends + * List information about friends. + * @param {Object} opts Optional parameters + * @param {Number} opts.offset A zero-based offset from the default object sorting from where search results start. + * @param {Number} opts.n The number of objects to return. (default to 60) + * @param {Boolean} opts.offline Returns *only* offline users if true, returns only online and active users if false + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link Array.} + */ + + }, { + key: "getFriends", + value: function getFriends(opts) { + return this.getFriendsWithHttpInfo(opts).then(function (response_and_data) { + return response_and_data.data; + }); + } + /** + * Unfriend + * Unfriend a user by ID. + * @param {String} userId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/Success} and HTTP response + */ + + }, { + key: "unfriendWithHttpInfo", + value: function unfriendWithHttpInfo(userId) { + var postBody = null; // verify the required parameter 'userId' is set + + if (userId === undefined || userId === null) { + throw new _Error["default"]("Missing the required parameter 'userId' when calling unfriend"); + } + + var pathParams = { + 'userId': userId + }; + var queryParams = {}; + var headerParams = {}; + var formParams = {}; + var authNames = ['apiKeyCookie', 'authCookie']; + var contentTypes = []; + var accepts = ['application/json']; + var returnType = _Success["default"]; + return this.apiClient.callApi('/auth/user/friends/{userId}', 'DELETE', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); + } + /** + * Unfriend + * Unfriend a user by ID. + * @param {String} userId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/Success} + */ + + }, { + key: "unfriend", + value: function unfriend(userId) { + return this.unfriendWithHttpInfo(userId).then(function (response_and_data) { + return response_and_data.data; + }); + } + }]); + + return FriendsApi; +}(); + +exports["default"] = FriendsApi; \ No newline at end of file diff --git a/dist/api/NotificationsApi.js b/dist/api/NotificationsApi.js new file mode 100644 index 0000000..1255870 --- /dev/null +++ b/dist/api/NotificationsApi.js @@ -0,0 +1,264 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var _ApiClient = _interopRequireDefault(require("../ApiClient")); + +var _Error = _interopRequireDefault(require("../model/Error")); + +var _InlineResponse = _interopRequireDefault(require("../model/InlineResponse401")); + +var _Notification = _interopRequireDefault(require("../model/Notification")); + +var _Success = _interopRequireDefault(require("../model/Success")); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +/** +* Notifications service. +* @module api/NotificationsApi +* @version 1.0.0 +*/ +var NotificationsApi = /*#__PURE__*/function () { + /** + * Constructs a new NotificationsApi. + * @alias module:api/NotificationsApi + * @class + * @param {module:ApiClient} [apiClient] Optional API client implementation to use, + * default to {@link module:ApiClient#instance} if unspecified. + */ + function NotificationsApi(apiClient) { + _classCallCheck(this, NotificationsApi); + + this.apiClient = apiClient || _ApiClient["default"].instance; + } + /** + * Accept Friend Request + * Accept a friend request by notification `frq_` ID. Friend requests can be found using the NotificationsAPI `getNotifications` by filtering of type `friendRequest`. + * @param {String} notificationId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/Success} and HTTP response + */ + + + _createClass(NotificationsApi, [{ + key: "acceptFriendRequestWithHttpInfo", + value: function acceptFriendRequestWithHttpInfo(notificationId) { + var postBody = null; // verify the required parameter 'notificationId' is set + + if (notificationId === undefined || notificationId === null) { + throw new _Error["default"]("Missing the required parameter 'notificationId' when calling acceptFriendRequest"); + } + + var pathParams = { + 'notificationId': notificationId + }; + var queryParams = {}; + var headerParams = {}; + var formParams = {}; + var authNames = ['apiKeyCookie', 'authCookie']; + var contentTypes = []; + var accepts = ['application/json']; + var returnType = _Success["default"]; + return this.apiClient.callApi('/auth/user/notifications/{notificationId}/accept', 'PUT', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); + } + /** + * Accept Friend Request + * Accept a friend request by notification `frq_` ID. Friend requests can be found using the NotificationsAPI `getNotifications` by filtering of type `friendRequest`. + * @param {String} notificationId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/Success} + */ + + }, { + key: "acceptFriendRequest", + value: function acceptFriendRequest(notificationId) { + return this.acceptFriendRequestWithHttpInfo(notificationId).then(function (response_and_data) { + return response_and_data.data; + }); + } + /** + * Clear All Notifications + * Clear **all** notifications. + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/Success} and HTTP response + */ + + }, { + key: "clearNotificationsWithHttpInfo", + value: function clearNotificationsWithHttpInfo() { + var postBody = null; + var pathParams = {}; + var queryParams = {}; + var headerParams = {}; + var formParams = {}; + var authNames = ['apiKeyCookie', 'authCookie']; + var contentTypes = []; + var accepts = ['application/json']; + var returnType = _Success["default"]; + return this.apiClient.callApi('/auth/user/notifications/clear', 'PUT', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); + } + /** + * Clear All Notifications + * Clear **all** notifications. + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/Success} + */ + + }, { + key: "clearNotifications", + value: function clearNotifications() { + return this.clearNotificationsWithHttpInfo().then(function (response_and_data) { + return response_and_data.data; + }); + } + /** + * Delete Notification + * Delete a notification. + * @param {String} notificationId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/Notification} and HTTP response + */ + + }, { + key: "deleteNotificationWithHttpInfo", + value: function deleteNotificationWithHttpInfo(notificationId) { + var postBody = null; // verify the required parameter 'notificationId' is set + + if (notificationId === undefined || notificationId === null) { + throw new _Error["default"]("Missing the required parameter 'notificationId' when calling deleteNotification"); + } + + var pathParams = { + 'notificationId': notificationId + }; + var queryParams = {}; + var headerParams = {}; + var formParams = {}; + var authNames = ['apiKeyCookie', 'authCookie']; + var contentTypes = []; + var accepts = ['application/json']; + var returnType = _Notification["default"]; + return this.apiClient.callApi('/auth/user/notifications/{notificationId}/hide', 'PUT', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); + } + /** + * Delete Notification + * Delete a notification. + * @param {String} notificationId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/Notification} + */ + + }, { + key: "deleteNotification", + value: function deleteNotification(notificationId) { + return this.deleteNotificationWithHttpInfo(notificationId).then(function (response_and_data) { + return response_and_data.data; + }); + } + /** + * List Notifications + * Retrieve all of the current user's notifications. + * @param {Object} opts Optional parameters + * @param {String} opts.type Only send notifications of this type (can use `all` for all). + * @param {Boolean} opts.sent Return notifications sent by the user. Must be false or omitted. + * @param {Boolean} opts.hidden Whether to return hidden or non-hidden notifications. True only allowed on type `friendRequest`. + * @param {String} opts.after Only return notifications sent after this Date. Ignored if type is `friendRequest`. + * @param {Number} opts.n The number of objects to return. (default to 60) + * @param {Number} opts.offset A zero-based offset from the default object sorting from where search results start. + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link Array.} and HTTP response + */ + + }, { + key: "getNotificationsWithHttpInfo", + value: function getNotificationsWithHttpInfo(opts) { + opts = opts || {}; + var postBody = null; + var pathParams = {}; + var queryParams = { + 'type': opts['type'], + 'sent': opts['sent'], + 'hidden': opts['hidden'], + 'after': opts['after'], + 'n': opts['n'], + 'offset': opts['offset'] + }; + var headerParams = {}; + var formParams = {}; + var authNames = ['apiKeyCookie', 'authCookie']; + var contentTypes = []; + var accepts = ['application/json']; + var returnType = [_Notification["default"]]; + return this.apiClient.callApi('/auth/user/notifications', 'GET', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); + } + /** + * List Notifications + * Retrieve all of the current user's notifications. + * @param {Object} opts Optional parameters + * @param {String} opts.type Only send notifications of this type (can use `all` for all). + * @param {Boolean} opts.sent Return notifications sent by the user. Must be false or omitted. + * @param {Boolean} opts.hidden Whether to return hidden or non-hidden notifications. True only allowed on type `friendRequest`. + * @param {String} opts.after Only return notifications sent after this Date. Ignored if type is `friendRequest`. + * @param {Number} opts.n The number of objects to return. (default to 60) + * @param {Number} opts.offset A zero-based offset from the default object sorting from where search results start. + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link Array.} + */ + + }, { + key: "getNotifications", + value: function getNotifications(opts) { + return this.getNotificationsWithHttpInfo(opts).then(function (response_and_data) { + return response_and_data.data; + }); + } + /** + * Mark As Read + * Mark a notification as seen. + * @param {String} notificationId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/Notification} and HTTP response + */ + + }, { + key: "markNotificationAsReadWithHttpInfo", + value: function markNotificationAsReadWithHttpInfo(notificationId) { + var postBody = null; // verify the required parameter 'notificationId' is set + + if (notificationId === undefined || notificationId === null) { + throw new _Error["default"]("Missing the required parameter 'notificationId' when calling markNotificationAsRead"); + } + + var pathParams = { + 'notificationId': notificationId + }; + var queryParams = {}; + var headerParams = {}; + var formParams = {}; + var authNames = ['apiKeyCookie', 'authCookie']; + var contentTypes = []; + var accepts = ['application/json']; + var returnType = _Notification["default"]; + return this.apiClient.callApi('/auth/user/notifications/{notificationId}/see', 'PUT', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); + } + /** + * Mark As Read + * Mark a notification as seen. + * @param {String} notificationId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/Notification} + */ + + }, { + key: "markNotificationAsRead", + value: function markNotificationAsRead(notificationId) { + return this.markNotificationAsReadWithHttpInfo(notificationId).then(function (response_and_data) { + return response_and_data.data; + }); + } + }]); + + return NotificationsApi; +}(); + +exports["default"] = NotificationsApi; \ No newline at end of file diff --git a/dist/api/SystemApi.js b/dist/api/SystemApi.js new file mode 100644 index 0000000..b278693 --- /dev/null +++ b/dist/api/SystemApi.js @@ -0,0 +1,178 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var _ApiClient = _interopRequireDefault(require("../ApiClient")); + +var _Config = _interopRequireDefault(require("../model/Config")); + +var _InlineResponse = _interopRequireDefault(require("../model/InlineResponse2002")); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +/** +* System service. +* @module api/SystemApi +* @version 1.0.0 +*/ +var SystemApi = /*#__PURE__*/function () { + /** + * Constructs a new SystemApi. + * @alias module:api/SystemApi + * @class + * @param {module:ApiClient} [apiClient] Optional API client implementation to use, + * default to {@link module:ApiClient#instance} if unspecified. + */ + function SystemApi(apiClient) { + _classCallCheck(this, SystemApi); + + this.apiClient = apiClient || _ApiClient["default"].instance; + } + /** + * Fetch API Config + * API config contains configuration that the clients needs to work properly. Currently the most important value here is `clientApiKey` which is used for all other API endpoints. + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/Config} and HTTP response + */ + + + _createClass(SystemApi, [{ + key: "getConfigWithHttpInfo", + value: function getConfigWithHttpInfo() { + var postBody = null; + var pathParams = {}; + var queryParams = {}; + var headerParams = {}; + var formParams = {}; + var authNames = []; + var contentTypes = []; + var accepts = ['application/json']; + var returnType = _Config["default"]; + return this.apiClient.callApi('/config', 'GET', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); + } + /** + * Fetch API Config + * API config contains configuration that the clients needs to work properly. Currently the most important value here is `clientApiKey` which is used for all other API endpoints. + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/Config} + */ + + }, { + key: "getConfig", + value: function getConfig() { + return this.getConfigWithHttpInfo().then(function (response_and_data) { + return response_and_data.data; + }); + } + /** + * Current Online Users + * Returns in plain format the number of currently online users. **NOTE:** The response type is not of JSON, but is an integer in plain ASCII format. + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link Number} and HTTP response + */ + + }, { + key: "getCurrentOnlineUsersWithHttpInfo", + value: function getCurrentOnlineUsersWithHttpInfo() { + var postBody = null; + var pathParams = {}; + var queryParams = {}; + var headerParams = {}; + var formParams = {}; + var authNames = []; + var contentTypes = []; + var accepts = ['text/plain']; + var returnType = 'Number'; + return this.apiClient.callApi('/visits', 'GET', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); + } + /** + * Current Online Users + * Returns in plain format the number of currently online users. **NOTE:** The response type is not of JSON, but is an integer in plain ASCII format. + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link Number} + */ + + }, { + key: "getCurrentOnlineUsers", + value: function getCurrentOnlineUsers() { + return this.getCurrentOnlineUsersWithHttpInfo().then(function (response_and_data) { + return response_and_data.data; + }); + } + /** + * Check API Health + * Gets the overall health status, the server name, and the current build version tag of the API. + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/InlineResponse2002} and HTTP response + */ + + }, { + key: "getHealthWithHttpInfo", + value: function getHealthWithHttpInfo() { + var postBody = null; + var pathParams = {}; + var queryParams = {}; + var headerParams = {}; + var formParams = {}; + var authNames = []; + var contentTypes = []; + var accepts = ['application/json']; + var returnType = _InlineResponse["default"]; + return this.apiClient.callApi('/health', 'GET', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); + } + /** + * Check API Health + * Gets the overall health status, the server name, and the current build version tag of the API. + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/InlineResponse2002} + */ + + }, { + key: "getHealth", + value: function getHealth() { + return this.getHealthWithHttpInfo().then(function (response_and_data) { + return response_and_data.data; + }); + } + /** + * Current System Time + * Returns in plain format the current time of the API server. **NOTE:** The response type is not of JSON, but is a string in plain ASCII format. + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link Date} and HTTP response + */ + + }, { + key: "getSystemTimeWithHttpInfo", + value: function getSystemTimeWithHttpInfo() { + var postBody = null; + var pathParams = {}; + var queryParams = {}; + var headerParams = {}; + var formParams = {}; + var authNames = []; + var contentTypes = []; + var accepts = ['text/plain']; + var returnType = 'Date'; + return this.apiClient.callApi('/time', 'GET', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); + } + /** + * Current System Time + * Returns in plain format the current time of the API server. **NOTE:** The response type is not of JSON, but is a string in plain ASCII format. + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link Date} + */ + + }, { + key: "getSystemTime", + value: function getSystemTime() { + return this.getSystemTimeWithHttpInfo().then(function (response_and_data) { + return response_and_data.data; + }); + } + }]); + + return SystemApi; +}(); + +exports["default"] = SystemApi; \ No newline at end of file diff --git a/dist/api/UsersApi.js b/dist/api/UsersApi.js new file mode 100644 index 0000000..5f176a9 --- /dev/null +++ b/dist/api/UsersApi.js @@ -0,0 +1,286 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var _ApiClient = _interopRequireDefault(require("../ApiClient")); + +var _CurrentUser = _interopRequireDefault(require("../model/CurrentUser")); + +var _InlineObject = _interopRequireDefault(require("../model/InlineObject2")); + +var _InlineResponse = _interopRequireDefault(require("../model/InlineResponse401")); + +var _LimitedUser = _interopRequireDefault(require("../model/LimitedUser")); + +var _User = _interopRequireDefault(require("../model/User")); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +/** +* Users service. +* @module api/UsersApi +* @version 1.0.0 +*/ +var UsersApi = /*#__PURE__*/function () { + /** + * Constructs a new UsersApi. + * @alias module:api/UsersApi + * @class + * @param {module:ApiClient} [apiClient] Optional API client implementation to use, + * default to {@link module:ApiClient#instance} if unspecified. + */ + function UsersApi(apiClient) { + _classCallCheck(this, UsersApi); + + this.apiClient = apiClient || _ApiClient["default"].instance; + } + /** + * Get User by ID + * Get public user information about a specific user using their ID. + * @param {String} userId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/User} and HTTP response + */ + + + _createClass(UsersApi, [{ + key: "getUserWithHttpInfo", + value: function getUserWithHttpInfo(userId) { + var postBody = null; // verify the required parameter 'userId' is set + + if (userId === undefined || userId === null) { + throw new Error("Missing the required parameter 'userId' when calling getUser"); + } + + var pathParams = { + 'userId': userId + }; + var queryParams = {}; + var headerParams = {}; + var formParams = {}; + var authNames = ['apiKeyCookie', 'authCookie']; + var contentTypes = []; + var accepts = ['application/json']; + var returnType = _User["default"]; + return this.apiClient.callApi('/users/{userId}', 'GET', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); + } + /** + * Get User by ID + * Get public user information about a specific user using their ID. + * @param {String} userId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/User} + */ + + }, { + key: "getUser", + value: function getUser(userId) { + return this.getUserWithHttpInfo(userId).then(function (response_and_data) { + return response_and_data.data; + }); + } + /** + * Get User by Username + * Get public user information about a specific user using their name. + * @param {String} username + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/User} and HTTP response + */ + + }, { + key: "getUserByNameWithHttpInfo", + value: function getUserByNameWithHttpInfo(username) { + var postBody = null; // verify the required parameter 'username' is set + + if (username === undefined || username === null) { + throw new Error("Missing the required parameter 'username' when calling getUserByName"); + } + + var pathParams = { + 'username': username + }; + var queryParams = {}; + var headerParams = {}; + var formParams = {}; + var authNames = ['apiKeyCookie', 'authCookie']; + var contentTypes = []; + var accepts = ['application/json']; + var returnType = _User["default"]; + return this.apiClient.callApi('/users/{username}/name', 'GET', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); + } + /** + * Get User by Username + * Get public user information about a specific user using their name. + * @param {String} username + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/User} + */ + + }, { + key: "getUserByName", + value: function getUserByName(username) { + return this.getUserByNameWithHttpInfo(username).then(function (response_and_data) { + return response_and_data.data; + }); + } + /** + * Search Active Users + * Search and list any Active users by text query. **Has been locked down and now always respond with \"Invalid Admin Credentials\".** + * @param {String} search Username to search for + * @param {Object} opts Optional parameters + * @param {String} opts.developerType Active user by developer type, none for normal users and internal for moderators + * @param {Number} opts.offset A zero-based offset from the default object sorting from where search results start. + * @param {Number} opts.n The number of objects to return. (default to 60) + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link Array.} and HTTP response + */ + + }, { + key: "searchActiveUsersWithHttpInfo", + value: function searchActiveUsersWithHttpInfo(search, opts) { + opts = opts || {}; + var postBody = null; // verify the required parameter 'search' is set + + if (search === undefined || search === null) { + throw new Error("Missing the required parameter 'search' when calling searchActiveUsers"); + } + + var pathParams = {}; + var queryParams = { + 'search': search, + 'developerType': opts['developerType'], + 'offset': opts['offset'], + 'n': opts['n'] + }; + var headerParams = {}; + var formParams = {}; + var authNames = ['apiKeyCookie', 'authCookie']; + var contentTypes = []; + var accepts = ['application/json']; + var returnType = [_LimitedUser["default"]]; + return this.apiClient.callApi('/users/active', 'GET', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); + } + /** + * Search Active Users + * Search and list any Active users by text query. **Has been locked down and now always respond with \"Invalid Admin Credentials\".** + * @param {String} search Username to search for + * @param {Object} opts Optional parameters + * @param {String} opts.developerType Active user by developer type, none for normal users and internal for moderators + * @param {Number} opts.offset A zero-based offset from the default object sorting from where search results start. + * @param {Number} opts.n The number of objects to return. (default to 60) + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link Array.} + */ + + }, { + key: "searchActiveUsers", + value: function searchActiveUsers(search, opts) { + return this.searchActiveUsersWithHttpInfo(search, opts).then(function (response_and_data) { + return response_and_data.data; + }); + } + /** + * Search All Users + * Search and list any users by text query + * @param {Object} opts Optional parameters + * @param {String} opts.search Searches by `displayName`. Will return empty array if search query is empty or missing. + * @param {String} opts.developerType Active user by developer type, none for normal users and internal for moderators + * @param {Number} opts.n The number of objects to return. (default to 60) + * @param {Number} opts.offset A zero-based offset from the default object sorting from where search results start. + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link Array.} and HTTP response + */ + + }, { + key: "searchUsersWithHttpInfo", + value: function searchUsersWithHttpInfo(opts) { + opts = opts || {}; + var postBody = null; + var pathParams = {}; + var queryParams = { + 'search': opts['search'], + 'developerType': opts['developerType'], + 'n': opts['n'], + 'offset': opts['offset'] + }; + var headerParams = {}; + var formParams = {}; + var authNames = ['apiKeyCookie', 'authCookie']; + var contentTypes = []; + var accepts = ['application/json']; + var returnType = [_LimitedUser["default"]]; + return this.apiClient.callApi('/users', 'GET', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); + } + /** + * Search All Users + * Search and list any users by text query + * @param {Object} opts Optional parameters + * @param {String} opts.search Searches by `displayName`. Will return empty array if search query is empty or missing. + * @param {String} opts.developerType Active user by developer type, none for normal users and internal for moderators + * @param {Number} opts.n The number of objects to return. (default to 60) + * @param {Number} opts.offset A zero-based offset from the default object sorting from where search results start. + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link Array.} + */ + + }, { + key: "searchUsers", + value: function searchUsers(opts) { + return this.searchUsersWithHttpInfo(opts).then(function (response_and_data) { + return response_and_data.data; + }); + } + /** + * Update User Info + * Update a users information such as the email and birthday. + * @param {String} userId + * @param {Object} opts Optional parameters + * @param {module:model/InlineObject2} opts.inlineObject2 + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/CurrentUser} and HTTP response + */ + + }, { + key: "updateUserWithHttpInfo", + value: function updateUserWithHttpInfo(userId, opts) { + opts = opts || {}; + var postBody = opts['inlineObject2']; // verify the required parameter 'userId' is set + + if (userId === undefined || userId === null) { + throw new Error("Missing the required parameter 'userId' when calling updateUser"); + } + + var pathParams = { + 'userId': userId + }; + var queryParams = {}; + var headerParams = {}; + var formParams = {}; + var authNames = ['apiKeyCookie', 'authCookie']; + var contentTypes = ['application/json']; + var accepts = ['application/json']; + var returnType = _CurrentUser["default"]; + return this.apiClient.callApi('/users/{userId}', 'PUT', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); + } + /** + * Update User Info + * Update a users information such as the email and birthday. + * @param {String} userId + * @param {Object} opts Optional parameters + * @param {module:model/InlineObject2} opts.inlineObject2 + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/CurrentUser} + */ + + }, { + key: "updateUser", + value: function updateUser(userId, opts) { + return this.updateUserWithHttpInfo(userId, opts).then(function (response_and_data) { + return response_and_data.data; + }); + } + }]); + + return UsersApi; +}(); + +exports["default"] = UsersApi; \ No newline at end of file diff --git a/dist/api/WorldsApi.js b/dist/api/WorldsApi.js new file mode 100644 index 0000000..7b01921 --- /dev/null +++ b/dist/api/WorldsApi.js @@ -0,0 +1,131 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var _ApiClient = _interopRequireDefault(require("../ApiClient")); + +var _InlineResponse = _interopRequireDefault(require("../model/InlineResponse401")); + +var _LimitedWorld = _interopRequireDefault(require("../model/LimitedWorld")); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +/** +* Worlds service. +* @module api/WorldsApi +* @version 1.0.0 +*/ +var WorldsApi = /*#__PURE__*/function () { + /** + * Constructs a new WorldsApi. + * @alias module:api/WorldsApi + * @class + * @param {module:ApiClient} [apiClient] Optional API client implementation to use, + * default to {@link module:ApiClient#instance} if unspecified. + */ + function WorldsApi(apiClient) { + _classCallCheck(this, WorldsApi); + + this.apiClient = apiClient || _ApiClient["default"].instance; + } + /** + * Search all worlds + * Search and list any worlds by text query + * @param {Object} opts Optional parameters + * @param {Boolean} opts.featured is the world featured + * @param {module:model/String} opts.sort (default to 'order') + * @param {String} opts.user Set to `me` for searching own worlds + * @param {String} opts.userId Filter by creator id, use `me` for only worlds owned by current user + * @param {Number} opts.n The number of objects to return. (default to 60) + * @param {module:model/String} opts.order (default to 'descending') + * @param {Number} opts.offset A zero-based offset from the default object sorting from where search results start. + * @param {String} opts.search Searches by `name`. Will return empty array if search query is empty or missing. + * @param {Array.} opts.tag Filter by Tag + * @param {Array.} opts.notag Tags to exclude + * @param {module:model/String} opts.releaseStatus (default to 'hidden') + * @param {String} opts.maxUnityVersion Current unity version the game is using + * @param {String} opts.minUnityVersion The min unity version the world support + * @param {String} opts.maxAssetVersion Current asset version the game is using + * @param {String} opts.minAssetVersion The min asset version the world support + * @param {String} opts.platform The platform the world supports (usually standalonewindows) + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link Array.} and HTTP response + */ + + + _createClass(WorldsApi, [{ + key: "searchWorldsWithHttpInfo", + value: function searchWorldsWithHttpInfo(opts) { + opts = opts || {}; + var postBody = null; + var pathParams = {}; + var queryParams = { + 'featured': opts['featured'], + 'sort': opts['sort'], + 'user': opts['user'], + 'userId': opts['userId'], + 'n': opts['n'], + 'order': opts['order'], + 'offset': opts['offset'], + 'search': opts['search'], + 'tag': this.apiClient.buildCollectionParam(opts['tag'], 'multi'), + 'notag': this.apiClient.buildCollectionParam(opts['notag'], 'multi'), + 'releaseStatus': opts['releaseStatus'], + 'maxUnityVersion': opts['maxUnityVersion'], + 'minUnityVersion': opts['minUnityVersion'], + 'maxAssetVersion': opts['maxAssetVersion'], + 'minAssetVersion': opts['minAssetVersion'], + 'platform': opts['platform'] + }; + var headerParams = {}; + var formParams = {}; + var authNames = ['apiKeyCookie', 'authCookie']; + var contentTypes = []; + var accepts = ['application/json']; + var returnType = [_LimitedWorld["default"]]; + return this.apiClient.callApi('/worlds', 'GET', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); + } + /** + * Search all worlds + * Search and list any worlds by text query + * @param {Object} opts Optional parameters + * @param {Boolean} opts.featured is the world featured + * @param {module:model/String} opts.sort (default to 'order') + * @param {String} opts.user Set to `me` for searching own worlds + * @param {String} opts.userId Filter by creator id, use `me` for only worlds owned by current user + * @param {Number} opts.n The number of objects to return. (default to 60) + * @param {module:model/String} opts.order (default to 'descending') + * @param {Number} opts.offset A zero-based offset from the default object sorting from where search results start. + * @param {String} opts.search Searches by `name`. Will return empty array if search query is empty or missing. + * @param {Array.} opts.tag Filter by Tag + * @param {Array.} opts.notag Tags to exclude + * @param {module:model/String} opts.releaseStatus (default to 'hidden') + * @param {String} opts.maxUnityVersion Current unity version the game is using + * @param {String} opts.minUnityVersion The min unity version the world support + * @param {String} opts.maxAssetVersion Current asset version the game is using + * @param {String} opts.minAssetVersion The min asset version the world support + * @param {String} opts.platform The platform the world supports (usually standalonewindows) + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link Array.} + */ + + }, { + key: "searchWorlds", + value: function searchWorlds(opts) { + return this.searchWorldsWithHttpInfo(opts).then(function (response_and_data) { + return response_and_data.data; + }); + } + }]); + + return WorldsApi; +}(); + +exports["default"] = WorldsApi; \ No newline at end of file diff --git a/dist/index.js b/dist/index.js new file mode 100644 index 0000000..8b3c3e2 --- /dev/null +++ b/dist/index.js @@ -0,0 +1,359 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +Object.defineProperty(exports, "ApiClient", { + enumerable: true, + get: function get() { + return _ApiClient["default"]; + } +}); +Object.defineProperty(exports, "Config", { + enumerable: true, + get: function get() { + return _Config["default"]; + } +}); +Object.defineProperty(exports, "ConfigAnnouncements", { + enumerable: true, + get: function get() { + return _ConfigAnnouncements["default"]; + } +}); +Object.defineProperty(exports, "ConfigDownloadUrls", { + enumerable: true, + get: function get() { + return _ConfigDownloadUrls["default"]; + } +}); +Object.defineProperty(exports, "ConfigDynamicWorldRows", { + enumerable: true, + get: function get() { + return _ConfigDynamicWorldRows["default"]; + } +}); +Object.defineProperty(exports, "ConfigEvents", { + enumerable: true, + get: function get() { + return _ConfigEvents["default"]; + } +}); +Object.defineProperty(exports, "CurrentUser", { + enumerable: true, + get: function get() { + return _CurrentUser["default"]; + } +}); +Object.defineProperty(exports, "DeploymentGroup", { + enumerable: true, + get: function get() { + return _DeploymentGroup["default"]; + } +}); +Object.defineProperty(exports, "DeveloperType", { + enumerable: true, + get: function get() { + return _DeveloperType["default"]; + } +}); +Object.defineProperty(exports, "Error", { + enumerable: true, + get: function get() { + return _Error["default"]; + } +}); +Object.defineProperty(exports, "File", { + enumerable: true, + get: function get() { + return _File["default"]; + } +}); +Object.defineProperty(exports, "FileData", { + enumerable: true, + get: function get() { + return _FileData["default"]; + } +}); +Object.defineProperty(exports, "FileStatus", { + enumerable: true, + get: function get() { + return _FileStatus["default"]; + } +}); +Object.defineProperty(exports, "FileVersion", { + enumerable: true, + get: function get() { + return _FileVersion["default"]; + } +}); +Object.defineProperty(exports, "InlineObject", { + enumerable: true, + get: function get() { + return _InlineObject["default"]; + } +}); +Object.defineProperty(exports, "InlineObject1", { + enumerable: true, + get: function get() { + return _InlineObject2["default"]; + } +}); +Object.defineProperty(exports, "InlineObject2", { + enumerable: true, + get: function get() { + return _InlineObject3["default"]; + } +}); +Object.defineProperty(exports, "InlineObject3", { + enumerable: true, + get: function get() { + return _InlineObject4["default"]; + } +}); +Object.defineProperty(exports, "InlineObject4", { + enumerable: true, + get: function get() { + return _InlineObject5["default"]; + } +}); +Object.defineProperty(exports, "InlineResponse200", { + enumerable: true, + get: function get() { + return _InlineResponse["default"]; + } +}); +Object.defineProperty(exports, "InlineResponse2001", { + enumerable: true, + get: function get() { + return _InlineResponse2["default"]; + } +}); +Object.defineProperty(exports, "InlineResponse2002", { + enumerable: true, + get: function get() { + return _InlineResponse3["default"]; + } +}); +Object.defineProperty(exports, "InlineResponse2003", { + enumerable: true, + get: function get() { + return _InlineResponse4["default"]; + } +}); +Object.defineProperty(exports, "InlineResponse2004", { + enumerable: true, + get: function get() { + return _InlineResponse5["default"]; + } +}); +Object.defineProperty(exports, "InlineResponse2005", { + enumerable: true, + get: function get() { + return _InlineResponse6["default"]; + } +}); +Object.defineProperty(exports, "InlineResponse401", { + enumerable: true, + get: function get() { + return _InlineResponse7["default"]; + } +}); +Object.defineProperty(exports, "LimitedUser", { + enumerable: true, + get: function get() { + return _LimitedUser["default"]; + } +}); +Object.defineProperty(exports, "LimitedWorld", { + enumerable: true, + get: function get() { + return _LimitedWorld["default"]; + } +}); +Object.defineProperty(exports, "MIMEType", { + enumerable: true, + get: function get() { + return _MIMEType["default"]; + } +}); +Object.defineProperty(exports, "Notification", { + enumerable: true, + get: function get() { + return _Notification["default"]; + } +}); +Object.defineProperty(exports, "NotificationType", { + enumerable: true, + get: function get() { + return _NotificationType["default"]; + } +}); +Object.defineProperty(exports, "ReleaseStatus", { + enumerable: true, + get: function get() { + return _ReleaseStatus["default"]; + } +}); +Object.defineProperty(exports, "Response", { + enumerable: true, + get: function get() { + return _Response["default"]; + } +}); +Object.defineProperty(exports, "Success", { + enumerable: true, + get: function get() { + return _Success["default"]; + } +}); +Object.defineProperty(exports, "User", { + enumerable: true, + get: function get() { + return _User["default"]; + } +}); +Object.defineProperty(exports, "UserState", { + enumerable: true, + get: function get() { + return _UserState["default"]; + } +}); +Object.defineProperty(exports, "UserStatus", { + enumerable: true, + get: function get() { + return _UserStatus["default"]; + } +}); +Object.defineProperty(exports, "AuthenticationApi", { + enumerable: true, + get: function get() { + return _AuthenticationApi["default"]; + } +}); +Object.defineProperty(exports, "FilesApi", { + enumerable: true, + get: function get() { + return _FilesApi["default"]; + } +}); +Object.defineProperty(exports, "FriendsApi", { + enumerable: true, + get: function get() { + return _FriendsApi["default"]; + } +}); +Object.defineProperty(exports, "NotificationsApi", { + enumerable: true, + get: function get() { + return _NotificationsApi["default"]; + } +}); +Object.defineProperty(exports, "SystemApi", { + enumerable: true, + get: function get() { + return _SystemApi["default"]; + } +}); +Object.defineProperty(exports, "UsersApi", { + enumerable: true, + get: function get() { + return _UsersApi["default"]; + } +}); +Object.defineProperty(exports, "WorldsApi", { + enumerable: true, + get: function get() { + return _WorldsApi["default"]; + } +}); + +var _ApiClient = _interopRequireDefault(require("./ApiClient")); + +var _Config = _interopRequireDefault(require("./model/Config")); + +var _ConfigAnnouncements = _interopRequireDefault(require("./model/ConfigAnnouncements")); + +var _ConfigDownloadUrls = _interopRequireDefault(require("./model/ConfigDownloadUrls")); + +var _ConfigDynamicWorldRows = _interopRequireDefault(require("./model/ConfigDynamicWorldRows")); + +var _ConfigEvents = _interopRequireDefault(require("./model/ConfigEvents")); + +var _CurrentUser = _interopRequireDefault(require("./model/CurrentUser")); + +var _DeploymentGroup = _interopRequireDefault(require("./model/DeploymentGroup")); + +var _DeveloperType = _interopRequireDefault(require("./model/DeveloperType")); + +var _Error = _interopRequireDefault(require("./model/Error")); + +var _File = _interopRequireDefault(require("./model/File")); + +var _FileData = _interopRequireDefault(require("./model/FileData")); + +var _FileStatus = _interopRequireDefault(require("./model/FileStatus")); + +var _FileVersion = _interopRequireDefault(require("./model/FileVersion")); + +var _InlineObject = _interopRequireDefault(require("./model/InlineObject")); + +var _InlineObject2 = _interopRequireDefault(require("./model/InlineObject1")); + +var _InlineObject3 = _interopRequireDefault(require("./model/InlineObject2")); + +var _InlineObject4 = _interopRequireDefault(require("./model/InlineObject3")); + +var _InlineObject5 = _interopRequireDefault(require("./model/InlineObject4")); + +var _InlineResponse = _interopRequireDefault(require("./model/InlineResponse200")); + +var _InlineResponse2 = _interopRequireDefault(require("./model/InlineResponse2001")); + +var _InlineResponse3 = _interopRequireDefault(require("./model/InlineResponse2002")); + +var _InlineResponse4 = _interopRequireDefault(require("./model/InlineResponse2003")); + +var _InlineResponse5 = _interopRequireDefault(require("./model/InlineResponse2004")); + +var _InlineResponse6 = _interopRequireDefault(require("./model/InlineResponse2005")); + +var _InlineResponse7 = _interopRequireDefault(require("./model/InlineResponse401")); + +var _LimitedUser = _interopRequireDefault(require("./model/LimitedUser")); + +var _LimitedWorld = _interopRequireDefault(require("./model/LimitedWorld")); + +var _MIMEType = _interopRequireDefault(require("./model/MIMEType")); + +var _Notification = _interopRequireDefault(require("./model/Notification")); + +var _NotificationType = _interopRequireDefault(require("./model/NotificationType")); + +var _ReleaseStatus = _interopRequireDefault(require("./model/ReleaseStatus")); + +var _Response = _interopRequireDefault(require("./model/Response")); + +var _Success = _interopRequireDefault(require("./model/Success")); + +var _User = _interopRequireDefault(require("./model/User")); + +var _UserState = _interopRequireDefault(require("./model/UserState")); + +var _UserStatus = _interopRequireDefault(require("./model/UserStatus")); + +var _AuthenticationApi = _interopRequireDefault(require("./api/AuthenticationApi")); + +var _FilesApi = _interopRequireDefault(require("./api/FilesApi")); + +var _FriendsApi = _interopRequireDefault(require("./api/FriendsApi")); + +var _NotificationsApi = _interopRequireDefault(require("./api/NotificationsApi")); + +var _SystemApi = _interopRequireDefault(require("./api/SystemApi")); + +var _UsersApi = _interopRequireDefault(require("./api/UsersApi")); + +var _WorldsApi = _interopRequireDefault(require("./api/WorldsApi")); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } \ No newline at end of file diff --git a/dist/model/Config.js b/dist/model/Config.js new file mode 100644 index 0000000..1f2389b --- /dev/null +++ b/dist/model/Config.js @@ -0,0 +1,973 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var _ApiClient = _interopRequireDefault(require("../ApiClient")); + +var _ConfigAnnouncements = _interopRequireDefault(require("./ConfigAnnouncements")); + +var _ConfigDownloadUrls = _interopRequireDefault(require("./ConfigDownloadUrls")); + +var _ConfigDynamicWorldRows = _interopRequireDefault(require("./ConfigDynamicWorldRows")); + +var _ConfigEvents = _interopRequireDefault(require("./ConfigEvents")); + +var _DeploymentGroup = _interopRequireDefault(require("./DeploymentGroup")); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +/** + * The Config model module. + * @module model/Config + * @version 1.0.0 + */ +var Config = /*#__PURE__*/function () { + /** + * Constructs a new Config. + * @alias module:model/Config + * @param address {String} VRChat's office address + * @param announcements {Array.} PSA, Public Announcements + * @param apiKey {String} apiKey to be used for all other requests + * @param appName {String} Game name + * @param buildVersionTag {String} Build tag of the API server + * @param clientApiKey {String} apiKey to be used for all other requests + * @param contactEmail {String} VRChat's contact email + * @param copyrightEmail {String} VRChat's copyright-issues-related email + * @param currentTOSVersion {Number} Current version number of the Terms of Service + * @param defaultAvatar {String} + * @param deploymentGroup {module:model/DeploymentGroup} + * @param devAppVersionStandalone {String} Version number for game development build + * @param devDownloadLinkWindows {String} Developer Download link + * @param devSdkUrl {String} Link to download the development SDK, use downloadUrls instead + * @param devSdkVersion {String} Version of the development SDK + * @param devServerVersionStandalone {String} Version number for server development build + * @param disableAvatarCopying {Boolean} Toggles if copying avatars should be disabled + * @param disableAvatarGating {Boolean} Toggles if avatar gating should be disabled. Avatar gating restricts uploading of avatars to people with the `system_avatar_access` Tag or `admin_avatar_access` Tag + * @param disableCommunityLabs {Boolean} Toggles if the Community Labs should be disabled + * @param disableCommunityLabsPromotion {Boolean} Toggles if promotion out of Community Labs should be disabled + * @param disableEventStream {Boolean} Toggles if Analytics should be disabled (this sreportedly not used in the Client) + * @param disableFeedbackGating {Boolean} Toggles if feedback gating should be disabled. Feedback gating restricts submission of feedback (reporting a World or User) to people with the `system_feedback_access` Tag. + * @param disableRegistration {Boolean} Toggles if new user account registration should be disabled + * @param disableSteamNetworking {Boolean} Toggles if Steam Networking should be disabled. VRChat these days uses Photon Unity Networking (PUN) instead. + * @param disableTwoFactorAuth {Boolean} Toggles if 2FA should be disabled. + * @param disableUdon {Boolean} Toggles if Udon should be universally disabled in-game. + * @param disableUpgradeAccount {Boolean} Toggles if account upgrading \"linking with Steam/Oculus\" should be disabled. + * @param downloadLinkWindows {String} Download link for game on the Oculus Rift website. + * @param downloadUrls {module:model/ConfigDownloadUrls} + * @param dynamicWorldRows {Array.} Array of DynamicWorldRow objects, used by the game to display the list of world rows + * @param events {module:model/ConfigEvents} + * @param gearDemoRoomId {String} Unknown + * @param homepageRedirectTarget {String} Redirect target if you try to open the base API domain in your browser + * @param homeWorldId {String} + * @param hubWorldId {String} + * @param jobsEmail {String} VRChat's job application email + * @param messageOfTheDay {String} MOTD + * @param moderationEmail {String} VRChat's moderation related email + * @param moderationQueryPeriod {Number} Unknown + * @param notAllowedToSelectAvatarInPrivateWorldMessage {String} Used in-game to notify a user they aren't allowed to select avatars in private worlds + * @param plugin {String} Extra [plugin](https://doc.photonengine.com/en-us/server/current/plugins/manual) to run in each instance + * @param releaseAppVersionStandalone {String} Version number for game release build + * @param releaseSdkUrl {String} Link to download the release SDK + * @param releaseSdkVersion {String} Version of the release SDK + * @param releaseServerVersionStandalone {String} Version number for server release build + * @param sdkDeveloperFaqUrl {String} Link to the developer FAQ + * @param sdkDiscordUrl {String} Link to the official VRChat Discord + * @param sdkNotAllowedToPublishMessage {String} Used in the SDK to notify a user they aren't allowed to upload avatars/worlds yet + * @param sdkUnityVersion {String} Unity version supported by the SDK + * @param serverName {String} Server name of the API server currently responding + * @param supportEmail {String} VRChat's support email + * @param timeOutWorldId {String} + * @param tutorialWorldId {String} + * @param updateRateMsMaximum {Number} Unknown + * @param updateRateMsMinimum {Number} Unknown + * @param updateRateMsNormal {Number} Unknown + * @param updateRateMsUdonManual {Number} Unknown + * @param uploadAnalysisPercent {Number} Unknown + * @param urlList {Array.} List of allowed URLs that bypass the \"Allow untrusted URL's\" setting in-game + * @param useReliableUdpForVoice {Boolean} Unknown + * @param userUpdatePeriod {Number} Unknown + * @param userVerificationDelay {Number} Unknown + * @param userVerificationRetry {Number} Unknown + * @param userVerificationTimeout {Number} Unknown + * @param viveWindowsUrl {String} Download link for game on the Steam website. + * @param whiteListedAssetUrls {Array.} List of allowed URLs that are allowed to host avatar assets + * @param worldUpdatePeriod {Number} Unknown + * @param youtubedlHash {String} Currently used youtube-dl.exe hash in SHA-256-delimited format + * @param youtubedlVersion {String} Currently used youtube-dl.exe version + */ + function Config(address, announcements, apiKey, appName, buildVersionTag, clientApiKey, contactEmail, copyrightEmail, currentTOSVersion, defaultAvatar, deploymentGroup, devAppVersionStandalone, devDownloadLinkWindows, devSdkUrl, devSdkVersion, devServerVersionStandalone, disableAvatarCopying, disableAvatarGating, disableCommunityLabs, disableCommunityLabsPromotion, disableEventStream, disableFeedbackGating, disableRegistration, disableSteamNetworking, disableTwoFactorAuth, disableUdon, disableUpgradeAccount, downloadLinkWindows, downloadUrls, dynamicWorldRows, events, gearDemoRoomId, homepageRedirectTarget, homeWorldId, hubWorldId, jobsEmail, messageOfTheDay, moderationEmail, moderationQueryPeriod, notAllowedToSelectAvatarInPrivateWorldMessage, plugin, releaseAppVersionStandalone, releaseSdkUrl, releaseSdkVersion, releaseServerVersionStandalone, sdkDeveloperFaqUrl, sdkDiscordUrl, sdkNotAllowedToPublishMessage, sdkUnityVersion, serverName, supportEmail, timeOutWorldId, tutorialWorldId, updateRateMsMaximum, updateRateMsMinimum, updateRateMsNormal, updateRateMsUdonManual, uploadAnalysisPercent, urlList, useReliableUdpForVoice, userUpdatePeriod, userVerificationDelay, userVerificationRetry, userVerificationTimeout, viveWindowsUrl, whiteListedAssetUrls, worldUpdatePeriod, youtubedlHash, youtubedlVersion) { + _classCallCheck(this, Config); + + Config.initialize(this, address, announcements, apiKey, appName, buildVersionTag, clientApiKey, contactEmail, copyrightEmail, currentTOSVersion, defaultAvatar, deploymentGroup, devAppVersionStandalone, devDownloadLinkWindows, devSdkUrl, devSdkVersion, devServerVersionStandalone, disableAvatarCopying, disableAvatarGating, disableCommunityLabs, disableCommunityLabsPromotion, disableEventStream, disableFeedbackGating, disableRegistration, disableSteamNetworking, disableTwoFactorAuth, disableUdon, disableUpgradeAccount, downloadLinkWindows, downloadUrls, dynamicWorldRows, events, gearDemoRoomId, homepageRedirectTarget, homeWorldId, hubWorldId, jobsEmail, messageOfTheDay, moderationEmail, moderationQueryPeriod, notAllowedToSelectAvatarInPrivateWorldMessage, plugin, releaseAppVersionStandalone, releaseSdkUrl, releaseSdkVersion, releaseServerVersionStandalone, sdkDeveloperFaqUrl, sdkDiscordUrl, sdkNotAllowedToPublishMessage, sdkUnityVersion, serverName, supportEmail, timeOutWorldId, tutorialWorldId, updateRateMsMaximum, updateRateMsMinimum, updateRateMsNormal, updateRateMsUdonManual, uploadAnalysisPercent, urlList, useReliableUdpForVoice, userUpdatePeriod, userVerificationDelay, userVerificationRetry, userVerificationTimeout, viveWindowsUrl, whiteListedAssetUrls, worldUpdatePeriod, youtubedlHash, youtubedlVersion); + } + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + + + _createClass(Config, null, [{ + key: "initialize", + value: function initialize(obj, address, announcements, apiKey, appName, buildVersionTag, clientApiKey, contactEmail, copyrightEmail, currentTOSVersion, defaultAvatar, deploymentGroup, devAppVersionStandalone, devDownloadLinkWindows, devSdkUrl, devSdkVersion, devServerVersionStandalone, disableAvatarCopying, disableAvatarGating, disableCommunityLabs, disableCommunityLabsPromotion, disableEventStream, disableFeedbackGating, disableRegistration, disableSteamNetworking, disableTwoFactorAuth, disableUdon, disableUpgradeAccount, downloadLinkWindows, downloadUrls, dynamicWorldRows, events, gearDemoRoomId, homepageRedirectTarget, homeWorldId, hubWorldId, jobsEmail, messageOfTheDay, moderationEmail, moderationQueryPeriod, notAllowedToSelectAvatarInPrivateWorldMessage, plugin, releaseAppVersionStandalone, releaseSdkUrl, releaseSdkVersion, releaseServerVersionStandalone, sdkDeveloperFaqUrl, sdkDiscordUrl, sdkNotAllowedToPublishMessage, sdkUnityVersion, serverName, supportEmail, timeOutWorldId, tutorialWorldId, updateRateMsMaximum, updateRateMsMinimum, updateRateMsNormal, updateRateMsUdonManual, uploadAnalysisPercent, urlList, useReliableUdpForVoice, userUpdatePeriod, userVerificationDelay, userVerificationRetry, userVerificationTimeout, viveWindowsUrl, whiteListedAssetUrls, worldUpdatePeriod, youtubedlHash, youtubedlVersion) { + obj['address'] = address; + obj['announcements'] = announcements; + obj['apiKey'] = apiKey; + obj['appName'] = appName || 'VrChat'; + obj['buildVersionTag'] = buildVersionTag; + obj['clientApiKey'] = clientApiKey; + obj['contactEmail'] = contactEmail; + obj['copyrightEmail'] = copyrightEmail; + obj['currentTOSVersion'] = currentTOSVersion; + obj['defaultAvatar'] = defaultAvatar; + obj['deploymentGroup'] = deploymentGroup; + obj['devAppVersionStandalone'] = devAppVersionStandalone; + obj['devDownloadLinkWindows'] = devDownloadLinkWindows; + obj['devSdkUrl'] = devSdkUrl; + obj['devSdkVersion'] = devSdkVersion; + obj['devServerVersionStandalone'] = devServerVersionStandalone; + obj['disableAvatarCopying'] = disableAvatarCopying || false; + obj['disableAvatarGating'] = disableAvatarGating || false; + obj['disableCommunityLabs'] = disableCommunityLabs || false; + obj['disableCommunityLabsPromotion'] = disableCommunityLabsPromotion || false; + obj['disableEventStream'] = disableEventStream || false; + obj['disableFeedbackGating'] = disableFeedbackGating || false; + obj['disableRegistration'] = disableRegistration || false; + obj['disableSteamNetworking'] = disableSteamNetworking || true; + obj['disableTwoFactorAuth'] = disableTwoFactorAuth || false; + obj['disableUdon'] = disableUdon || false; + obj['disableUpgradeAccount'] = disableUpgradeAccount || false; + obj['downloadLinkWindows'] = downloadLinkWindows; + obj['downloadUrls'] = downloadUrls; + obj['dynamicWorldRows'] = dynamicWorldRows; + obj['events'] = events; + obj['gearDemoRoomId'] = gearDemoRoomId; + obj['homepageRedirectTarget'] = homepageRedirectTarget || 'https://hello.vrchat.com'; + obj['homeWorldId'] = homeWorldId; + obj['hubWorldId'] = hubWorldId; + obj['jobsEmail'] = jobsEmail; + obj['messageOfTheDay'] = messageOfTheDay; + obj['moderationEmail'] = moderationEmail; + obj['moderationQueryPeriod'] = moderationQueryPeriod; + obj['notAllowedToSelectAvatarInPrivateWorldMessage'] = notAllowedToSelectAvatarInPrivateWorldMessage; + obj['plugin'] = plugin; + obj['releaseAppVersionStandalone'] = releaseAppVersionStandalone; + obj['releaseSdkUrl'] = releaseSdkUrl; + obj['releaseSdkVersion'] = releaseSdkVersion; + obj['releaseServerVersionStandalone'] = releaseServerVersionStandalone; + obj['sdkDeveloperFaqUrl'] = sdkDeveloperFaqUrl; + obj['sdkDiscordUrl'] = sdkDiscordUrl; + obj['sdkNotAllowedToPublishMessage'] = sdkNotAllowedToPublishMessage; + obj['sdkUnityVersion'] = sdkUnityVersion; + obj['serverName'] = serverName; + obj['supportEmail'] = supportEmail; + obj['timeOutWorldId'] = timeOutWorldId; + obj['tutorialWorldId'] = tutorialWorldId; + obj['updateRateMsMaximum'] = updateRateMsMaximum; + obj['updateRateMsMinimum'] = updateRateMsMinimum; + obj['updateRateMsNormal'] = updateRateMsNormal; + obj['updateRateMsUdonManual'] = updateRateMsUdonManual; + obj['uploadAnalysisPercent'] = uploadAnalysisPercent; + obj['urlList'] = urlList; + obj['useReliableUdpForVoice'] = useReliableUdpForVoice || false; + obj['userUpdatePeriod'] = userUpdatePeriod; + obj['userVerificationDelay'] = userVerificationDelay; + obj['userVerificationRetry'] = userVerificationRetry; + obj['userVerificationTimeout'] = userVerificationTimeout; + obj['viveWindowsUrl'] = viveWindowsUrl; + obj['whiteListedAssetUrls'] = whiteListedAssetUrls; + obj['worldUpdatePeriod'] = worldUpdatePeriod; + obj['youtubedl-hash'] = youtubedlHash; + obj['youtubedl-version'] = youtubedlVersion; + } + /** + * Constructs a Config from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/Config} obj Optional instance to populate. + * @return {module:model/Config} The populated Config instance. + */ + + }, { + key: "constructFromObject", + value: function constructFromObject(data, obj) { + if (data) { + obj = obj || new Config(); + + if (data.hasOwnProperty('address')) { + obj['address'] = _ApiClient["default"].convertToType(data['address'], 'String'); + } + + if (data.hasOwnProperty('announcements')) { + obj['announcements'] = _ApiClient["default"].convertToType(data['announcements'], [_ConfigAnnouncements["default"]]); + } + + if (data.hasOwnProperty('apiKey')) { + obj['apiKey'] = _ApiClient["default"].convertToType(data['apiKey'], 'String'); + } + + if (data.hasOwnProperty('appName')) { + obj['appName'] = _ApiClient["default"].convertToType(data['appName'], 'String'); + } + + if (data.hasOwnProperty('buildVersionTag')) { + obj['buildVersionTag'] = _ApiClient["default"].convertToType(data['buildVersionTag'], 'String'); + } + + if (data.hasOwnProperty('clientApiKey')) { + obj['clientApiKey'] = _ApiClient["default"].convertToType(data['clientApiKey'], 'String'); + } + + if (data.hasOwnProperty('clientBPSCeiling')) { + obj['clientBPSCeiling'] = _ApiClient["default"].convertToType(data['clientBPSCeiling'], 'Number'); + } + + if (data.hasOwnProperty('clientDisconnectTimeout')) { + obj['clientDisconnectTimeout'] = _ApiClient["default"].convertToType(data['clientDisconnectTimeout'], 'Number'); + } + + if (data.hasOwnProperty('clientReservedPlayerBPS')) { + obj['clientReservedPlayerBPS'] = _ApiClient["default"].convertToType(data['clientReservedPlayerBPS'], 'Number'); + } + + if (data.hasOwnProperty('clientSentCountAllowance')) { + obj['clientSentCountAllowance'] = _ApiClient["default"].convertToType(data['clientSentCountAllowance'], 'Number'); + } + + if (data.hasOwnProperty('contactEmail')) { + obj['contactEmail'] = _ApiClient["default"].convertToType(data['contactEmail'], 'String'); + } + + if (data.hasOwnProperty('copyrightEmail')) { + obj['copyrightEmail'] = _ApiClient["default"].convertToType(data['copyrightEmail'], 'String'); + } + + if (data.hasOwnProperty('currentTOSVersion')) { + obj['currentTOSVersion'] = _ApiClient["default"].convertToType(data['currentTOSVersion'], 'Number'); + } + + if (data.hasOwnProperty('defaultAvatar')) { + obj['defaultAvatar'] = _ApiClient["default"].convertToType(data['defaultAvatar'], 'String'); + } + + if (data.hasOwnProperty('deploymentGroup')) { + obj['deploymentGroup'] = _DeploymentGroup["default"].constructFromObject(data['deploymentGroup']); + } + + if (data.hasOwnProperty('devAppVersionStandalone')) { + obj['devAppVersionStandalone'] = _ApiClient["default"].convertToType(data['devAppVersionStandalone'], 'String'); + } + + if (data.hasOwnProperty('devDownloadLinkWindows')) { + obj['devDownloadLinkWindows'] = _ApiClient["default"].convertToType(data['devDownloadLinkWindows'], 'String'); + } + + if (data.hasOwnProperty('devSdkUrl')) { + obj['devSdkUrl'] = _ApiClient["default"].convertToType(data['devSdkUrl'], 'String'); + } + + if (data.hasOwnProperty('devSdkVersion')) { + obj['devSdkVersion'] = _ApiClient["default"].convertToType(data['devSdkVersion'], 'String'); + } + + if (data.hasOwnProperty('devServerVersionStandalone')) { + obj['devServerVersionStandalone'] = _ApiClient["default"].convertToType(data['devServerVersionStandalone'], 'String'); + } + + if (data.hasOwnProperty('disableAvatarCopying')) { + obj['disableAvatarCopying'] = _ApiClient["default"].convertToType(data['disableAvatarCopying'], 'Boolean'); + } + + if (data.hasOwnProperty('disableAvatarGating')) { + obj['disableAvatarGating'] = _ApiClient["default"].convertToType(data['disableAvatarGating'], 'Boolean'); + } + + if (data.hasOwnProperty('disableCommunityLabs')) { + obj['disableCommunityLabs'] = _ApiClient["default"].convertToType(data['disableCommunityLabs'], 'Boolean'); + } + + if (data.hasOwnProperty('disableCommunityLabsPromotion')) { + obj['disableCommunityLabsPromotion'] = _ApiClient["default"].convertToType(data['disableCommunityLabsPromotion'], 'Boolean'); + } + + if (data.hasOwnProperty('disableEmail')) { + obj['disableEmail'] = _ApiClient["default"].convertToType(data['disableEmail'], 'Boolean'); + } + + if (data.hasOwnProperty('disableEventStream')) { + obj['disableEventStream'] = _ApiClient["default"].convertToType(data['disableEventStream'], 'Boolean'); + } + + if (data.hasOwnProperty('disableFeedbackGating')) { + obj['disableFeedbackGating'] = _ApiClient["default"].convertToType(data['disableFeedbackGating'], 'Boolean'); + } + + if (data.hasOwnProperty('disableHello')) { + obj['disableHello'] = _ApiClient["default"].convertToType(data['disableHello'], 'Boolean'); + } + + if (data.hasOwnProperty('disableRegistration')) { + obj['disableRegistration'] = _ApiClient["default"].convertToType(data['disableRegistration'], 'Boolean'); + } + + if (data.hasOwnProperty('disableSteamNetworking')) { + obj['disableSteamNetworking'] = _ApiClient["default"].convertToType(data['disableSteamNetworking'], 'Boolean'); + } + + if (data.hasOwnProperty('disableTwoFactorAuth')) { + obj['disableTwoFactorAuth'] = _ApiClient["default"].convertToType(data['disableTwoFactorAuth'], 'Boolean'); + } + + if (data.hasOwnProperty('disableUdon')) { + obj['disableUdon'] = _ApiClient["default"].convertToType(data['disableUdon'], 'Boolean'); + } + + if (data.hasOwnProperty('disableUpgradeAccount')) { + obj['disableUpgradeAccount'] = _ApiClient["default"].convertToType(data['disableUpgradeAccount'], 'Boolean'); + } + + if (data.hasOwnProperty('downloadLinkWindows')) { + obj['downloadLinkWindows'] = _ApiClient["default"].convertToType(data['downloadLinkWindows'], 'String'); + } + + if (data.hasOwnProperty('downloadUrls')) { + obj['downloadUrls'] = _ConfigDownloadUrls["default"].constructFromObject(data['downloadUrls']); + } + + if (data.hasOwnProperty('dynamicWorldRows')) { + obj['dynamicWorldRows'] = _ApiClient["default"].convertToType(data['dynamicWorldRows'], [_ConfigDynamicWorldRows["default"]]); + } + + if (data.hasOwnProperty('events')) { + obj['events'] = _ConfigEvents["default"].constructFromObject(data['events']); + } + + if (data.hasOwnProperty('gearDemoRoomId')) { + obj['gearDemoRoomId'] = _ApiClient["default"].convertToType(data['gearDemoRoomId'], 'String'); + } + + if (data.hasOwnProperty('homepageRedirectTarget')) { + obj['homepageRedirectTarget'] = _ApiClient["default"].convertToType(data['homepageRedirectTarget'], 'String'); + } + + if (data.hasOwnProperty('homeWorldId')) { + obj['homeWorldId'] = _ApiClient["default"].convertToType(data['homeWorldId'], 'String'); + } + + if (data.hasOwnProperty('hubWorldId')) { + obj['hubWorldId'] = _ApiClient["default"].convertToType(data['hubWorldId'], 'String'); + } + + if (data.hasOwnProperty('jobsEmail')) { + obj['jobsEmail'] = _ApiClient["default"].convertToType(data['jobsEmail'], 'String'); + } + + if (data.hasOwnProperty('messageOfTheDay')) { + obj['messageOfTheDay'] = _ApiClient["default"].convertToType(data['messageOfTheDay'], 'String'); + } + + if (data.hasOwnProperty('moderationEmail')) { + obj['moderationEmail'] = _ApiClient["default"].convertToType(data['moderationEmail'], 'String'); + } + + if (data.hasOwnProperty('moderationQueryPeriod')) { + obj['moderationQueryPeriod'] = _ApiClient["default"].convertToType(data['moderationQueryPeriod'], 'Number'); + } + + if (data.hasOwnProperty('notAllowedToSelectAvatarInPrivateWorldMessage')) { + obj['notAllowedToSelectAvatarInPrivateWorldMessage'] = _ApiClient["default"].convertToType(data['notAllowedToSelectAvatarInPrivateWorldMessage'], 'String'); + } + + if (data.hasOwnProperty('plugin')) { + obj['plugin'] = _ApiClient["default"].convertToType(data['plugin'], 'String'); + } + + if (data.hasOwnProperty('releaseAppVersionStandalone')) { + obj['releaseAppVersionStandalone'] = _ApiClient["default"].convertToType(data['releaseAppVersionStandalone'], 'String'); + } + + if (data.hasOwnProperty('releaseSdkUrl')) { + obj['releaseSdkUrl'] = _ApiClient["default"].convertToType(data['releaseSdkUrl'], 'String'); + } + + if (data.hasOwnProperty('releaseSdkVersion')) { + obj['releaseSdkVersion'] = _ApiClient["default"].convertToType(data['releaseSdkVersion'], 'String'); + } + + if (data.hasOwnProperty('releaseServerVersionStandalone')) { + obj['releaseServerVersionStandalone'] = _ApiClient["default"].convertToType(data['releaseServerVersionStandalone'], 'String'); + } + + if (data.hasOwnProperty('sdkDeveloperFaqUrl')) { + obj['sdkDeveloperFaqUrl'] = _ApiClient["default"].convertToType(data['sdkDeveloperFaqUrl'], 'String'); + } + + if (data.hasOwnProperty('sdkDiscordUrl')) { + obj['sdkDiscordUrl'] = _ApiClient["default"].convertToType(data['sdkDiscordUrl'], 'String'); + } + + if (data.hasOwnProperty('sdkNotAllowedToPublishMessage')) { + obj['sdkNotAllowedToPublishMessage'] = _ApiClient["default"].convertToType(data['sdkNotAllowedToPublishMessage'], 'String'); + } + + if (data.hasOwnProperty('sdkUnityVersion')) { + obj['sdkUnityVersion'] = _ApiClient["default"].convertToType(data['sdkUnityVersion'], 'String'); + } + + if (data.hasOwnProperty('serverName')) { + obj['serverName'] = _ApiClient["default"].convertToType(data['serverName'], 'String'); + } + + if (data.hasOwnProperty('supportEmail')) { + obj['supportEmail'] = _ApiClient["default"].convertToType(data['supportEmail'], 'String'); + } + + if (data.hasOwnProperty('timeOutWorldId')) { + obj['timeOutWorldId'] = _ApiClient["default"].convertToType(data['timeOutWorldId'], 'String'); + } + + if (data.hasOwnProperty('tutorialWorldId')) { + obj['tutorialWorldId'] = _ApiClient["default"].convertToType(data['tutorialWorldId'], 'String'); + } + + if (data.hasOwnProperty('updateRateMsMaximum')) { + obj['updateRateMsMaximum'] = _ApiClient["default"].convertToType(data['updateRateMsMaximum'], 'Number'); + } + + if (data.hasOwnProperty('updateRateMsMinimum')) { + obj['updateRateMsMinimum'] = _ApiClient["default"].convertToType(data['updateRateMsMinimum'], 'Number'); + } + + if (data.hasOwnProperty('updateRateMsNormal')) { + obj['updateRateMsNormal'] = _ApiClient["default"].convertToType(data['updateRateMsNormal'], 'Number'); + } + + if (data.hasOwnProperty('updateRateMsUdonManual')) { + obj['updateRateMsUdonManual'] = _ApiClient["default"].convertToType(data['updateRateMsUdonManual'], 'Number'); + } + + if (data.hasOwnProperty('uploadAnalysisPercent')) { + obj['uploadAnalysisPercent'] = _ApiClient["default"].convertToType(data['uploadAnalysisPercent'], 'Number'); + } + + if (data.hasOwnProperty('urlList')) { + obj['urlList'] = _ApiClient["default"].convertToType(data['urlList'], ['String']); + } + + if (data.hasOwnProperty('useReliableUdpForVoice')) { + obj['useReliableUdpForVoice'] = _ApiClient["default"].convertToType(data['useReliableUdpForVoice'], 'Boolean'); + } + + if (data.hasOwnProperty('userUpdatePeriod')) { + obj['userUpdatePeriod'] = _ApiClient["default"].convertToType(data['userUpdatePeriod'], 'Number'); + } + + if (data.hasOwnProperty('userVerificationDelay')) { + obj['userVerificationDelay'] = _ApiClient["default"].convertToType(data['userVerificationDelay'], 'Number'); + } + + if (data.hasOwnProperty('userVerificationRetry')) { + obj['userVerificationRetry'] = _ApiClient["default"].convertToType(data['userVerificationRetry'], 'Number'); + } + + if (data.hasOwnProperty('userVerificationTimeout')) { + obj['userVerificationTimeout'] = _ApiClient["default"].convertToType(data['userVerificationTimeout'], 'Number'); + } + + if (data.hasOwnProperty('viveWindowsUrl')) { + obj['viveWindowsUrl'] = _ApiClient["default"].convertToType(data['viveWindowsUrl'], 'String'); + } + + if (data.hasOwnProperty('whiteListedAssetUrls')) { + obj['whiteListedAssetUrls'] = _ApiClient["default"].convertToType(data['whiteListedAssetUrls'], ['String']); + } + + if (data.hasOwnProperty('worldUpdatePeriod')) { + obj['worldUpdatePeriod'] = _ApiClient["default"].convertToType(data['worldUpdatePeriod'], 'Number'); + } + + if (data.hasOwnProperty('youtubedl-hash')) { + obj['youtubedl-hash'] = _ApiClient["default"].convertToType(data['youtubedl-hash'], 'String'); + } + + if (data.hasOwnProperty('youtubedl-version')) { + obj['youtubedl-version'] = _ApiClient["default"].convertToType(data['youtubedl-version'], 'String'); + } + } + + return obj; + } + }]); + + return Config; +}(); +/** + * VRChat's office address + * @member {String} address + */ + + +Config.prototype['address'] = undefined; +/** + * PSA, Public Announcements + * @member {Array.} announcements + */ + +Config.prototype['announcements'] = undefined; +/** + * apiKey to be used for all other requests + * @member {String} apiKey + */ + +Config.prototype['apiKey'] = undefined; +/** + * Game name + * @member {String} appName + * @default 'VrChat' + */ + +Config.prototype['appName'] = 'VrChat'; +/** + * Build tag of the API server + * @member {String} buildVersionTag + */ + +Config.prototype['buildVersionTag'] = undefined; +/** + * apiKey to be used for all other requests + * @member {String} clientApiKey + */ + +Config.prototype['clientApiKey'] = undefined; +/** + * Unknown + * @member {Number} clientBPSCeiling + */ + +Config.prototype['clientBPSCeiling'] = undefined; +/** + * Unknown + * @member {Number} clientDisconnectTimeout + */ + +Config.prototype['clientDisconnectTimeout'] = undefined; +/** + * Unknown + * @member {Number} clientReservedPlayerBPS + */ + +Config.prototype['clientReservedPlayerBPS'] = undefined; +/** + * Unknown + * @member {Number} clientSentCountAllowance + */ + +Config.prototype['clientSentCountAllowance'] = undefined; +/** + * VRChat's contact email + * @member {String} contactEmail + */ + +Config.prototype['contactEmail'] = undefined; +/** + * VRChat's copyright-issues-related email + * @member {String} copyrightEmail + */ + +Config.prototype['copyrightEmail'] = undefined; +/** + * Current version number of the Terms of Service + * @member {Number} currentTOSVersion + */ + +Config.prototype['currentTOSVersion'] = undefined; +/** + * @member {String} defaultAvatar + */ + +Config.prototype['defaultAvatar'] = undefined; +/** + * @member {module:model/DeploymentGroup} deploymentGroup + */ + +Config.prototype['deploymentGroup'] = undefined; +/** + * Version number for game development build + * @member {String} devAppVersionStandalone + */ + +Config.prototype['devAppVersionStandalone'] = undefined; +/** + * Developer Download link + * @member {String} devDownloadLinkWindows + */ + +Config.prototype['devDownloadLinkWindows'] = undefined; +/** + * Link to download the development SDK, use downloadUrls instead + * @member {String} devSdkUrl + */ + +Config.prototype['devSdkUrl'] = undefined; +/** + * Version of the development SDK + * @member {String} devSdkVersion + */ + +Config.prototype['devSdkVersion'] = undefined; +/** + * Version number for server development build + * @member {String} devServerVersionStandalone + */ + +Config.prototype['devServerVersionStandalone'] = undefined; +/** + * Toggles if copying avatars should be disabled + * @member {Boolean} disableAvatarCopying + * @default false + */ + +Config.prototype['disableAvatarCopying'] = false; +/** + * Toggles if avatar gating should be disabled. Avatar gating restricts uploading of avatars to people with the `system_avatar_access` Tag or `admin_avatar_access` Tag + * @member {Boolean} disableAvatarGating + * @default false + */ + +Config.prototype['disableAvatarGating'] = false; +/** + * Toggles if the Community Labs should be disabled + * @member {Boolean} disableCommunityLabs + * @default false + */ + +Config.prototype['disableCommunityLabs'] = false; +/** + * Toggles if promotion out of Community Labs should be disabled + * @member {Boolean} disableCommunityLabsPromotion + * @default false + */ + +Config.prototype['disableCommunityLabsPromotion'] = false; +/** + * Unknown + * @member {Boolean} disableEmail + * @default false + */ + +Config.prototype['disableEmail'] = false; +/** + * Toggles if Analytics should be disabled (this sreportedly not used in the Client) + * @member {Boolean} disableEventStream + * @default false + */ + +Config.prototype['disableEventStream'] = false; +/** + * Toggles if feedback gating should be disabled. Feedback gating restricts submission of feedback (reporting a World or User) to people with the `system_feedback_access` Tag. + * @member {Boolean} disableFeedbackGating + * @default false + */ + +Config.prototype['disableFeedbackGating'] = false; +/** + * Unknown + * @member {Boolean} disableHello + * @default false + */ + +Config.prototype['disableHello'] = false; +/** + * Toggles if new user account registration should be disabled + * @member {Boolean} disableRegistration + * @default false + */ + +Config.prototype['disableRegistration'] = false; +/** + * Toggles if Steam Networking should be disabled. VRChat these days uses Photon Unity Networking (PUN) instead. + * @member {Boolean} disableSteamNetworking + * @default true + */ + +Config.prototype['disableSteamNetworking'] = true; +/** + * Toggles if 2FA should be disabled. + * @member {Boolean} disableTwoFactorAuth + * @default false + */ + +Config.prototype['disableTwoFactorAuth'] = false; +/** + * Toggles if Udon should be universally disabled in-game. + * @member {Boolean} disableUdon + * @default false + */ + +Config.prototype['disableUdon'] = false; +/** + * Toggles if account upgrading \"linking with Steam/Oculus\" should be disabled. + * @member {Boolean} disableUpgradeAccount + * @default false + */ + +Config.prototype['disableUpgradeAccount'] = false; +/** + * Download link for game on the Oculus Rift website. + * @member {String} downloadLinkWindows + */ + +Config.prototype['downloadLinkWindows'] = undefined; +/** + * @member {module:model/ConfigDownloadUrls} downloadUrls + */ + +Config.prototype['downloadUrls'] = undefined; +/** + * Array of DynamicWorldRow objects, used by the game to display the list of world rows + * @member {Array.} dynamicWorldRows + */ + +Config.prototype['dynamicWorldRows'] = undefined; +/** + * @member {module:model/ConfigEvents} events + */ + +Config.prototype['events'] = undefined; +/** + * Unknown + * @member {String} gearDemoRoomId + */ + +Config.prototype['gearDemoRoomId'] = undefined; +/** + * Redirect target if you try to open the base API domain in your browser + * @member {String} homepageRedirectTarget + * @default 'https://hello.vrchat.com' + */ + +Config.prototype['homepageRedirectTarget'] = 'https://hello.vrchat.com'; +/** + * @member {String} homeWorldId + */ + +Config.prototype['homeWorldId'] = undefined; +/** + * @member {String} hubWorldId + */ + +Config.prototype['hubWorldId'] = undefined; +/** + * VRChat's job application email + * @member {String} jobsEmail + */ + +Config.prototype['jobsEmail'] = undefined; +/** + * MOTD + * @member {String} messageOfTheDay + */ + +Config.prototype['messageOfTheDay'] = undefined; +/** + * VRChat's moderation related email + * @member {String} moderationEmail + */ + +Config.prototype['moderationEmail'] = undefined; +/** + * Unknown + * @member {Number} moderationQueryPeriod + */ + +Config.prototype['moderationQueryPeriod'] = undefined; +/** + * Used in-game to notify a user they aren't allowed to select avatars in private worlds + * @member {String} notAllowedToSelectAvatarInPrivateWorldMessage + */ + +Config.prototype['notAllowedToSelectAvatarInPrivateWorldMessage'] = undefined; +/** + * Extra [plugin](https://doc.photonengine.com/en-us/server/current/plugins/manual) to run in each instance + * @member {String} plugin + */ + +Config.prototype['plugin'] = undefined; +/** + * Version number for game release build + * @member {String} releaseAppVersionStandalone + */ + +Config.prototype['releaseAppVersionStandalone'] = undefined; +/** + * Link to download the release SDK + * @member {String} releaseSdkUrl + */ + +Config.prototype['releaseSdkUrl'] = undefined; +/** + * Version of the release SDK + * @member {String} releaseSdkVersion + */ + +Config.prototype['releaseSdkVersion'] = undefined; +/** + * Version number for server release build + * @member {String} releaseServerVersionStandalone + */ + +Config.prototype['releaseServerVersionStandalone'] = undefined; +/** + * Link to the developer FAQ + * @member {String} sdkDeveloperFaqUrl + */ + +Config.prototype['sdkDeveloperFaqUrl'] = undefined; +/** + * Link to the official VRChat Discord + * @member {String} sdkDiscordUrl + */ + +Config.prototype['sdkDiscordUrl'] = undefined; +/** + * Used in the SDK to notify a user they aren't allowed to upload avatars/worlds yet + * @member {String} sdkNotAllowedToPublishMessage + */ + +Config.prototype['sdkNotAllowedToPublishMessage'] = undefined; +/** + * Unity version supported by the SDK + * @member {String} sdkUnityVersion + */ + +Config.prototype['sdkUnityVersion'] = undefined; +/** + * Server name of the API server currently responding + * @member {String} serverName + */ + +Config.prototype['serverName'] = undefined; +/** + * VRChat's support email + * @member {String} supportEmail + */ + +Config.prototype['supportEmail'] = undefined; +/** + * @member {String} timeOutWorldId + */ + +Config.prototype['timeOutWorldId'] = undefined; +/** + * @member {String} tutorialWorldId + */ + +Config.prototype['tutorialWorldId'] = undefined; +/** + * Unknown + * @member {Number} updateRateMsMaximum + */ + +Config.prototype['updateRateMsMaximum'] = undefined; +/** + * Unknown + * @member {Number} updateRateMsMinimum + */ + +Config.prototype['updateRateMsMinimum'] = undefined; +/** + * Unknown + * @member {Number} updateRateMsNormal + */ + +Config.prototype['updateRateMsNormal'] = undefined; +/** + * Unknown + * @member {Number} updateRateMsUdonManual + */ + +Config.prototype['updateRateMsUdonManual'] = undefined; +/** + * Unknown + * @member {Number} uploadAnalysisPercent + */ + +Config.prototype['uploadAnalysisPercent'] = undefined; +/** + * List of allowed URLs that bypass the \"Allow untrusted URL's\" setting in-game + * @member {Array.} urlList + */ + +Config.prototype['urlList'] = undefined; +/** + * Unknown + * @member {Boolean} useReliableUdpForVoice + * @default false + */ + +Config.prototype['useReliableUdpForVoice'] = false; +/** + * Unknown + * @member {Number} userUpdatePeriod + */ + +Config.prototype['userUpdatePeriod'] = undefined; +/** + * Unknown + * @member {Number} userVerificationDelay + */ + +Config.prototype['userVerificationDelay'] = undefined; +/** + * Unknown + * @member {Number} userVerificationRetry + */ + +Config.prototype['userVerificationRetry'] = undefined; +/** + * Unknown + * @member {Number} userVerificationTimeout + */ + +Config.prototype['userVerificationTimeout'] = undefined; +/** + * Download link for game on the Steam website. + * @member {String} viveWindowsUrl + */ + +Config.prototype['viveWindowsUrl'] = undefined; +/** + * List of allowed URLs that are allowed to host avatar assets + * @member {Array.} whiteListedAssetUrls + */ + +Config.prototype['whiteListedAssetUrls'] = undefined; +/** + * Unknown + * @member {Number} worldUpdatePeriod + */ + +Config.prototype['worldUpdatePeriod'] = undefined; +/** + * Currently used youtube-dl.exe hash in SHA-256-delimited format + * @member {String} youtubedl-hash + */ + +Config.prototype['youtubedl-hash'] = undefined; +/** + * Currently used youtube-dl.exe version + * @member {String} youtubedl-version + */ + +Config.prototype['youtubedl-version'] = undefined; +var _default = Config; +exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/ConfigAnnouncements.js b/dist/model/ConfigAnnouncements.js new file mode 100644 index 0000000..a9667e3 --- /dev/null +++ b/dist/model/ConfigAnnouncements.js @@ -0,0 +1,92 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var _ApiClient = _interopRequireDefault(require("../ApiClient")); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +/** + * The ConfigAnnouncements model module. + * @module model/ConfigAnnouncements + * @version 1.0.0 + */ +var ConfigAnnouncements = /*#__PURE__*/function () { + /** + * Constructs a new ConfigAnnouncements. + * Public Announcement + * @alias module:model/ConfigAnnouncements + * @param name {String} Announcement name + * @param text {String} Announcement text + */ + function ConfigAnnouncements(name, text) { + _classCallCheck(this, ConfigAnnouncements); + + ConfigAnnouncements.initialize(this, name, text); + } + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + + + _createClass(ConfigAnnouncements, null, [{ + key: "initialize", + value: function initialize(obj, name, text) { + obj['name'] = name; + obj['text'] = text; + } + /** + * Constructs a ConfigAnnouncements from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/ConfigAnnouncements} obj Optional instance to populate. + * @return {module:model/ConfigAnnouncements} The populated ConfigAnnouncements instance. + */ + + }, { + key: "constructFromObject", + value: function constructFromObject(data, obj) { + if (data) { + obj = obj || new ConfigAnnouncements(); + + if (data.hasOwnProperty('name')) { + obj['name'] = _ApiClient["default"].convertToType(data['name'], 'String'); + } + + if (data.hasOwnProperty('text')) { + obj['text'] = _ApiClient["default"].convertToType(data['text'], 'String'); + } + } + + return obj; + } + }]); + + return ConfigAnnouncements; +}(); +/** + * Announcement name + * @member {String} name + */ + + +ConfigAnnouncements.prototype['name'] = undefined; +/** + * Announcement text + * @member {String} text + */ + +ConfigAnnouncements.prototype['text'] = undefined; +var _default = ConfigAnnouncements; +exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/ConfigDownloadUrls.js b/dist/model/ConfigDownloadUrls.js new file mode 100644 index 0000000..dc5726f --- /dev/null +++ b/dist/model/ConfigDownloadUrls.js @@ -0,0 +1,104 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var _ApiClient = _interopRequireDefault(require("../ApiClient")); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +/** + * The ConfigDownloadUrls model module. + * @module model/ConfigDownloadUrls + * @version 1.0.0 + */ +var ConfigDownloadUrls = /*#__PURE__*/function () { + /** + * Constructs a new ConfigDownloadUrls. + * Download links for various development assets + * @alias module:model/ConfigDownloadUrls + * @param sdk2 {String} Download link for legacy SDK2 + * @param sdk3Avatars {String} Download link for SDK3 for Avatars + * @param sdk3Worlds {String} Download link for SDK3 for Worlds + */ + function ConfigDownloadUrls(sdk2, sdk3Avatars, sdk3Worlds) { + _classCallCheck(this, ConfigDownloadUrls); + + ConfigDownloadUrls.initialize(this, sdk2, sdk3Avatars, sdk3Worlds); + } + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + + + _createClass(ConfigDownloadUrls, null, [{ + key: "initialize", + value: function initialize(obj, sdk2, sdk3Avatars, sdk3Worlds) { + obj['sdk2'] = sdk2; + obj['sdk3-avatars'] = sdk3Avatars; + obj['sdk3-worlds'] = sdk3Worlds; + } + /** + * Constructs a ConfigDownloadUrls from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/ConfigDownloadUrls} obj Optional instance to populate. + * @return {module:model/ConfigDownloadUrls} The populated ConfigDownloadUrls instance. + */ + + }, { + key: "constructFromObject", + value: function constructFromObject(data, obj) { + if (data) { + obj = obj || new ConfigDownloadUrls(); + + if (data.hasOwnProperty('sdk2')) { + obj['sdk2'] = _ApiClient["default"].convertToType(data['sdk2'], 'String'); + } + + if (data.hasOwnProperty('sdk3-avatars')) { + obj['sdk3-avatars'] = _ApiClient["default"].convertToType(data['sdk3-avatars'], 'String'); + } + + if (data.hasOwnProperty('sdk3-worlds')) { + obj['sdk3-worlds'] = _ApiClient["default"].convertToType(data['sdk3-worlds'], 'String'); + } + } + + return obj; + } + }]); + + return ConfigDownloadUrls; +}(); +/** + * Download link for legacy SDK2 + * @member {String} sdk2 + */ + + +ConfigDownloadUrls.prototype['sdk2'] = undefined; +/** + * Download link for SDK3 for Avatars + * @member {String} sdk3-avatars + */ + +ConfigDownloadUrls.prototype['sdk3-avatars'] = undefined; +/** + * Download link for SDK3 for Worlds + * @member {String} sdk3-worlds + */ + +ConfigDownloadUrls.prototype['sdk3-worlds'] = undefined; +var _default = ConfigDownloadUrls; +exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/ConfigDynamicWorldRows.js b/dist/model/ConfigDynamicWorldRows.js new file mode 100644 index 0000000..a156f9a --- /dev/null +++ b/dist/model/ConfigDynamicWorldRows.js @@ -0,0 +1,143 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var _ApiClient = _interopRequireDefault(require("../ApiClient")); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +/** + * The ConfigDynamicWorldRows model module. + * @module model/ConfigDynamicWorldRows + * @version 1.0.0 + */ +var ConfigDynamicWorldRows = /*#__PURE__*/function () { + /** + * Constructs a new ConfigDynamicWorldRows. + * @alias module:model/ConfigDynamicWorldRows + * @param index {Number} + * @param name {String} + * @param platform {String} + * @param sortHeading {String} + * @param sortOrder {String} + * @param sortOwnership {String} + */ + function ConfigDynamicWorldRows(index, name, platform, sortHeading, sortOrder, sortOwnership) { + _classCallCheck(this, ConfigDynamicWorldRows); + + ConfigDynamicWorldRows.initialize(this, index, name, platform, sortHeading, sortOrder, sortOwnership); + } + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + + + _createClass(ConfigDynamicWorldRows, null, [{ + key: "initialize", + value: function initialize(obj, index, name, platform, sortHeading, sortOrder, sortOwnership) { + obj['index'] = index; + obj['name'] = name; + obj['platform'] = platform; + obj['sortHeading'] = sortHeading; + obj['sortOrder'] = sortOrder; + obj['sortOwnership'] = sortOwnership; + } + /** + * Constructs a ConfigDynamicWorldRows from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/ConfigDynamicWorldRows} obj Optional instance to populate. + * @return {module:model/ConfigDynamicWorldRows} The populated ConfigDynamicWorldRows instance. + */ + + }, { + key: "constructFromObject", + value: function constructFromObject(data, obj) { + if (data) { + obj = obj || new ConfigDynamicWorldRows(); + + if (data.hasOwnProperty('index')) { + obj['index'] = _ApiClient["default"].convertToType(data['index'], 'Number'); + } + + if (data.hasOwnProperty('name')) { + obj['name'] = _ApiClient["default"].convertToType(data['name'], 'String'); + } + + if (data.hasOwnProperty('platform')) { + obj['platform'] = _ApiClient["default"].convertToType(data['platform'], 'String'); + } + + if (data.hasOwnProperty('sortHeading')) { + obj['sortHeading'] = _ApiClient["default"].convertToType(data['sortHeading'], 'String'); + } + + if (data.hasOwnProperty('sortOrder')) { + obj['sortOrder'] = _ApiClient["default"].convertToType(data['sortOrder'], 'String'); + } + + if (data.hasOwnProperty('sortOwnership')) { + obj['sortOwnership'] = _ApiClient["default"].convertToType(data['sortOwnership'], 'String'); + } + + if (data.hasOwnProperty('tag')) { + obj['tag'] = _ApiClient["default"].convertToType(data['tag'], 'String'); + } + } + + return obj; + } + }]); + + return ConfigDynamicWorldRows; +}(); +/** + * @member {Number} index + */ + + +ConfigDynamicWorldRows.prototype['index'] = undefined; +/** + * @member {String} name + */ + +ConfigDynamicWorldRows.prototype['name'] = undefined; +/** + * @member {String} platform + */ + +ConfigDynamicWorldRows.prototype['platform'] = undefined; +/** + * @member {String} sortHeading + */ + +ConfigDynamicWorldRows.prototype['sortHeading'] = undefined; +/** + * @member {String} sortOrder + */ + +ConfigDynamicWorldRows.prototype['sortOrder'] = undefined; +/** + * @member {String} sortOwnership + */ + +ConfigDynamicWorldRows.prototype['sortOwnership'] = undefined; +/** + * Tag to filter worlds for this row + * @member {String} tag + */ + +ConfigDynamicWorldRows.prototype['tag'] = undefined; +var _default = ConfigDynamicWorldRows; +exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/ConfigEvents.js b/dist/model/ConfigEvents.js new file mode 100644 index 0000000..c487502 --- /dev/null +++ b/dist/model/ConfigEvents.js @@ -0,0 +1,187 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var _ApiClient = _interopRequireDefault(require("../ApiClient")); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +/** + * The ConfigEvents model module. + * @module model/ConfigEvents + * @version 1.0.0 + */ +var ConfigEvents = /*#__PURE__*/function () { + /** + * Constructs a new ConfigEvents. + * @alias module:model/ConfigEvents + * @param distanceClose {Number} Unknown + * @param distanceFactor {Number} Unknown + * @param distanceFar {Number} Unknown + * @param groupDistance {Number} Unknown + * @param maximumBunchSize {Number} Unknown + * @param notVisibleFactor {Number} Unknown + * @param playerOrderBucketSize {Number} Unknown + * @param playerOrderFactor {Number} Unknown + * @param slowUpdateFactorThreshold {Number} Unknown + * @param viewSegmentLength {Number} Unknown + */ + function ConfigEvents(distanceClose, distanceFactor, distanceFar, groupDistance, maximumBunchSize, notVisibleFactor, playerOrderBucketSize, playerOrderFactor, slowUpdateFactorThreshold, viewSegmentLength) { + _classCallCheck(this, ConfigEvents); + + ConfigEvents.initialize(this, distanceClose, distanceFactor, distanceFar, groupDistance, maximumBunchSize, notVisibleFactor, playerOrderBucketSize, playerOrderFactor, slowUpdateFactorThreshold, viewSegmentLength); + } + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + + + _createClass(ConfigEvents, null, [{ + key: "initialize", + value: function initialize(obj, distanceClose, distanceFactor, distanceFar, groupDistance, maximumBunchSize, notVisibleFactor, playerOrderBucketSize, playerOrderFactor, slowUpdateFactorThreshold, viewSegmentLength) { + obj['distanceClose'] = distanceClose; + obj['distanceFactor'] = distanceFactor; + obj['distanceFar'] = distanceFar; + obj['groupDistance'] = groupDistance; + obj['maximumBunchSize'] = maximumBunchSize; + obj['notVisibleFactor'] = notVisibleFactor; + obj['playerOrderBucketSize'] = playerOrderBucketSize; + obj['playerOrderFactor'] = playerOrderFactor; + obj['slowUpdateFactorThreshold'] = slowUpdateFactorThreshold; + obj['viewSegmentLength'] = viewSegmentLength; + } + /** + * Constructs a ConfigEvents from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/ConfigEvents} obj Optional instance to populate. + * @return {module:model/ConfigEvents} The populated ConfigEvents instance. + */ + + }, { + key: "constructFromObject", + value: function constructFromObject(data, obj) { + if (data) { + obj = obj || new ConfigEvents(); + + if (data.hasOwnProperty('distanceClose')) { + obj['distanceClose'] = _ApiClient["default"].convertToType(data['distanceClose'], 'Number'); + } + + if (data.hasOwnProperty('distanceFactor')) { + obj['distanceFactor'] = _ApiClient["default"].convertToType(data['distanceFactor'], 'Number'); + } + + if (data.hasOwnProperty('distanceFar')) { + obj['distanceFar'] = _ApiClient["default"].convertToType(data['distanceFar'], 'Number'); + } + + if (data.hasOwnProperty('groupDistance')) { + obj['groupDistance'] = _ApiClient["default"].convertToType(data['groupDistance'], 'Number'); + } + + if (data.hasOwnProperty('maximumBunchSize')) { + obj['maximumBunchSize'] = _ApiClient["default"].convertToType(data['maximumBunchSize'], 'Number'); + } + + if (data.hasOwnProperty('notVisibleFactor')) { + obj['notVisibleFactor'] = _ApiClient["default"].convertToType(data['notVisibleFactor'], 'Number'); + } + + if (data.hasOwnProperty('playerOrderBucketSize')) { + obj['playerOrderBucketSize'] = _ApiClient["default"].convertToType(data['playerOrderBucketSize'], 'Number'); + } + + if (data.hasOwnProperty('playerOrderFactor')) { + obj['playerOrderFactor'] = _ApiClient["default"].convertToType(data['playerOrderFactor'], 'Number'); + } + + if (data.hasOwnProperty('slowUpdateFactorThreshold')) { + obj['slowUpdateFactorThreshold'] = _ApiClient["default"].convertToType(data['slowUpdateFactorThreshold'], 'Number'); + } + + if (data.hasOwnProperty('viewSegmentLength')) { + obj['viewSegmentLength'] = _ApiClient["default"].convertToType(data['viewSegmentLength'], 'Number'); + } + } + + return obj; + } + }]); + + return ConfigEvents; +}(); +/** + * Unknown + * @member {Number} distanceClose + */ + + +ConfigEvents.prototype['distanceClose'] = undefined; +/** + * Unknown + * @member {Number} distanceFactor + */ + +ConfigEvents.prototype['distanceFactor'] = undefined; +/** + * Unknown + * @member {Number} distanceFar + */ + +ConfigEvents.prototype['distanceFar'] = undefined; +/** + * Unknown + * @member {Number} groupDistance + */ + +ConfigEvents.prototype['groupDistance'] = undefined; +/** + * Unknown + * @member {Number} maximumBunchSize + */ + +ConfigEvents.prototype['maximumBunchSize'] = undefined; +/** + * Unknown + * @member {Number} notVisibleFactor + */ + +ConfigEvents.prototype['notVisibleFactor'] = undefined; +/** + * Unknown + * @member {Number} playerOrderBucketSize + */ + +ConfigEvents.prototype['playerOrderBucketSize'] = undefined; +/** + * Unknown + * @member {Number} playerOrderFactor + */ + +ConfigEvents.prototype['playerOrderFactor'] = undefined; +/** + * Unknown + * @member {Number} slowUpdateFactorThreshold + */ + +ConfigEvents.prototype['slowUpdateFactorThreshold'] = undefined; +/** + * Unknown + * @member {Number} viewSegmentLength + */ + +ConfigEvents.prototype['viewSegmentLength'] = undefined; +var _default = ConfigEvents; +exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/CurrentUser.js b/dist/model/CurrentUser.js new file mode 100644 index 0000000..f1a1dd4 --- /dev/null +++ b/dist/model/CurrentUser.js @@ -0,0 +1,578 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var _ApiClient = _interopRequireDefault(require("../ApiClient")); + +var _DeveloperType = _interopRequireDefault(require("./DeveloperType")); + +var _UserState = _interopRequireDefault(require("./UserState")); + +var _UserStatus = _interopRequireDefault(require("./UserStatus")); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +/** + * The CurrentUser model module. + * @module model/CurrentUser + * @version 1.0.0 + */ +var CurrentUser = /*#__PURE__*/function () { + /** + * Constructs a new CurrentUser. + * @alias module:model/CurrentUser + * @param id {String} + * @param username {String} + * @param displayName {String} + * @param userIcon {String} + * @param bio {String} + * @param bioLinks {Array.} + * @param profilePicOverride {String} + * @param statusDescription {String} + * @param pastDisplayNames {Array.} + * @param hasEmail {Boolean} + * @param hasPendingEmail {Boolean} + * @param obfuscatedEmail {String} + * @param obfuscatedPendingEmail {String} + * @param emailVerified {Boolean} + * @param hasBirthday {Boolean} + * @param unsubscribe {Boolean} + * @param statusHistory {Array.} + * @param statusFirstTime {Boolean} + * @param friends {Array.} + * @param friendGroupNames {Array.} + * @param currentAvatarImageUrl {String} + * @param currentAvatarThumbnailImageUrl {String} + * @param fallbackAvatar {String} + * @param currentAvatar {String} + * @param currentAvatarAssetUrl {String} + * @param acceptedTOSVersion {Number} + * @param steamId {String} + * @param steamDetails {Object} + * @param oculusId {String} + * @param hasLoggedInFromClient {Boolean} + * @param homeLocation {String} + * @param twoFactorAuthEnabled {Boolean} + * @param state {module:model/UserState} + * @param tags {Array.} + * @param developerType {module:model/DeveloperType} + * @param lastLogin {Date} + * @param lastPlatform {String} + * @param allowAvatarCopying {Boolean} + * @param status {module:model/UserStatus} + * @param dateJoined {Date} + * @param isFriend {Boolean} + * @param friendKey {String} + * @param onlineFriends {Array.} + * @param activeFriends {Array.} + * @param offlineFriends {Array.} + */ + function CurrentUser(id, username, displayName, userIcon, bio, bioLinks, profilePicOverride, statusDescription, pastDisplayNames, hasEmail, hasPendingEmail, obfuscatedEmail, obfuscatedPendingEmail, emailVerified, hasBirthday, unsubscribe, statusHistory, statusFirstTime, friends, friendGroupNames, currentAvatarImageUrl, currentAvatarThumbnailImageUrl, fallbackAvatar, currentAvatar, currentAvatarAssetUrl, acceptedTOSVersion, steamId, steamDetails, oculusId, hasLoggedInFromClient, homeLocation, twoFactorAuthEnabled, state, tags, developerType, lastLogin, lastPlatform, allowAvatarCopying, status, dateJoined, isFriend, friendKey, onlineFriends, activeFriends, offlineFriends) { + _classCallCheck(this, CurrentUser); + + CurrentUser.initialize(this, id, username, displayName, userIcon, bio, bioLinks, profilePicOverride, statusDescription, pastDisplayNames, hasEmail, hasPendingEmail, obfuscatedEmail, obfuscatedPendingEmail, emailVerified, hasBirthday, unsubscribe, statusHistory, statusFirstTime, friends, friendGroupNames, currentAvatarImageUrl, currentAvatarThumbnailImageUrl, fallbackAvatar, currentAvatar, currentAvatarAssetUrl, acceptedTOSVersion, steamId, steamDetails, oculusId, hasLoggedInFromClient, homeLocation, twoFactorAuthEnabled, state, tags, developerType, lastLogin, lastPlatform, allowAvatarCopying, status, dateJoined, isFriend, friendKey, onlineFriends, activeFriends, offlineFriends); + } + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + + + _createClass(CurrentUser, null, [{ + key: "initialize", + value: function initialize(obj, id, username, displayName, userIcon, bio, bioLinks, profilePicOverride, statusDescription, pastDisplayNames, hasEmail, hasPendingEmail, obfuscatedEmail, obfuscatedPendingEmail, emailVerified, hasBirthday, unsubscribe, statusHistory, statusFirstTime, friends, friendGroupNames, currentAvatarImageUrl, currentAvatarThumbnailImageUrl, fallbackAvatar, currentAvatar, currentAvatarAssetUrl, acceptedTOSVersion, steamId, steamDetails, oculusId, hasLoggedInFromClient, homeLocation, twoFactorAuthEnabled, state, tags, developerType, lastLogin, lastPlatform, allowAvatarCopying, status, dateJoined, isFriend, friendKey, onlineFriends, activeFriends, offlineFriends) { + obj['id'] = id; + obj['username'] = username; + obj['displayName'] = displayName; + obj['userIcon'] = userIcon; + obj['bio'] = bio; + obj['bioLinks'] = bioLinks; + obj['profilePicOverride'] = profilePicOverride; + obj['statusDescription'] = statusDescription; + obj['pastDisplayNames'] = pastDisplayNames; + obj['hasEmail'] = hasEmail; + obj['hasPendingEmail'] = hasPendingEmail; + obj['obfuscatedEmail'] = obfuscatedEmail; + obj['obfuscatedPendingEmail'] = obfuscatedPendingEmail; + obj['emailVerified'] = emailVerified; + obj['hasBirthday'] = hasBirthday; + obj['unsubscribe'] = unsubscribe; + obj['statusHistory'] = statusHistory; + obj['statusFirstTime'] = statusFirstTime; + obj['friends'] = friends; + obj['friendGroupNames'] = friendGroupNames; + obj['currentAvatarImageUrl'] = currentAvatarImageUrl; + obj['currentAvatarThumbnailImageUrl'] = currentAvatarThumbnailImageUrl; + obj['fallbackAvatar'] = fallbackAvatar; + obj['currentAvatar'] = currentAvatar; + obj['currentAvatarAssetUrl'] = currentAvatarAssetUrl; + obj['acceptedTOSVersion'] = acceptedTOSVersion; + obj['steamId'] = steamId; + obj['steamDetails'] = steamDetails; + obj['oculusId'] = oculusId; + obj['hasLoggedInFromClient'] = hasLoggedInFromClient; + obj['homeLocation'] = homeLocation; + obj['twoFactorAuthEnabled'] = twoFactorAuthEnabled; + obj['state'] = state; + obj['tags'] = tags; + obj['developerType'] = developerType; + obj['last_login'] = lastLogin; + obj['last_platform'] = lastPlatform; + obj['allowAvatarCopying'] = allowAvatarCopying; + obj['status'] = status; + obj['date_joined'] = dateJoined; + obj['isFriend'] = isFriend || false; + obj['friendKey'] = friendKey; + obj['onlineFriends'] = onlineFriends; + obj['activeFriends'] = activeFriends; + obj['offlineFriends'] = offlineFriends; + } + /** + * Constructs a CurrentUser from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/CurrentUser} obj Optional instance to populate. + * @return {module:model/CurrentUser} The populated CurrentUser instance. + */ + + }, { + key: "constructFromObject", + value: function constructFromObject(data, obj) { + if (data) { + obj = obj || new CurrentUser(); + + if (data.hasOwnProperty('id')) { + obj['id'] = _ApiClient["default"].convertToType(data['id'], 'String'); + } + + if (data.hasOwnProperty('username')) { + obj['username'] = _ApiClient["default"].convertToType(data['username'], 'String'); + } + + if (data.hasOwnProperty('displayName')) { + obj['displayName'] = _ApiClient["default"].convertToType(data['displayName'], 'String'); + } + + if (data.hasOwnProperty('userIcon')) { + obj['userIcon'] = _ApiClient["default"].convertToType(data['userIcon'], 'String'); + } + + if (data.hasOwnProperty('bio')) { + obj['bio'] = _ApiClient["default"].convertToType(data['bio'], 'String'); + } + + if (data.hasOwnProperty('bioLinks')) { + obj['bioLinks'] = _ApiClient["default"].convertToType(data['bioLinks'], ['String']); + } + + if (data.hasOwnProperty('profilePicOverride')) { + obj['profilePicOverride'] = _ApiClient["default"].convertToType(data['profilePicOverride'], 'String'); + } + + if (data.hasOwnProperty('statusDescription')) { + obj['statusDescription'] = _ApiClient["default"].convertToType(data['statusDescription'], 'String'); + } + + if (data.hasOwnProperty('pastDisplayNames')) { + obj['pastDisplayNames'] = _ApiClient["default"].convertToType(data['pastDisplayNames'], ['String']); + } + + if (data.hasOwnProperty('hasEmail')) { + obj['hasEmail'] = _ApiClient["default"].convertToType(data['hasEmail'], 'Boolean'); + } + + if (data.hasOwnProperty('hasPendingEmail')) { + obj['hasPendingEmail'] = _ApiClient["default"].convertToType(data['hasPendingEmail'], 'Boolean'); + } + + if (data.hasOwnProperty('obfuscatedEmail')) { + obj['obfuscatedEmail'] = _ApiClient["default"].convertToType(data['obfuscatedEmail'], 'String'); + } + + if (data.hasOwnProperty('obfuscatedPendingEmail')) { + obj['obfuscatedPendingEmail'] = _ApiClient["default"].convertToType(data['obfuscatedPendingEmail'], 'String'); + } + + if (data.hasOwnProperty('emailVerified')) { + obj['emailVerified'] = _ApiClient["default"].convertToType(data['emailVerified'], 'Boolean'); + } + + if (data.hasOwnProperty('hasBirthday')) { + obj['hasBirthday'] = _ApiClient["default"].convertToType(data['hasBirthday'], 'Boolean'); + } + + if (data.hasOwnProperty('unsubscribe')) { + obj['unsubscribe'] = _ApiClient["default"].convertToType(data['unsubscribe'], 'Boolean'); + } + + if (data.hasOwnProperty('statusHistory')) { + obj['statusHistory'] = _ApiClient["default"].convertToType(data['statusHistory'], ['String']); + } + + if (data.hasOwnProperty('statusFirstTime')) { + obj['statusFirstTime'] = _ApiClient["default"].convertToType(data['statusFirstTime'], 'Boolean'); + } + + if (data.hasOwnProperty('friends')) { + obj['friends'] = _ApiClient["default"].convertToType(data['friends'], ['String']); + } + + if (data.hasOwnProperty('friendGroupNames')) { + obj['friendGroupNames'] = _ApiClient["default"].convertToType(data['friendGroupNames'], ['String']); + } + + if (data.hasOwnProperty('currentAvatarImageUrl')) { + obj['currentAvatarImageUrl'] = _ApiClient["default"].convertToType(data['currentAvatarImageUrl'], 'String'); + } + + if (data.hasOwnProperty('currentAvatarThumbnailImageUrl')) { + obj['currentAvatarThumbnailImageUrl'] = _ApiClient["default"].convertToType(data['currentAvatarThumbnailImageUrl'], 'String'); + } + + if (data.hasOwnProperty('fallbackAvatar')) { + obj['fallbackAvatar'] = _ApiClient["default"].convertToType(data['fallbackAvatar'], 'String'); + } + + if (data.hasOwnProperty('currentAvatar')) { + obj['currentAvatar'] = _ApiClient["default"].convertToType(data['currentAvatar'], 'String'); + } + + if (data.hasOwnProperty('currentAvatarAssetUrl')) { + obj['currentAvatarAssetUrl'] = _ApiClient["default"].convertToType(data['currentAvatarAssetUrl'], 'String'); + } + + if (data.hasOwnProperty('accountDeletionDate')) { + obj['accountDeletionDate'] = _ApiClient["default"].convertToType(data['accountDeletionDate'], 'Date'); + } + + if (data.hasOwnProperty('acceptedTOSVersion')) { + obj['acceptedTOSVersion'] = _ApiClient["default"].convertToType(data['acceptedTOSVersion'], 'Number'); + } + + if (data.hasOwnProperty('steamId')) { + obj['steamId'] = _ApiClient["default"].convertToType(data['steamId'], 'String'); + } + + if (data.hasOwnProperty('steamDetails')) { + obj['steamDetails'] = _ApiClient["default"].convertToType(data['steamDetails'], Object); + } + + if (data.hasOwnProperty('oculusId')) { + obj['oculusId'] = _ApiClient["default"].convertToType(data['oculusId'], 'String'); + } + + if (data.hasOwnProperty('hasLoggedInFromClient')) { + obj['hasLoggedInFromClient'] = _ApiClient["default"].convertToType(data['hasLoggedInFromClient'], 'Boolean'); + } + + if (data.hasOwnProperty('homeLocation')) { + obj['homeLocation'] = _ApiClient["default"].convertToType(data['homeLocation'], 'String'); + } + + if (data.hasOwnProperty('twoFactorAuthEnabled')) { + obj['twoFactorAuthEnabled'] = _ApiClient["default"].convertToType(data['twoFactorAuthEnabled'], 'Boolean'); + } + + if (data.hasOwnProperty('state')) { + obj['state'] = _UserState["default"].constructFromObject(data['state']); + } + + if (data.hasOwnProperty('tags')) { + obj['tags'] = _ApiClient["default"].convertToType(data['tags'], ['String']); + } + + if (data.hasOwnProperty('developerType')) { + obj['developerType'] = _DeveloperType["default"].constructFromObject(data['developerType']); + } + + if (data.hasOwnProperty('last_login')) { + obj['last_login'] = _ApiClient["default"].convertToType(data['last_login'], 'Date'); + } + + if (data.hasOwnProperty('last_platform')) { + obj['last_platform'] = _ApiClient["default"].convertToType(data['last_platform'], 'String'); + } + + if (data.hasOwnProperty('allowAvatarCopying')) { + obj['allowAvatarCopying'] = _ApiClient["default"].convertToType(data['allowAvatarCopying'], 'Boolean'); + } + + if (data.hasOwnProperty('status')) { + obj['status'] = _UserStatus["default"].constructFromObject(data['status']); + } + + if (data.hasOwnProperty('date_joined')) { + obj['date_joined'] = _ApiClient["default"].convertToType(data['date_joined'], 'Date'); + } + + if (data.hasOwnProperty('isFriend')) { + obj['isFriend'] = _ApiClient["default"].convertToType(data['isFriend'], 'Boolean'); + } + + if (data.hasOwnProperty('friendKey')) { + obj['friendKey'] = _ApiClient["default"].convertToType(data['friendKey'], 'String'); + } + + if (data.hasOwnProperty('onlineFriends')) { + obj['onlineFriends'] = _ApiClient["default"].convertToType(data['onlineFriends'], ['String']); + } + + if (data.hasOwnProperty('activeFriends')) { + obj['activeFriends'] = _ApiClient["default"].convertToType(data['activeFriends'], ['String']); + } + + if (data.hasOwnProperty('offlineFriends')) { + obj['offlineFriends'] = _ApiClient["default"].convertToType(data['offlineFriends'], ['String']); + } + } + + return obj; + } + }]); + + return CurrentUser; +}(); +/** + * @member {String} id + */ + + +CurrentUser.prototype['id'] = undefined; +/** + * @member {String} username + */ + +CurrentUser.prototype['username'] = undefined; +/** + * @member {String} displayName + */ + +CurrentUser.prototype['displayName'] = undefined; +/** + * @member {String} userIcon + */ + +CurrentUser.prototype['userIcon'] = undefined; +/** + * @member {String} bio + */ + +CurrentUser.prototype['bio'] = undefined; +/** + * @member {Array.} bioLinks + */ + +CurrentUser.prototype['bioLinks'] = undefined; +/** + * @member {String} profilePicOverride + */ + +CurrentUser.prototype['profilePicOverride'] = undefined; +/** + * @member {String} statusDescription + */ + +CurrentUser.prototype['statusDescription'] = undefined; +/** + * @member {Array.} pastDisplayNames + */ + +CurrentUser.prototype['pastDisplayNames'] = undefined; +/** + * @member {Boolean} hasEmail + */ + +CurrentUser.prototype['hasEmail'] = undefined; +/** + * @member {Boolean} hasPendingEmail + */ + +CurrentUser.prototype['hasPendingEmail'] = undefined; +/** + * @member {String} obfuscatedEmail + */ + +CurrentUser.prototype['obfuscatedEmail'] = undefined; +/** + * @member {String} obfuscatedPendingEmail + */ + +CurrentUser.prototype['obfuscatedPendingEmail'] = undefined; +/** + * @member {Boolean} emailVerified + */ + +CurrentUser.prototype['emailVerified'] = undefined; +/** + * @member {Boolean} hasBirthday + */ + +CurrentUser.prototype['hasBirthday'] = undefined; +/** + * @member {Boolean} unsubscribe + */ + +CurrentUser.prototype['unsubscribe'] = undefined; +/** + * @member {Array.} statusHistory + */ + +CurrentUser.prototype['statusHistory'] = undefined; +/** + * @member {Boolean} statusFirstTime + */ + +CurrentUser.prototype['statusFirstTime'] = undefined; +/** + * @member {Array.} friends + */ + +CurrentUser.prototype['friends'] = undefined; +/** + * @member {Array.} friendGroupNames + */ + +CurrentUser.prototype['friendGroupNames'] = undefined; +/** + * @member {String} currentAvatarImageUrl + */ + +CurrentUser.prototype['currentAvatarImageUrl'] = undefined; +/** + * @member {String} currentAvatarThumbnailImageUrl + */ + +CurrentUser.prototype['currentAvatarThumbnailImageUrl'] = undefined; +/** + * @member {String} fallbackAvatar + */ + +CurrentUser.prototype['fallbackAvatar'] = undefined; +/** + * @member {String} currentAvatar + */ + +CurrentUser.prototype['currentAvatar'] = undefined; +/** + * @member {String} currentAvatarAssetUrl + */ + +CurrentUser.prototype['currentAvatarAssetUrl'] = undefined; +/** + * @member {Date} accountDeletionDate + */ + +CurrentUser.prototype['accountDeletionDate'] = undefined; +/** + * @member {Number} acceptedTOSVersion + */ + +CurrentUser.prototype['acceptedTOSVersion'] = undefined; +/** + * @member {String} steamId + */ + +CurrentUser.prototype['steamId'] = undefined; +/** + * @member {Object} steamDetails + */ + +CurrentUser.prototype['steamDetails'] = undefined; +/** + * @member {String} oculusId + */ + +CurrentUser.prototype['oculusId'] = undefined; +/** + * @member {Boolean} hasLoggedInFromClient + */ + +CurrentUser.prototype['hasLoggedInFromClient'] = undefined; +/** + * @member {String} homeLocation + */ + +CurrentUser.prototype['homeLocation'] = undefined; +/** + * @member {Boolean} twoFactorAuthEnabled + */ + +CurrentUser.prototype['twoFactorAuthEnabled'] = undefined; +/** + * @member {module:model/UserState} state + */ + +CurrentUser.prototype['state'] = undefined; +/** + * @member {Array.} tags + */ + +CurrentUser.prototype['tags'] = undefined; +/** + * @member {module:model/DeveloperType} developerType + */ + +CurrentUser.prototype['developerType'] = undefined; +/** + * @member {Date} last_login + */ + +CurrentUser.prototype['last_login'] = undefined; +/** + * @member {String} last_platform + */ + +CurrentUser.prototype['last_platform'] = undefined; +/** + * @member {Boolean} allowAvatarCopying + */ + +CurrentUser.prototype['allowAvatarCopying'] = undefined; +/** + * @member {module:model/UserStatus} status + */ + +CurrentUser.prototype['status'] = undefined; +/** + * @member {Date} date_joined + */ + +CurrentUser.prototype['date_joined'] = undefined; +/** + * @member {Boolean} isFriend + * @default false + */ + +CurrentUser.prototype['isFriend'] = false; +/** + * @member {String} friendKey + */ + +CurrentUser.prototype['friendKey'] = undefined; +/** + * @member {Array.} onlineFriends + */ + +CurrentUser.prototype['onlineFriends'] = undefined; +/** + * @member {Array.} activeFriends + */ + +CurrentUser.prototype['activeFriends'] = undefined; +/** + * @member {Array.} offlineFriends + */ + +CurrentUser.prototype['offlineFriends'] = undefined; +var _default = CurrentUser; +exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/DeploymentGroup.js b/dist/model/DeploymentGroup.js new file mode 100644 index 0000000..42734ce --- /dev/null +++ b/dist/model/DeploymentGroup.js @@ -0,0 +1,54 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var _ApiClient = _interopRequireDefault(require("../ApiClient")); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } + +/** +* Enum class DeploymentGroup. +* @enum {} +* @readonly +*/ +var DeploymentGroup = /*#__PURE__*/function () { + function DeploymentGroup() { + _classCallCheck(this, DeploymentGroup); + + _defineProperty(this, "blue", "blue"); + + _defineProperty(this, "green", "green"); + + _defineProperty(this, "grape", "grape"); + + _defineProperty(this, "cherry", "cherry"); + } + + _createClass(DeploymentGroup, null, [{ + key: "constructFromObject", + value: + /** + * Returns a DeploymentGroup enum value from a Javascript object name. + * @param {Object} data The plain JavaScript object containing the name of the enum value. + * @return {module:model/DeploymentGroup} The enum DeploymentGroup value. + */ + function constructFromObject(object) { + return object; + } + }]); + + return DeploymentGroup; +}(); + +exports["default"] = DeploymentGroup; \ No newline at end of file diff --git a/dist/model/DeveloperType.js b/dist/model/DeveloperType.js new file mode 100644 index 0000000..216343c --- /dev/null +++ b/dist/model/DeveloperType.js @@ -0,0 +1,54 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var _ApiClient = _interopRequireDefault(require("../ApiClient")); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } + +/** +* Enum class DeveloperType. +* @enum {} +* @readonly +*/ +var DeveloperType = /*#__PURE__*/function () { + function DeveloperType() { + _classCallCheck(this, DeveloperType); + + _defineProperty(this, "none", "none"); + + _defineProperty(this, "trusted", "trusted"); + + _defineProperty(this, "internal", "internal"); + + _defineProperty(this, "moderator", "moderator"); + } + + _createClass(DeveloperType, null, [{ + key: "constructFromObject", + value: + /** + * Returns a DeveloperType enum value from a Javascript object name. + * @param {Object} data The plain JavaScript object containing the name of the enum value. + * @return {module:model/DeveloperType} The enum DeveloperType value. + */ + function constructFromObject(object) { + return object; + } + }]); + + return DeveloperType; +}(); + +exports["default"] = DeveloperType; \ No newline at end of file diff --git a/dist/model/Error.js b/dist/model/Error.js new file mode 100644 index 0000000..531d1c6 --- /dev/null +++ b/dist/model/Error.js @@ -0,0 +1,77 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var _ApiClient = _interopRequireDefault(require("../ApiClient")); + +var _Response = _interopRequireDefault(require("./Response")); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +/** + * The Error model module. + * @module model/Error + * @version 1.0.0 + */ +var Error = /*#__PURE__*/function () { + /** + * Constructs a new Error. + * @alias module:model/Error + */ + function Error() { + _classCallCheck(this, Error); + + Error.initialize(this); + } + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + + + _createClass(Error, null, [{ + key: "initialize", + value: function initialize(obj) {} + /** + * Constructs a Error from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/Error} obj Optional instance to populate. + * @return {module:model/Error} The populated Error instance. + */ + + }, { + key: "constructFromObject", + value: function constructFromObject(data, obj) { + if (data) { + obj = obj || new Error(); + + if (data.hasOwnProperty('error')) { + obj['error'] = _Response["default"].constructFromObject(data['error']); + } + } + + return obj; + } + }]); + + return Error; +}(); +/** + * @member {module:model/Response} error + */ + + +Error.prototype['error'] = undefined; +var _default = Error; +exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/File.js b/dist/model/File.js new file mode 100644 index 0000000..867b535 --- /dev/null +++ b/dist/model/File.js @@ -0,0 +1,150 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var _ApiClient = _interopRequireDefault(require("../ApiClient")); + +var _FileVersion = _interopRequireDefault(require("./FileVersion")); + +var _MIMEType = _interopRequireDefault(require("./MIMEType")); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +/** + * The File model module. + * @module model/File + * @version 1.0.0 + */ +var File = /*#__PURE__*/function () { + /** + * Constructs a new File. + * + * @alias module:model/File + * @param id {String} + * @param name {String} + * @param ownerId {String} + * @param mimeType {module:model/MIMEType} + * @param extension {String} + * @param tags {Array.} + * @param versions {Array.} + */ + function File(id, name, ownerId, mimeType, extension, tags, versions) { + _classCallCheck(this, File); + + File.initialize(this, id, name, ownerId, mimeType, extension, tags, versions); + } + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + + + _createClass(File, null, [{ + key: "initialize", + value: function initialize(obj, id, name, ownerId, mimeType, extension, tags, versions) { + obj['id'] = id; + obj['name'] = name; + obj['ownerId'] = ownerId; + obj['mimeType'] = mimeType; + obj['extension'] = extension; + obj['tags'] = tags; + obj['versions'] = versions; + } + /** + * Constructs a File from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/File} obj Optional instance to populate. + * @return {module:model/File} The populated File instance. + */ + + }, { + key: "constructFromObject", + value: function constructFromObject(data, obj) { + if (data) { + obj = obj || new File(); + + if (data.hasOwnProperty('id')) { + obj['id'] = _ApiClient["default"].convertToType(data['id'], 'String'); + } + + if (data.hasOwnProperty('name')) { + obj['name'] = _ApiClient["default"].convertToType(data['name'], 'String'); + } + + if (data.hasOwnProperty('ownerId')) { + obj['ownerId'] = _ApiClient["default"].convertToType(data['ownerId'], 'String'); + } + + if (data.hasOwnProperty('mimeType')) { + obj['mimeType'] = _MIMEType["default"].constructFromObject(data['mimeType']); + } + + if (data.hasOwnProperty('extension')) { + obj['extension'] = _ApiClient["default"].convertToType(data['extension'], 'String'); + } + + if (data.hasOwnProperty('tags')) { + obj['tags'] = _ApiClient["default"].convertToType(data['tags'], ['String']); + } + + if (data.hasOwnProperty('versions')) { + obj['versions'] = _ApiClient["default"].convertToType(data['versions'], [_FileVersion["default"]]); + } + } + + return obj; + } + }]); + + return File; +}(); +/** + * @member {String} id + */ + + +File.prototype['id'] = undefined; +/** + * + * @member {String} name + */ + +File.prototype['name'] = undefined; +/** + * @member {String} ownerId + */ + +File.prototype['ownerId'] = undefined; +/** + * @member {module:model/MIMEType} mimeType + */ + +File.prototype['mimeType'] = undefined; +/** + * @member {String} extension + */ + +File.prototype['extension'] = undefined; +/** + * @member {Array.} tags + */ + +File.prototype['tags'] = undefined; +/** + * @member {Array.} versions + */ + +File.prototype['versions'] = undefined; +var _default = File; +exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/FileData.js b/dist/model/FileData.js new file mode 100644 index 0000000..6b30c2d --- /dev/null +++ b/dist/model/FileData.js @@ -0,0 +1,173 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var _ApiClient = _interopRequireDefault(require("../ApiClient")); + +var _FileStatus = _interopRequireDefault(require("./FileStatus")); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +/** + * The FileData model module. + * @module model/FileData + * @version 1.0.0 + */ +var FileData = /*#__PURE__*/function () { + /** + * Constructs a new FileData. + * + * @alias module:model/FileData + * @param fileName {String} + * @param url {String} + * @param md5 {String} + * @param sizeInBytes {Number} + * @param status {module:model/FileStatus} + * @param category {module:model/FileData.CategoryEnum} + * @param uploadId {String} + */ + function FileData(fileName, url, md5, sizeInBytes, status, category, uploadId) { + _classCallCheck(this, FileData); + + FileData.initialize(this, fileName, url, md5, sizeInBytes, status, category, uploadId); + } + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + + + _createClass(FileData, null, [{ + key: "initialize", + value: function initialize(obj, fileName, url, md5, sizeInBytes, status, category, uploadId) { + obj['fileName'] = fileName; + obj['url'] = url; + obj['md5'] = md5; + obj['sizeInBytes'] = sizeInBytes; + obj['status'] = status; + obj['category'] = category; + obj['uploadId'] = uploadId || ''; + } + /** + * Constructs a FileData from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/FileData} obj Optional instance to populate. + * @return {module:model/FileData} The populated FileData instance. + */ + + }, { + key: "constructFromObject", + value: function constructFromObject(data, obj) { + if (data) { + obj = obj || new FileData(); + + if (data.hasOwnProperty('fileName')) { + obj['fileName'] = _ApiClient["default"].convertToType(data['fileName'], 'String'); + } + + if (data.hasOwnProperty('url')) { + obj['url'] = _ApiClient["default"].convertToType(data['url'], 'String'); + } + + if (data.hasOwnProperty('md5')) { + obj['md5'] = _ApiClient["default"].convertToType(data['md5'], 'String'); + } + + if (data.hasOwnProperty('sizeInBytes')) { + obj['sizeInBytes'] = _ApiClient["default"].convertToType(data['sizeInBytes'], 'Number'); + } + + if (data.hasOwnProperty('status')) { + obj['status'] = _FileStatus["default"].constructFromObject(data['status']); + } + + if (data.hasOwnProperty('category')) { + obj['category'] = _ApiClient["default"].convertToType(data['category'], 'String'); + } + + if (data.hasOwnProperty('uploadId')) { + obj['uploadId'] = _ApiClient["default"].convertToType(data['uploadId'], 'String'); + } + } + + return obj; + } + }]); + + return FileData; +}(); +/** + * @member {String} fileName + */ + + +FileData.prototype['fileName'] = undefined; +/** + * @member {String} url + */ + +FileData.prototype['url'] = undefined; +/** + * @member {String} md5 + */ + +FileData.prototype['md5'] = undefined; +/** + * @member {Number} sizeInBytes + */ + +FileData.prototype['sizeInBytes'] = undefined; +/** + * @member {module:model/FileStatus} status + */ + +FileData.prototype['status'] = undefined; +/** + * @member {module:model/FileData.CategoryEnum} category + */ + +FileData.prototype['category'] = undefined; +/** + * @member {String} uploadId + * @default '' + */ + +FileData.prototype['uploadId'] = ''; +/** + * Allowed values for the category property. + * @enum {String} + * @readonly + */ + +FileData['CategoryEnum'] = { + /** + * value: "multipart" + * @const + */ + "multipart": "multipart", + + /** + * value: "queued" + * @const + */ + "queued": "queued", + + /** + * value: "simple" + * @const + */ + "simple": "simple" +}; +var _default = FileData; +exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/FileStatus.js b/dist/model/FileStatus.js new file mode 100644 index 0000000..fc4e20e --- /dev/null +++ b/dist/model/FileStatus.js @@ -0,0 +1,52 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var _ApiClient = _interopRequireDefault(require("../ApiClient")); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } + +/** +* Enum class FileStatus. +* @enum {} +* @readonly +*/ +var FileStatus = /*#__PURE__*/function () { + function FileStatus() { + _classCallCheck(this, FileStatus); + + _defineProperty(this, "waiting", "waiting"); + + _defineProperty(this, "complete", "complete"); + + _defineProperty(this, "none", "none"); + } + + _createClass(FileStatus, null, [{ + key: "constructFromObject", + value: + /** + * Returns a FileStatus enum value from a Javascript object name. + * @param {Object} data The plain JavaScript object containing the name of the enum value. + * @return {module:model/FileStatus} The enum FileStatus value. + */ + function constructFromObject(object) { + return object; + } + }]); + + return FileStatus; +}(); + +exports["default"] = FileStatus; \ No newline at end of file diff --git a/dist/model/FileVersion.js b/dist/model/FileVersion.js new file mode 100644 index 0000000..5bb4fb4 --- /dev/null +++ b/dist/model/FileVersion.js @@ -0,0 +1,145 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var _ApiClient = _interopRequireDefault(require("../ApiClient")); + +var _FileData = _interopRequireDefault(require("./FileData")); + +var _FileStatus = _interopRequireDefault(require("./FileStatus")); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +/** + * The FileVersion model module. + * @module model/FileVersion + * @version 1.0.0 + */ +var FileVersion = /*#__PURE__*/function () { + /** + * Constructs a new FileVersion. + * + * @alias module:model/FileVersion + * @param version {Number} Incremental version counter, can only be increased. + * @param status {module:model/FileStatus} + * @param createdAt {Date} + */ + function FileVersion(version, status, createdAt) { + _classCallCheck(this, FileVersion); + + FileVersion.initialize(this, version, status, createdAt); + } + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + + + _createClass(FileVersion, null, [{ + key: "initialize", + value: function initialize(obj, version, status, createdAt) { + obj['version'] = version || 0; + obj['status'] = status; + obj['created_at'] = createdAt; + } + /** + * Constructs a FileVersion from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/FileVersion} obj Optional instance to populate. + * @return {module:model/FileVersion} The populated FileVersion instance. + */ + + }, { + key: "constructFromObject", + value: function constructFromObject(data, obj) { + if (data) { + obj = obj || new FileVersion(); + + if (data.hasOwnProperty('version')) { + obj['version'] = _ApiClient["default"].convertToType(data['version'], 'Number'); + } + + if (data.hasOwnProperty('status')) { + obj['status'] = _FileStatus["default"].constructFromObject(data['status']); + } + + if (data.hasOwnProperty('created_at')) { + obj['created_at'] = _ApiClient["default"].convertToType(data['created_at'], 'Date'); + } + + if (data.hasOwnProperty('file')) { + obj['file'] = _FileData["default"].constructFromObject(data['file']); + } + + if (data.hasOwnProperty('delta')) { + obj['delta'] = _FileData["default"].constructFromObject(data['delta']); + } + + if (data.hasOwnProperty('signature')) { + obj['signature'] = _FileData["default"].constructFromObject(data['signature']); + } + + if (data.hasOwnProperty('deleted')) { + obj['deleted'] = _ApiClient["default"].convertToType(data['deleted'], 'Boolean'); + } + } + + return obj; + } + }]); + + return FileVersion; +}(); +/** + * Incremental version counter, can only be increased. + * @member {Number} version + * @default 0 + */ + + +FileVersion.prototype['version'] = 0; +/** + * @member {module:model/FileStatus} status + */ + +FileVersion.prototype['status'] = undefined; +/** + * @member {Date} created_at + */ + +FileVersion.prototype['created_at'] = undefined; +/** + * @member {module:model/FileData} file + */ + +FileVersion.prototype['file'] = undefined; +/** + * @member {module:model/FileData} delta + */ + +FileVersion.prototype['delta'] = undefined; +/** + * @member {module:model/FileData} signature + */ + +FileVersion.prototype['signature'] = undefined; +/** + * Usually only present if `true` + * @member {Boolean} deleted + * @default true + */ + +FileVersion.prototype['deleted'] = true; +var _default = FileVersion; +exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/InlineObject.js b/dist/model/InlineObject.js new file mode 100644 index 0000000..2f97735 --- /dev/null +++ b/dist/model/InlineObject.js @@ -0,0 +1,78 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var _ApiClient = _interopRequireDefault(require("../ApiClient")); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +/** + * The InlineObject model module. + * @module model/InlineObject + * @version 1.0.0 + */ +var InlineObject = /*#__PURE__*/function () { + /** + * Constructs a new InlineObject. + * @alias module:model/InlineObject + * @param code {String} + */ + function InlineObject(code) { + _classCallCheck(this, InlineObject); + + InlineObject.initialize(this, code); + } + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + + + _createClass(InlineObject, null, [{ + key: "initialize", + value: function initialize(obj, code) { + obj['code'] = code; + } + /** + * Constructs a InlineObject from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/InlineObject} obj Optional instance to populate. + * @return {module:model/InlineObject} The populated InlineObject instance. + */ + + }, { + key: "constructFromObject", + value: function constructFromObject(data, obj) { + if (data) { + obj = obj || new InlineObject(); + + if (data.hasOwnProperty('code')) { + obj['code'] = _ApiClient["default"].convertToType(data['code'], 'String'); + } + } + + return obj; + } + }]); + + return InlineObject; +}(); +/** + * @member {String} code + */ + + +InlineObject.prototype['code'] = undefined; +var _default = InlineObject; +exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/InlineObject1.js b/dist/model/InlineObject1.js new file mode 100644 index 0000000..1afe679 --- /dev/null +++ b/dist/model/InlineObject1.js @@ -0,0 +1,78 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var _ApiClient = _interopRequireDefault(require("../ApiClient")); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +/** + * The InlineObject1 model module. + * @module model/InlineObject1 + * @version 1.0.0 + */ +var InlineObject1 = /*#__PURE__*/function () { + /** + * Constructs a new InlineObject1. + * @alias module:model/InlineObject1 + * @param code {String} + */ + function InlineObject1(code) { + _classCallCheck(this, InlineObject1); + + InlineObject1.initialize(this, code); + } + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + + + _createClass(InlineObject1, null, [{ + key: "initialize", + value: function initialize(obj, code) { + obj['code'] = code; + } + /** + * Constructs a InlineObject1 from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/InlineObject1} obj Optional instance to populate. + * @return {module:model/InlineObject1} The populated InlineObject1 instance. + */ + + }, { + key: "constructFromObject", + value: function constructFromObject(data, obj) { + if (data) { + obj = obj || new InlineObject1(); + + if (data.hasOwnProperty('code')) { + obj['code'] = _ApiClient["default"].convertToType(data['code'], 'String'); + } + } + + return obj; + } + }]); + + return InlineObject1; +}(); +/** + * @member {String} code + */ + + +InlineObject1.prototype['code'] = undefined; +var _default = InlineObject1; +exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/InlineObject2.js b/dist/model/InlineObject2.js new file mode 100644 index 0000000..91d14b9 --- /dev/null +++ b/dist/model/InlineObject2.js @@ -0,0 +1,150 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var _ApiClient = _interopRequireDefault(require("../ApiClient")); + +var _UserStatus = _interopRequireDefault(require("./UserStatus")); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +/** + * The InlineObject2 model module. + * @module model/InlineObject2 + * @version 1.0.0 + */ +var InlineObject2 = /*#__PURE__*/function () { + /** + * Constructs a new InlineObject2. + * @alias module:model/InlineObject2 + */ + function InlineObject2() { + _classCallCheck(this, InlineObject2); + + InlineObject2.initialize(this); + } + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + + + _createClass(InlineObject2, null, [{ + key: "initialize", + value: function initialize(obj) {} + /** + * Constructs a InlineObject2 from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/InlineObject2} obj Optional instance to populate. + * @return {module:model/InlineObject2} The populated InlineObject2 instance. + */ + + }, { + key: "constructFromObject", + value: function constructFromObject(data, obj) { + if (data) { + obj = obj || new InlineObject2(); + + if (data.hasOwnProperty('email')) { + obj['email'] = _ApiClient["default"].convertToType(data['email'], 'String'); + } + + if (data.hasOwnProperty('birthday')) { + obj['birthday'] = _ApiClient["default"].convertToType(data['birthday'], 'Date'); + } + + if (data.hasOwnProperty('acceptedTOSVersion')) { + obj['acceptedTOSVersion'] = _ApiClient["default"].convertToType(data['acceptedTOSVersion'], 'Number'); + } + + if (data.hasOwnProperty('tags')) { + obj['tags'] = _ApiClient["default"].convertToType(data['tags'], ['String']); + } + + if (data.hasOwnProperty('status')) { + obj['status'] = _UserStatus["default"].constructFromObject(data['status']); + } + + if (data.hasOwnProperty('statusDescription')) { + obj['statusDescription'] = _ApiClient["default"].convertToType(data['statusDescription'], 'String'); + } + + if (data.hasOwnProperty('bio')) { + obj['bio'] = _ApiClient["default"].convertToType(data['bio'], 'String'); + } + + if (data.hasOwnProperty('bioLinks')) { + obj['bioLinks'] = _ApiClient["default"].convertToType(data['bioLinks'], ['String']); + } + + if (data.hasOwnProperty('userIcon')) { + obj['userIcon'] = _ApiClient["default"].convertToType(data['userIcon'], 'String'); + } + } + + return obj; + } + }]); + + return InlineObject2; +}(); +/** + * @member {String} email + */ + + +InlineObject2.prototype['email'] = undefined; +/** + * @member {Date} birthday + */ + +InlineObject2.prototype['birthday'] = undefined; +/** + * @member {Number} acceptedTOSVersion + */ + +InlineObject2.prototype['acceptedTOSVersion'] = undefined; +/** + * @member {Array.} tags + */ + +InlineObject2.prototype['tags'] = undefined; +/** + * @member {module:model/UserStatus} status + */ + +InlineObject2.prototype['status'] = undefined; +/** + * @member {String} statusDescription + */ + +InlineObject2.prototype['statusDescription'] = undefined; +/** + * @member {String} bio + */ + +InlineObject2.prototype['bio'] = undefined; +/** + * @member {Array.} bioLinks + */ + +InlineObject2.prototype['bioLinks'] = undefined; +/** + * MUST be a valid VRChat /file/ url. + * @member {String} userIcon + */ + +InlineObject2.prototype['userIcon'] = undefined; +var _default = InlineObject2; +exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/InlineObject3.js b/dist/model/InlineObject3.js new file mode 100644 index 0000000..2308677 --- /dev/null +++ b/dist/model/InlineObject3.js @@ -0,0 +1,111 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var _ApiClient = _interopRequireDefault(require("../ApiClient")); + +var _MIMEType = _interopRequireDefault(require("./MIMEType")); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +/** + * The InlineObject3 model module. + * @module model/InlineObject3 + * @version 1.0.0 + */ +var InlineObject3 = /*#__PURE__*/function () { + /** + * Constructs a new InlineObject3. + * @alias module:model/InlineObject3 + * @param name {String} + * @param mimeType {module:model/MIMEType} + * @param extension {String} + */ + function InlineObject3(name, mimeType, extension) { + _classCallCheck(this, InlineObject3); + + InlineObject3.initialize(this, name, mimeType, extension); + } + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + + + _createClass(InlineObject3, null, [{ + key: "initialize", + value: function initialize(obj, name, mimeType, extension) { + obj['name'] = name; + obj['mimeType'] = mimeType; + obj['extension'] = extension; + } + /** + * Constructs a InlineObject3 from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/InlineObject3} obj Optional instance to populate. + * @return {module:model/InlineObject3} The populated InlineObject3 instance. + */ + + }, { + key: "constructFromObject", + value: function constructFromObject(data, obj) { + if (data) { + obj = obj || new InlineObject3(); + + if (data.hasOwnProperty('name')) { + obj['name'] = _ApiClient["default"].convertToType(data['name'], 'String'); + } + + if (data.hasOwnProperty('mimeType')) { + obj['mimeType'] = _MIMEType["default"].constructFromObject(data['mimeType']); + } + + if (data.hasOwnProperty('extension')) { + obj['extension'] = _ApiClient["default"].convertToType(data['extension'], 'String'); + } + + if (data.hasOwnProperty('tags')) { + obj['tags'] = _ApiClient["default"].convertToType(data['tags'], ['String']); + } + } + + return obj; + } + }]); + + return InlineObject3; +}(); +/** + * @member {String} name + */ + + +InlineObject3.prototype['name'] = undefined; +/** + * @member {module:model/MIMEType} mimeType + */ + +InlineObject3.prototype['mimeType'] = undefined; +/** + * @member {String} extension + */ + +InlineObject3.prototype['extension'] = undefined; +/** + * @member {Array.} tags + */ + +InlineObject3.prototype['tags'] = undefined; +var _default = InlineObject3; +exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/InlineObject4.js b/dist/model/InlineObject4.js new file mode 100644 index 0000000..78526a8 --- /dev/null +++ b/dist/model/InlineObject4.js @@ -0,0 +1,129 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var _ApiClient = _interopRequireDefault(require("../ApiClient")); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +/** + * The InlineObject4 model module. + * @module model/InlineObject4 + * @version 1.0.0 + */ +var InlineObject4 = /*#__PURE__*/function () { + /** + * Constructs a new InlineObject4. + * @alias module:model/InlineObject4 + * @param nextPartNumber {module:model/InlineObject4.NextPartNumberEnum} Always a zero in string form, despite how many parts uploaded. + * @param maxParts {module:model/InlineObject4.MaxPartsEnum} Always a zero in string form, despite how many parts uploaded. + */ + function InlineObject4(nextPartNumber, maxParts) { + _classCallCheck(this, InlineObject4); + + InlineObject4.initialize(this, nextPartNumber, maxParts); + } + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + + + _createClass(InlineObject4, null, [{ + key: "initialize", + value: function initialize(obj, nextPartNumber, maxParts) { + obj['nextPartNumber'] = nextPartNumber || '0'; + obj['maxParts'] = maxParts || '0'; + } + /** + * Constructs a InlineObject4 from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/InlineObject4} obj Optional instance to populate. + * @return {module:model/InlineObject4} The populated InlineObject4 instance. + */ + + }, { + key: "constructFromObject", + value: function constructFromObject(data, obj) { + if (data) { + obj = obj || new InlineObject4(); + + if (data.hasOwnProperty('etags')) { + obj['etags'] = _ApiClient["default"].convertToType(data['etags'], ['String']); + } + + if (data.hasOwnProperty('nextPartNumber')) { + obj['nextPartNumber'] = _ApiClient["default"].convertToType(data['nextPartNumber'], 'String'); + } + + if (data.hasOwnProperty('maxParts')) { + obj['maxParts'] = _ApiClient["default"].convertToType(data['maxParts'], 'String'); + } + } + + return obj; + } + }]); + + return InlineObject4; +}(); +/** + * Array of ETags uploaded. + * @member {Array.} etags + */ + + +InlineObject4.prototype['etags'] = undefined; +/** + * Always a zero in string form, despite how many parts uploaded. + * @member {module:model/InlineObject4.NextPartNumberEnum} nextPartNumber + * @default '0' + */ + +InlineObject4.prototype['nextPartNumber'] = '0'; +/** + * Always a zero in string form, despite how many parts uploaded. + * @member {module:model/InlineObject4.MaxPartsEnum} maxParts + * @default '0' + */ + +InlineObject4.prototype['maxParts'] = '0'; +/** + * Allowed values for the nextPartNumber property. + * @enum {String} + * @readonly + */ + +InlineObject4['NextPartNumberEnum'] = { + /** + * value: "0" + * @const + */ + "0": "0" +}; +/** + * Allowed values for the maxParts property. + * @enum {String} + * @readonly + */ + +InlineObject4['MaxPartsEnum'] = { + /** + * value: "0" + * @const + */ + "0": "0" +}; +var _default = InlineObject4; +exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/InlineResponse200.js b/dist/model/InlineResponse200.js new file mode 100644 index 0000000..c6e345e --- /dev/null +++ b/dist/model/InlineResponse200.js @@ -0,0 +1,89 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var _ApiClient = _interopRequireDefault(require("../ApiClient")); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +/** + * The InlineResponse200 model module. + * @module model/InlineResponse200 + * @version 1.0.0 + */ +var InlineResponse200 = /*#__PURE__*/function () { + /** + * Constructs a new InlineResponse200. + * @alias module:model/InlineResponse200 + * @param ok {Boolean} + * @param token {String} + */ + function InlineResponse200(ok, token) { + _classCallCheck(this, InlineResponse200); + + InlineResponse200.initialize(this, ok, token); + } + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + + + _createClass(InlineResponse200, null, [{ + key: "initialize", + value: function initialize(obj, ok, token) { + obj['ok'] = ok; + obj['token'] = token; + } + /** + * Constructs a InlineResponse200 from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/InlineResponse200} obj Optional instance to populate. + * @return {module:model/InlineResponse200} The populated InlineResponse200 instance. + */ + + }, { + key: "constructFromObject", + value: function constructFromObject(data, obj) { + if (data) { + obj = obj || new InlineResponse200(); + + if (data.hasOwnProperty('ok')) { + obj['ok'] = _ApiClient["default"].convertToType(data['ok'], 'Boolean'); + } + + if (data.hasOwnProperty('token')) { + obj['token'] = _ApiClient["default"].convertToType(data['token'], 'String'); + } + } + + return obj; + } + }]); + + return InlineResponse200; +}(); +/** + * @member {Boolean} ok + */ + + +InlineResponse200.prototype['ok'] = undefined; +/** + * @member {String} token + */ + +InlineResponse200.prototype['token'] = undefined; +var _default = InlineResponse200; +exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/InlineResponse2001.js b/dist/model/InlineResponse2001.js new file mode 100644 index 0000000..5e68d38 --- /dev/null +++ b/dist/model/InlineResponse2001.js @@ -0,0 +1,78 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var _ApiClient = _interopRequireDefault(require("../ApiClient")); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +/** + * The InlineResponse2001 model module. + * @module model/InlineResponse2001 + * @version 1.0.0 + */ +var InlineResponse2001 = /*#__PURE__*/function () { + /** + * Constructs a new InlineResponse2001. + * @alias module:model/InlineResponse2001 + * @param verified {Boolean} + */ + function InlineResponse2001(verified) { + _classCallCheck(this, InlineResponse2001); + + InlineResponse2001.initialize(this, verified); + } + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + + + _createClass(InlineResponse2001, null, [{ + key: "initialize", + value: function initialize(obj, verified) { + obj['verified'] = verified; + } + /** + * Constructs a InlineResponse2001 from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/InlineResponse2001} obj Optional instance to populate. + * @return {module:model/InlineResponse2001} The populated InlineResponse2001 instance. + */ + + }, { + key: "constructFromObject", + value: function constructFromObject(data, obj) { + if (data) { + obj = obj || new InlineResponse2001(); + + if (data.hasOwnProperty('verified')) { + obj['verified'] = _ApiClient["default"].convertToType(data['verified'], 'Boolean'); + } + } + + return obj; + } + }]); + + return InlineResponse2001; +}(); +/** + * @member {Boolean} verified + */ + + +InlineResponse2001.prototype['verified'] = undefined; +var _default = InlineResponse2001; +exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/InlineResponse2002.js b/dist/model/InlineResponse2002.js new file mode 100644 index 0000000..1032b17 --- /dev/null +++ b/dist/model/InlineResponse2002.js @@ -0,0 +1,100 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var _ApiClient = _interopRequireDefault(require("../ApiClient")); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +/** + * The InlineResponse2002 model module. + * @module model/InlineResponse2002 + * @version 1.0.0 + */ +var InlineResponse2002 = /*#__PURE__*/function () { + /** + * Constructs a new InlineResponse2002. + * @alias module:model/InlineResponse2002 + * @param ok {Boolean} + * @param serverName {String} + * @param buildVersionTag {String} + */ + function InlineResponse2002(ok, serverName, buildVersionTag) { + _classCallCheck(this, InlineResponse2002); + + InlineResponse2002.initialize(this, ok, serverName, buildVersionTag); + } + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + + + _createClass(InlineResponse2002, null, [{ + key: "initialize", + value: function initialize(obj, ok, serverName, buildVersionTag) { + obj['ok'] = ok; + obj['serverName'] = serverName; + obj['buildVersionTag'] = buildVersionTag; + } + /** + * Constructs a InlineResponse2002 from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/InlineResponse2002} obj Optional instance to populate. + * @return {module:model/InlineResponse2002} The populated InlineResponse2002 instance. + */ + + }, { + key: "constructFromObject", + value: function constructFromObject(data, obj) { + if (data) { + obj = obj || new InlineResponse2002(); + + if (data.hasOwnProperty('ok')) { + obj['ok'] = _ApiClient["default"].convertToType(data['ok'], 'Boolean'); + } + + if (data.hasOwnProperty('serverName')) { + obj['serverName'] = _ApiClient["default"].convertToType(data['serverName'], 'String'); + } + + if (data.hasOwnProperty('buildVersionTag')) { + obj['buildVersionTag'] = _ApiClient["default"].convertToType(data['buildVersionTag'], 'String'); + } + } + + return obj; + } + }]); + + return InlineResponse2002; +}(); +/** + * @member {Boolean} ok + */ + + +InlineResponse2002.prototype['ok'] = undefined; +/** + * @member {String} serverName + */ + +InlineResponse2002.prototype['serverName'] = undefined; +/** + * @member {String} buildVersionTag + */ + +InlineResponse2002.prototype['buildVersionTag'] = undefined; +var _default = InlineResponse2002; +exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/InlineResponse2003.js b/dist/model/InlineResponse2003.js new file mode 100644 index 0000000..59754be --- /dev/null +++ b/dist/model/InlineResponse2003.js @@ -0,0 +1,103 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var _ApiClient = _interopRequireDefault(require("../ApiClient")); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +/** + * The InlineResponse2003 model module. + * @module model/InlineResponse2003 + * @version 1.0.0 + */ +var InlineResponse2003 = /*#__PURE__*/function () { + /** + * Constructs a new InlineResponse2003. + * @alias module:model/InlineResponse2003 + * @param isFriend {Boolean} + * @param outgoingRequest {Boolean} + * @param incomingRequest {Boolean} + */ + function InlineResponse2003(isFriend, outgoingRequest, incomingRequest) { + _classCallCheck(this, InlineResponse2003); + + InlineResponse2003.initialize(this, isFriend, outgoingRequest, incomingRequest); + } + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + + + _createClass(InlineResponse2003, null, [{ + key: "initialize", + value: function initialize(obj, isFriend, outgoingRequest, incomingRequest) { + obj['isFriend'] = isFriend || false; + obj['outgoingRequest'] = outgoingRequest || false; + obj['incomingRequest'] = incomingRequest || false; + } + /** + * Constructs a InlineResponse2003 from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/InlineResponse2003} obj Optional instance to populate. + * @return {module:model/InlineResponse2003} The populated InlineResponse2003 instance. + */ + + }, { + key: "constructFromObject", + value: function constructFromObject(data, obj) { + if (data) { + obj = obj || new InlineResponse2003(); + + if (data.hasOwnProperty('isFriend')) { + obj['isFriend'] = _ApiClient["default"].convertToType(data['isFriend'], 'Boolean'); + } + + if (data.hasOwnProperty('outgoingRequest')) { + obj['outgoingRequest'] = _ApiClient["default"].convertToType(data['outgoingRequest'], 'Boolean'); + } + + if (data.hasOwnProperty('incomingRequest')) { + obj['incomingRequest'] = _ApiClient["default"].convertToType(data['incomingRequest'], 'Boolean'); + } + } + + return obj; + } + }]); + + return InlineResponse2003; +}(); +/** + * @member {Boolean} isFriend + * @default false + */ + + +InlineResponse2003.prototype['isFriend'] = false; +/** + * @member {Boolean} outgoingRequest + * @default false + */ + +InlineResponse2003.prototype['outgoingRequest'] = false; +/** + * @member {Boolean} incomingRequest + * @default false + */ + +InlineResponse2003.prototype['incomingRequest'] = false; +var _default = InlineResponse2003; +exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/InlineResponse2004.js b/dist/model/InlineResponse2004.js new file mode 100644 index 0000000..1be7222 --- /dev/null +++ b/dist/model/InlineResponse2004.js @@ -0,0 +1,134 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var _ApiClient = _interopRequireDefault(require("../ApiClient")); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +/** + * The InlineResponse2004 model module. + * @module model/InlineResponse2004 + * @version 1.0.0 + */ +var InlineResponse2004 = /*#__PURE__*/function () { + /** + * Constructs a new InlineResponse2004. + * @alias module:model/InlineResponse2004 + * @param uploadId {String} + * @param fileName {String} + * @param nextPartNumber {Number} + * @param maxParts {Number} + * @param parts {Array.} + * @param etags {Array.} Unknown + */ + function InlineResponse2004(uploadId, fileName, nextPartNumber, maxParts, parts, etags) { + _classCallCheck(this, InlineResponse2004); + + InlineResponse2004.initialize(this, uploadId, fileName, nextPartNumber, maxParts, parts, etags); + } + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + + + _createClass(InlineResponse2004, null, [{ + key: "initialize", + value: function initialize(obj, uploadId, fileName, nextPartNumber, maxParts, parts, etags) { + obj['uploadId'] = uploadId; + obj['fileName'] = fileName; + obj['nextPartNumber'] = nextPartNumber; + obj['maxParts'] = maxParts; + obj['parts'] = parts; + obj['etags'] = etags; + } + /** + * Constructs a InlineResponse2004 from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/InlineResponse2004} obj Optional instance to populate. + * @return {module:model/InlineResponse2004} The populated InlineResponse2004 instance. + */ + + }, { + key: "constructFromObject", + value: function constructFromObject(data, obj) { + if (data) { + obj = obj || new InlineResponse2004(); + + if (data.hasOwnProperty('uploadId')) { + obj['uploadId'] = _ApiClient["default"].convertToType(data['uploadId'], 'String'); + } + + if (data.hasOwnProperty('fileName')) { + obj['fileName'] = _ApiClient["default"].convertToType(data['fileName'], 'String'); + } + + if (data.hasOwnProperty('nextPartNumber')) { + obj['nextPartNumber'] = _ApiClient["default"].convertToType(data['nextPartNumber'], 'Number'); + } + + if (data.hasOwnProperty('maxParts')) { + obj['maxParts'] = _ApiClient["default"].convertToType(data['maxParts'], 'Number'); + } + + if (data.hasOwnProperty('parts')) { + obj['parts'] = _ApiClient["default"].convertToType(data['parts'], [Object]); + } + + if (data.hasOwnProperty('etags')) { + obj['etags'] = _ApiClient["default"].convertToType(data['etags'], [Object]); + } + } + + return obj; + } + }]); + + return InlineResponse2004; +}(); +/** + * @member {String} uploadId + */ + + +InlineResponse2004.prototype['uploadId'] = undefined; +/** + * @member {String} fileName + */ + +InlineResponse2004.prototype['fileName'] = undefined; +/** + * @member {Number} nextPartNumber + */ + +InlineResponse2004.prototype['nextPartNumber'] = undefined; +/** + * @member {Number} maxParts + */ + +InlineResponse2004.prototype['maxParts'] = undefined; +/** + * @member {Array.} parts + */ + +InlineResponse2004.prototype['parts'] = undefined; +/** + * Unknown + * @member {Array.} etags + */ + +InlineResponse2004.prototype['etags'] = undefined; +var _default = InlineResponse2004; +exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/InlineResponse2005.js b/dist/model/InlineResponse2005.js new file mode 100644 index 0000000..fee3f03 --- /dev/null +++ b/dist/model/InlineResponse2005.js @@ -0,0 +1,78 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var _ApiClient = _interopRequireDefault(require("../ApiClient")); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +/** + * The InlineResponse2005 model module. + * @module model/InlineResponse2005 + * @version 1.0.0 + */ +var InlineResponse2005 = /*#__PURE__*/function () { + /** + * Constructs a new InlineResponse2005. + * @alias module:model/InlineResponse2005 + * @param url {String} + */ + function InlineResponse2005(url) { + _classCallCheck(this, InlineResponse2005); + + InlineResponse2005.initialize(this, url); + } + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + + + _createClass(InlineResponse2005, null, [{ + key: "initialize", + value: function initialize(obj, url) { + obj['url'] = url; + } + /** + * Constructs a InlineResponse2005 from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/InlineResponse2005} obj Optional instance to populate. + * @return {module:model/InlineResponse2005} The populated InlineResponse2005 instance. + */ + + }, { + key: "constructFromObject", + value: function constructFromObject(data, obj) { + if (data) { + obj = obj || new InlineResponse2005(); + + if (data.hasOwnProperty('url')) { + obj['url'] = _ApiClient["default"].convertToType(data['url'], 'String'); + } + } + + return obj; + } + }]); + + return InlineResponse2005; +}(); +/** + * @member {String} url + */ + + +InlineResponse2005.prototype['url'] = undefined; +var _default = InlineResponse2005; +exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/InlineResponse401.js b/dist/model/InlineResponse401.js new file mode 100644 index 0000000..6a5540a --- /dev/null +++ b/dist/model/InlineResponse401.js @@ -0,0 +1,80 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var _ApiClient = _interopRequireDefault(require("../ApiClient")); + +var _Error = _interopRequireDefault(require("./Error")); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +/** + * The InlineResponse401 model module. + * @module model/InlineResponse401 + * @version 1.0.0 + */ +var InlineResponse401 = /*#__PURE__*/function () { + /** + * Constructs a new InlineResponse401. + * @alias module:model/InlineResponse401 + * @param error {module:model/Error} + */ + function InlineResponse401(error) { + _classCallCheck(this, InlineResponse401); + + InlineResponse401.initialize(this, error); + } + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + + + _createClass(InlineResponse401, null, [{ + key: "initialize", + value: function initialize(obj, error) { + obj['error'] = error; + } + /** + * Constructs a InlineResponse401 from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/InlineResponse401} obj Optional instance to populate. + * @return {module:model/InlineResponse401} The populated InlineResponse401 instance. + */ + + }, { + key: "constructFromObject", + value: function constructFromObject(data, obj) { + if (data) { + obj = obj || new InlineResponse401(); + + if (data.hasOwnProperty('error')) { + obj['error'] = _Error["default"].constructFromObject(data['error']); + } + } + + return obj; + } + }]); + + return InlineResponse401; +}(); +/** + * @member {module:model/Error} error + */ + + +InlineResponse401.prototype['error'] = undefined; +var _default = InlineResponse401; +exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/LimitedUser.js b/dist/model/LimitedUser.js new file mode 100644 index 0000000..ae98015 --- /dev/null +++ b/dist/model/LimitedUser.js @@ -0,0 +1,246 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var _ApiClient = _interopRequireDefault(require("../ApiClient")); + +var _DeveloperType = _interopRequireDefault(require("./DeveloperType")); + +var _UserStatus = _interopRequireDefault(require("./UserStatus")); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +/** + * The LimitedUser model module. + * @module model/LimitedUser + * @version 1.0.0 + */ +var LimitedUser = /*#__PURE__*/function () { + /** + * Constructs a new LimitedUser. + * @alias module:model/LimitedUser + * @param id {String} + * @param username {String} + * @param displayName {String} + * @param userIcon {String} + * @param profilePicOverride {String} + * @param statusDescription {String} + * @param currentAvatarImageUrl {String} + * @param currentAvatarThumbnailImageUrl {String} + * @param fallbackAvatar {String} + * @param developerType {module:model/DeveloperType} + * @param lastPlatform {String} + * @param status {module:model/UserStatus} + * @param isFriend {Boolean} + * @param location {String} + * @param tags {Array.} Always empty + */ + function LimitedUser(id, username, displayName, userIcon, profilePicOverride, statusDescription, currentAvatarImageUrl, currentAvatarThumbnailImageUrl, fallbackAvatar, developerType, lastPlatform, status, isFriend, location, tags) { + _classCallCheck(this, LimitedUser); + + LimitedUser.initialize(this, id, username, displayName, userIcon, profilePicOverride, statusDescription, currentAvatarImageUrl, currentAvatarThumbnailImageUrl, fallbackAvatar, developerType, lastPlatform, status, isFriend, location, tags); + } + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + + + _createClass(LimitedUser, null, [{ + key: "initialize", + value: function initialize(obj, id, username, displayName, userIcon, profilePicOverride, statusDescription, currentAvatarImageUrl, currentAvatarThumbnailImageUrl, fallbackAvatar, developerType, lastPlatform, status, isFriend, location, tags) { + obj['id'] = id; + obj['username'] = username; + obj['displayName'] = displayName; + obj['userIcon'] = userIcon; + obj['profilePicOverride'] = profilePicOverride; + obj['statusDescription'] = statusDescription; + obj['currentAvatarImageUrl'] = currentAvatarImageUrl; + obj['currentAvatarThumbnailImageUrl'] = currentAvatarThumbnailImageUrl; + obj['fallbackAvatar'] = fallbackAvatar; + obj['developerType'] = developerType; + obj['last_platform'] = lastPlatform; + obj['status'] = status; + obj['isFriend'] = isFriend; + obj['location'] = location; + obj['tags'] = tags; + } + /** + * Constructs a LimitedUser from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/LimitedUser} obj Optional instance to populate. + * @return {module:model/LimitedUser} The populated LimitedUser instance. + */ + + }, { + key: "constructFromObject", + value: function constructFromObject(data, obj) { + if (data) { + obj = obj || new LimitedUser(); + + if (data.hasOwnProperty('id')) { + obj['id'] = _ApiClient["default"].convertToType(data['id'], 'String'); + } + + if (data.hasOwnProperty('username')) { + obj['username'] = _ApiClient["default"].convertToType(data['username'], 'String'); + } + + if (data.hasOwnProperty('displayName')) { + obj['displayName'] = _ApiClient["default"].convertToType(data['displayName'], 'String'); + } + + if (data.hasOwnProperty('bio')) { + obj['bio'] = _ApiClient["default"].convertToType(data['bio'], 'String'); + } + + if (data.hasOwnProperty('userIcon')) { + obj['userIcon'] = _ApiClient["default"].convertToType(data['userIcon'], 'String'); + } + + if (data.hasOwnProperty('profilePicOverride')) { + obj['profilePicOverride'] = _ApiClient["default"].convertToType(data['profilePicOverride'], 'String'); + } + + if (data.hasOwnProperty('statusDescription')) { + obj['statusDescription'] = _ApiClient["default"].convertToType(data['statusDescription'], 'String'); + } + + if (data.hasOwnProperty('currentAvatarImageUrl')) { + obj['currentAvatarImageUrl'] = _ApiClient["default"].convertToType(data['currentAvatarImageUrl'], 'String'); + } + + if (data.hasOwnProperty('currentAvatarThumbnailImageUrl')) { + obj['currentAvatarThumbnailImageUrl'] = _ApiClient["default"].convertToType(data['currentAvatarThumbnailImageUrl'], 'String'); + } + + if (data.hasOwnProperty('fallbackAvatar')) { + obj['fallbackAvatar'] = _ApiClient["default"].convertToType(data['fallbackAvatar'], 'String'); + } + + if (data.hasOwnProperty('developerType')) { + obj['developerType'] = _DeveloperType["default"].constructFromObject(data['developerType']); + } + + if (data.hasOwnProperty('last_platform')) { + obj['last_platform'] = _ApiClient["default"].convertToType(data['last_platform'], 'String'); + } + + if (data.hasOwnProperty('status')) { + obj['status'] = _UserStatus["default"].constructFromObject(data['status']); + } + + if (data.hasOwnProperty('isFriend')) { + obj['isFriend'] = _ApiClient["default"].convertToType(data['isFriend'], 'Boolean'); + } + + if (data.hasOwnProperty('location')) { + obj['location'] = _ApiClient["default"].convertToType(data['location'], 'String'); + } + + if (data.hasOwnProperty('tags')) { + obj['tags'] = _ApiClient["default"].convertToType(data['tags'], ['String']); + } + } + + return obj; + } + }]); + + return LimitedUser; +}(); +/** + * @member {String} id + */ + + +LimitedUser.prototype['id'] = undefined; +/** + * @member {String} username + */ + +LimitedUser.prototype['username'] = undefined; +/** + * @member {String} displayName + */ + +LimitedUser.prototype['displayName'] = undefined; +/** + * @member {String} bio + */ + +LimitedUser.prototype['bio'] = undefined; +/** + * @member {String} userIcon + */ + +LimitedUser.prototype['userIcon'] = undefined; +/** + * @member {String} profilePicOverride + */ + +LimitedUser.prototype['profilePicOverride'] = undefined; +/** + * @member {String} statusDescription + */ + +LimitedUser.prototype['statusDescription'] = undefined; +/** + * @member {String} currentAvatarImageUrl + */ + +LimitedUser.prototype['currentAvatarImageUrl'] = undefined; +/** + * @member {String} currentAvatarThumbnailImageUrl + */ + +LimitedUser.prototype['currentAvatarThumbnailImageUrl'] = undefined; +/** + * @member {String} fallbackAvatar + */ + +LimitedUser.prototype['fallbackAvatar'] = undefined; +/** + * @member {module:model/DeveloperType} developerType + */ + +LimitedUser.prototype['developerType'] = undefined; +/** + * @member {String} last_platform + */ + +LimitedUser.prototype['last_platform'] = undefined; +/** + * @member {module:model/UserStatus} status + */ + +LimitedUser.prototype['status'] = undefined; +/** + * @member {Boolean} isFriend + */ + +LimitedUser.prototype['isFriend'] = undefined; +/** + * @member {String} location + */ + +LimitedUser.prototype['location'] = undefined; +/** + * Always empty + * @member {Array.} tags + */ + +LimitedUser.prototype['tags'] = undefined; +var _default = LimitedUser; +exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/LimitedWorld.js b/dist/model/LimitedWorld.js new file mode 100644 index 0000000..220bbd5 --- /dev/null +++ b/dist/model/LimitedWorld.js @@ -0,0 +1,270 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var _ApiClient = _interopRequireDefault(require("../ApiClient")); + +var _ReleaseStatus = _interopRequireDefault(require("./ReleaseStatus")); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +/** + * The LimitedWorld model module. + * @module model/LimitedWorld + * @version 1.0.0 + */ +var LimitedWorld = /*#__PURE__*/function () { + /** + * Constructs a new LimitedWorld. + * @alias module:model/LimitedWorld + * @param authorId {String} + * @param authorName {String} + * @param capacity {Number} + * @param favorites {Number} + * @param heat {Number} + * @param id {String} + * @param imageUrl {String} + * @param name {String} + * @param organization {String} + * @param popularity {Number} + * @param publicationDate {String} + * @param releaseStatus {module:model/ReleaseStatus} + * @param tags {Array.} + * @param thumbnailImageUrl {String} + * @param unityPackages {Array.} + */ + function LimitedWorld(authorId, authorName, capacity, favorites, heat, id, imageUrl, name, organization, popularity, publicationDate, releaseStatus, tags, thumbnailImageUrl, unityPackages) { + _classCallCheck(this, LimitedWorld); + + LimitedWorld.initialize(this, authorId, authorName, capacity, favorites, heat, id, imageUrl, name, organization, popularity, publicationDate, releaseStatus, tags, thumbnailImageUrl, unityPackages); + } + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + + + _createClass(LimitedWorld, null, [{ + key: "initialize", + value: function initialize(obj, authorId, authorName, capacity, favorites, heat, id, imageUrl, name, organization, popularity, publicationDate, releaseStatus, tags, thumbnailImageUrl, unityPackages) { + obj['authorId'] = authorId; + obj['authorName'] = authorName; + obj['capacity'] = capacity; + obj['favorites'] = favorites; + obj['heat'] = heat; + obj['id'] = id; + obj['imageUrl'] = imageUrl; + obj['name'] = name; + obj['organization'] = organization; + obj['popularity'] = popularity; + obj['publicationDate'] = publicationDate; + obj['releaseStatus'] = releaseStatus; + obj['tags'] = tags; + obj['thumbnailImageUrl'] = thumbnailImageUrl; + obj['unityPackages'] = unityPackages; + } + /** + * Constructs a LimitedWorld from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/LimitedWorld} obj Optional instance to populate. + * @return {module:model/LimitedWorld} The populated LimitedWorld instance. + */ + + }, { + key: "constructFromObject", + value: function constructFromObject(data, obj) { + if (data) { + obj = obj || new LimitedWorld(); + + if (data.hasOwnProperty('authorId')) { + obj['authorId'] = _ApiClient["default"].convertToType(data['authorId'], 'String'); + } + + if (data.hasOwnProperty('authorName')) { + obj['authorName'] = _ApiClient["default"].convertToType(data['authorName'], 'String'); + } + + if (data.hasOwnProperty('capacity')) { + obj['capacity'] = _ApiClient["default"].convertToType(data['capacity'], 'Number'); + } + + if (data.hasOwnProperty('created_at')) { + obj['created_at'] = _ApiClient["default"].convertToType(data['created_at'], 'Date'); + } + + if (data.hasOwnProperty('favorites')) { + obj['favorites'] = _ApiClient["default"].convertToType(data['favorites'], 'Number'); + } + + if (data.hasOwnProperty('heat')) { + obj['heat'] = _ApiClient["default"].convertToType(data['heat'], 'Number'); + } + + if (data.hasOwnProperty('id')) { + obj['id'] = _ApiClient["default"].convertToType(data['id'], 'String'); + } + + if (data.hasOwnProperty('imageUrl')) { + obj['imageUrl'] = _ApiClient["default"].convertToType(data['imageUrl'], 'String'); + } + + if (data.hasOwnProperty('labsPublicationDate')) { + obj['labsPublicationDate'] = _ApiClient["default"].convertToType(data['labsPublicationDate'], 'String'); + } + + if (data.hasOwnProperty('name')) { + obj['name'] = _ApiClient["default"].convertToType(data['name'], 'String'); + } + + if (data.hasOwnProperty('occupants')) { + obj['occupants'] = _ApiClient["default"].convertToType(data['occupants'], 'Number'); + } + + if (data.hasOwnProperty('organization')) { + obj['organization'] = _ApiClient["default"].convertToType(data['organization'], 'String'); + } + + if (data.hasOwnProperty('popularity')) { + obj['popularity'] = _ApiClient["default"].convertToType(data['popularity'], 'Number'); + } + + if (data.hasOwnProperty('publicationDate')) { + obj['publicationDate'] = _ApiClient["default"].convertToType(data['publicationDate'], 'String'); + } + + if (data.hasOwnProperty('releaseStatus')) { + obj['releaseStatus'] = _ReleaseStatus["default"].constructFromObject(data['releaseStatus']); + } + + if (data.hasOwnProperty('tags')) { + obj['tags'] = _ApiClient["default"].convertToType(data['tags'], ['String']); + } + + if (data.hasOwnProperty('thumbnailImageUrl')) { + obj['thumbnailImageUrl'] = _ApiClient["default"].convertToType(data['thumbnailImageUrl'], 'String'); + } + + if (data.hasOwnProperty('unityPackages')) { + obj['unityPackages'] = _ApiClient["default"].convertToType(data['unityPackages'], [Object]); + } + + if (data.hasOwnProperty('updated_at')) { + obj['updated_at'] = _ApiClient["default"].convertToType(data['updated_at'], 'Date'); + } + } + + return obj; + } + }]); + + return LimitedWorld; +}(); +/** + * @member {String} authorId + */ + + +LimitedWorld.prototype['authorId'] = undefined; +/** + * @member {String} authorName + */ + +LimitedWorld.prototype['authorName'] = undefined; +/** + * @member {Number} capacity + */ + +LimitedWorld.prototype['capacity'] = undefined; +/** + * @member {Date} created_at + */ + +LimitedWorld.prototype['created_at'] = undefined; +/** + * @member {Number} favorites + */ + +LimitedWorld.prototype['favorites'] = undefined; +/** + * @member {Number} heat + */ + +LimitedWorld.prototype['heat'] = undefined; +/** + * @member {String} id + */ + +LimitedWorld.prototype['id'] = undefined; +/** + * @member {String} imageUrl + */ + +LimitedWorld.prototype['imageUrl'] = undefined; +/** + * @member {String} labsPublicationDate + */ + +LimitedWorld.prototype['labsPublicationDate'] = undefined; +/** + * @member {String} name + */ + +LimitedWorld.prototype['name'] = undefined; +/** + * @member {Number} occupants + */ + +LimitedWorld.prototype['occupants'] = undefined; +/** + * @member {String} organization + */ + +LimitedWorld.prototype['organization'] = undefined; +/** + * @member {Number} popularity + */ + +LimitedWorld.prototype['popularity'] = undefined; +/** + * @member {String} publicationDate + */ + +LimitedWorld.prototype['publicationDate'] = undefined; +/** + * @member {module:model/ReleaseStatus} releaseStatus + */ + +LimitedWorld.prototype['releaseStatus'] = undefined; +/** + * @member {Array.} tags + */ + +LimitedWorld.prototype['tags'] = undefined; +/** + * @member {String} thumbnailImageUrl + */ + +LimitedWorld.prototype['thumbnailImageUrl'] = undefined; +/** + * @member {Array.} unityPackages + */ + +LimitedWorld.prototype['unityPackages'] = undefined; +/** + * @member {Date} updated_at + */ + +LimitedWorld.prototype['updated_at'] = undefined; +var _default = LimitedWorld; +exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/MIMEType.js b/dist/model/MIMEType.js new file mode 100644 index 0000000..f3bf744 --- /dev/null +++ b/dist/model/MIMEType.js @@ -0,0 +1,74 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var _ApiClient = _interopRequireDefault(require("../ApiClient")); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } + +/** +* Enum class MIMEType. +* @enum {} +* @readonly +*/ +var MIMEType = /*#__PURE__*/function () { + function MIMEType() { + _classCallCheck(this, MIMEType); + + _defineProperty(this, "image⁄jpeg", "image⁄jpeg"); + + _defineProperty(this, "image⁄jpg", "image⁄jpg"); + + _defineProperty(this, "image⁄png", "image⁄png"); + + _defineProperty(this, "image⁄webp", "image⁄webp"); + + _defineProperty(this, "image⁄gif", "image⁄gif"); + + _defineProperty(this, "image⁄bmp", "image⁄bmp"); + + _defineProperty(this, "image⁄svg+xml", "image⁄svg+xml"); + + _defineProperty(this, "image⁄tiff", "image⁄tiff"); + + _defineProperty(this, "application⁄x-avatar", "application⁄x-avatar"); + + _defineProperty(this, "application⁄x-world", "application⁄x-world"); + + _defineProperty(this, "application⁄gzip", "application⁄gzip"); + + _defineProperty(this, "application/x-rsync-signature", "application/x-rsync-signature"); + + _defineProperty(this, "application/x-rsync-delta", "application/x-rsync-delta"); + + _defineProperty(this, "application/octet-stream", "application/octet-stream"); + } + + _createClass(MIMEType, null, [{ + key: "constructFromObject", + value: + /** + * Returns a MIMEType enum value from a Javascript object name. + * @param {Object} data The plain JavaScript object containing the name of the enum value. + * @return {module:model/MIMEType} The enum MIMEType value. + */ + function constructFromObject(object) { + return object; + } + }]); + + return MIMEType; +}(); + +exports["default"] = MIMEType; \ No newline at end of file diff --git a/dist/model/Notification.js b/dist/model/Notification.js new file mode 100644 index 0000000..48a2845 --- /dev/null +++ b/dist/model/Notification.js @@ -0,0 +1,162 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var _ApiClient = _interopRequireDefault(require("../ApiClient")); + +var _NotificationType = _interopRequireDefault(require("./NotificationType")); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +/** + * The Notification model module. + * @module model/Notification + * @version 1.0.0 + */ +var Notification = /*#__PURE__*/function () { + /** + * Constructs a new Notification. + * + * @alias module:model/Notification + * @param id {String} + * @param senderUserId {String} + * @param senderUsername {String} + * @param type {module:model/NotificationType} + * @param message {String} + * @param details {String} **NOTICE:** This is not a JSON object, this is a json **encoded** object, meaning you have to json-de-encode to get the NotificationDetail object depending on the NotificationType. + * @param seen {Boolean} + * @param createdAt {Date} + */ + function Notification(id, senderUserId, senderUsername, type, message, details, seen, createdAt) { + _classCallCheck(this, Notification); + + Notification.initialize(this, id, senderUserId, senderUsername, type, message, details, seen, createdAt); + } + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + + + _createClass(Notification, null, [{ + key: "initialize", + value: function initialize(obj, id, senderUserId, senderUsername, type, message, details, seen, createdAt) { + obj['id'] = id; + obj['senderUserId'] = senderUserId; + obj['senderUsername'] = senderUsername; + obj['type'] = type; + obj['message'] = message; + obj['details'] = details || '{}'; + obj['seen'] = seen || false; + obj['created_at'] = createdAt; + } + /** + * Constructs a Notification from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/Notification} obj Optional instance to populate. + * @return {module:model/Notification} The populated Notification instance. + */ + + }, { + key: "constructFromObject", + value: function constructFromObject(data, obj) { + if (data) { + obj = obj || new Notification(); + + if (data.hasOwnProperty('id')) { + obj['id'] = _ApiClient["default"].convertToType(data['id'], 'String'); + } + + if (data.hasOwnProperty('senderUserId')) { + obj['senderUserId'] = _ApiClient["default"].convertToType(data['senderUserId'], 'String'); + } + + if (data.hasOwnProperty('senderUsername')) { + obj['senderUsername'] = _ApiClient["default"].convertToType(data['senderUsername'], 'String'); + } + + if (data.hasOwnProperty('type')) { + obj['type'] = _NotificationType["default"].constructFromObject(data['type']); + } + + if (data.hasOwnProperty('message')) { + obj['message'] = _ApiClient["default"].convertToType(data['message'], 'String'); + } + + if (data.hasOwnProperty('details')) { + obj['details'] = _ApiClient["default"].convertToType(data['details'], 'String'); + } + + if (data.hasOwnProperty('seen')) { + obj['seen'] = _ApiClient["default"].convertToType(data['seen'], 'Boolean'); + } + + if (data.hasOwnProperty('created_at')) { + obj['created_at'] = _ApiClient["default"].convertToType(data['created_at'], 'Date'); + } + } + + return obj; + } + }]); + + return Notification; +}(); +/** + * @member {String} id + */ + + +Notification.prototype['id'] = undefined; +/** + * @member {String} senderUserId + */ + +Notification.prototype['senderUserId'] = undefined; +/** + * @member {String} senderUsername + */ + +Notification.prototype['senderUsername'] = undefined; +/** + * @member {module:model/NotificationType} type + */ + +Notification.prototype['type'] = undefined; +/** + * + * @member {String} message + */ + +Notification.prototype['message'] = undefined; +/** + * **NOTICE:** This is not a JSON object, this is a json **encoded** object, meaning you have to json-de-encode to get the NotificationDetail object depending on the NotificationType. + * @member {String} details + * @default '{}' + */ + +Notification.prototype['details'] = '{}'; +/** + * @member {Boolean} seen + * @default false + */ + +Notification.prototype['seen'] = false; +/** + * @member {Date} created_at + */ + +Notification.prototype['created_at'] = undefined; +var _default = Notification; +exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/NotificationType.js b/dist/model/NotificationType.js new file mode 100644 index 0000000..15f9696 --- /dev/null +++ b/dist/model/NotificationType.js @@ -0,0 +1,60 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var _ApiClient = _interopRequireDefault(require("../ApiClient")); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } + +/** +* Enum class NotificationType. +* @enum {} +* @readonly +*/ +var NotificationType = /*#__PURE__*/function () { + function NotificationType() { + _classCallCheck(this, NotificationType); + + _defineProperty(this, "all", "all"); + + _defineProperty(this, "broadcast", "broadcast"); + + _defineProperty(this, "friendRequest", "friendRequest"); + + _defineProperty(this, "invite", "invite"); + + _defineProperty(this, "message", "message"); + + _defineProperty(this, "RequestInvite", "RequestInvite"); + + _defineProperty(this, "votetokick", "votetokick"); + } + + _createClass(NotificationType, null, [{ + key: "constructFromObject", + value: + /** + * Returns a NotificationType enum value from a Javascript object name. + * @param {Object} data The plain JavaScript object containing the name of the enum value. + * @return {module:model/NotificationType} The enum NotificationType value. + */ + function constructFromObject(object) { + return object; + } + }]); + + return NotificationType; +}(); + +exports["default"] = NotificationType; \ No newline at end of file diff --git a/dist/model/ReleaseStatus.js b/dist/model/ReleaseStatus.js new file mode 100644 index 0000000..55ff796 --- /dev/null +++ b/dist/model/ReleaseStatus.js @@ -0,0 +1,52 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var _ApiClient = _interopRequireDefault(require("../ApiClient")); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } + +/** +* Enum class ReleaseStatus. +* @enum {} +* @readonly +*/ +var ReleaseStatus = /*#__PURE__*/function () { + function ReleaseStatus() { + _classCallCheck(this, ReleaseStatus); + + _defineProperty(this, "public", "public"); + + _defineProperty(this, "private", "private"); + + _defineProperty(this, "hidden", "hidden"); + } + + _createClass(ReleaseStatus, null, [{ + key: "constructFromObject", + value: + /** + * Returns a ReleaseStatus enum value from a Javascript object name. + * @param {Object} data The plain JavaScript object containing the name of the enum value. + * @return {module:model/ReleaseStatus} The enum ReleaseStatus value. + */ + function constructFromObject(object) { + return object; + } + }]); + + return ReleaseStatus; +}(); + +exports["default"] = ReleaseStatus; \ No newline at end of file diff --git a/dist/model/Response.js b/dist/model/Response.js new file mode 100644 index 0000000..38aeeb1 --- /dev/null +++ b/dist/model/Response.js @@ -0,0 +1,89 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var _ApiClient = _interopRequireDefault(require("../ApiClient")); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +/** + * The Response model module. + * @module model/Response + * @version 1.0.0 + */ +var Response = /*#__PURE__*/function () { + /** + * Constructs a new Response. + * @alias module:model/Response + * @param message {String} + * @param statusCode {Number} + */ + function Response(message, statusCode) { + _classCallCheck(this, Response); + + Response.initialize(this, message, statusCode); + } + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + + + _createClass(Response, null, [{ + key: "initialize", + value: function initialize(obj, message, statusCode) { + obj['message'] = message; + obj['status_code'] = statusCode; + } + /** + * Constructs a Response from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/Response} obj Optional instance to populate. + * @return {module:model/Response} The populated Response instance. + */ + + }, { + key: "constructFromObject", + value: function constructFromObject(data, obj) { + if (data) { + obj = obj || new Response(); + + if (data.hasOwnProperty('message')) { + obj['message'] = _ApiClient["default"].convertToType(data['message'], 'String'); + } + + if (data.hasOwnProperty('status_code')) { + obj['status_code'] = _ApiClient["default"].convertToType(data['status_code'], 'Number'); + } + } + + return obj; + } + }]); + + return Response; +}(); +/** + * @member {String} message + */ + + +Response.prototype['message'] = undefined; +/** + * @member {Number} status_code + */ + +Response.prototype['status_code'] = undefined; +var _default = Response; +exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/Success.js b/dist/model/Success.js new file mode 100644 index 0000000..f5a8459 --- /dev/null +++ b/dist/model/Success.js @@ -0,0 +1,77 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var _ApiClient = _interopRequireDefault(require("../ApiClient")); + +var _Response = _interopRequireDefault(require("./Response")); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +/** + * The Success model module. + * @module model/Success + * @version 1.0.0 + */ +var Success = /*#__PURE__*/function () { + /** + * Constructs a new Success. + * @alias module:model/Success + */ + function Success() { + _classCallCheck(this, Success); + + Success.initialize(this); + } + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + + + _createClass(Success, null, [{ + key: "initialize", + value: function initialize(obj) {} + /** + * Constructs a Success from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/Success} obj Optional instance to populate. + * @return {module:model/Success} The populated Success instance. + */ + + }, { + key: "constructFromObject", + value: function constructFromObject(data, obj) { + if (data) { + obj = obj || new Success(); + + if (data.hasOwnProperty('success')) { + obj['success'] = _Response["default"].constructFromObject(data['success']); + } + } + + return obj; + } + }]); + + return Success; +}(); +/** + * @member {module:model/Response} success + */ + + +Success.prototype['success'] = undefined; +var _default = Success; +exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/User.js b/dist/model/User.js new file mode 100644 index 0000000..d0e5f1f --- /dev/null +++ b/dist/model/User.js @@ -0,0 +1,331 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var _ApiClient = _interopRequireDefault(require("../ApiClient")); + +var _DeveloperType = _interopRequireDefault(require("./DeveloperType")); + +var _UserState = _interopRequireDefault(require("./UserState")); + +var _UserStatus = _interopRequireDefault(require("./UserStatus")); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +/** + * The User model module. + * @module model/User + * @version 1.0.0 + */ +var User = /*#__PURE__*/function () { + /** + * Constructs a new User. + * @alias module:model/User + * @param id {String} + * @param username {String} + * @param displayName {String} + * @param userIcon {String} + * @param bio {String} + * @param bioLinks {Array.} + * @param profilePicOverride {String} + * @param statusDescription {String} + * @param currentAvatarImageUrl {String} + * @param currentAvatarThumbnailImageUrl {String} + * @param fallbackAvatar {String} + * @param state {module:model/UserState} + * @param tags {Array.} + * @param developerType {module:model/DeveloperType} + * @param lastLogin {Date} + * @param lastPlatform {String} + * @param allowAvatarCopying {Boolean} + * @param status {module:model/UserStatus} + * @param dateJoined {Date} + * @param isFriend {Boolean} + * @param friendKey {String} + */ + function User(id, username, displayName, userIcon, bio, bioLinks, profilePicOverride, statusDescription, currentAvatarImageUrl, currentAvatarThumbnailImageUrl, fallbackAvatar, state, tags, developerType, lastLogin, lastPlatform, allowAvatarCopying, status, dateJoined, isFriend, friendKey) { + _classCallCheck(this, User); + + User.initialize(this, id, username, displayName, userIcon, bio, bioLinks, profilePicOverride, statusDescription, currentAvatarImageUrl, currentAvatarThumbnailImageUrl, fallbackAvatar, state, tags, developerType, lastLogin, lastPlatform, allowAvatarCopying, status, dateJoined, isFriend, friendKey); + } + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + + + _createClass(User, null, [{ + key: "initialize", + value: function initialize(obj, id, username, displayName, userIcon, bio, bioLinks, profilePicOverride, statusDescription, currentAvatarImageUrl, currentAvatarThumbnailImageUrl, fallbackAvatar, state, tags, developerType, lastLogin, lastPlatform, allowAvatarCopying, status, dateJoined, isFriend, friendKey) { + obj['id'] = id; + obj['username'] = username; + obj['displayName'] = displayName; + obj['userIcon'] = userIcon; + obj['bio'] = bio; + obj['bioLinks'] = bioLinks; + obj['profilePicOverride'] = profilePicOverride; + obj['statusDescription'] = statusDescription; + obj['currentAvatarImageUrl'] = currentAvatarImageUrl; + obj['currentAvatarThumbnailImageUrl'] = currentAvatarThumbnailImageUrl; + obj['fallbackAvatar'] = fallbackAvatar; + obj['state'] = state; + obj['tags'] = tags; + obj['developerType'] = developerType; + obj['last_login'] = lastLogin; + obj['last_platform'] = lastPlatform; + obj['allowAvatarCopying'] = allowAvatarCopying; + obj['status'] = status; + obj['date_joined'] = dateJoined; + obj['isFriend'] = isFriend; + obj['friendKey'] = friendKey; + } + /** + * Constructs a User from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/User} obj Optional instance to populate. + * @return {module:model/User} The populated User instance. + */ + + }, { + key: "constructFromObject", + value: function constructFromObject(data, obj) { + if (data) { + obj = obj || new User(); + + if (data.hasOwnProperty('id')) { + obj['id'] = _ApiClient["default"].convertToType(data['id'], 'String'); + } + + if (data.hasOwnProperty('username')) { + obj['username'] = _ApiClient["default"].convertToType(data['username'], 'String'); + } + + if (data.hasOwnProperty('displayName')) { + obj['displayName'] = _ApiClient["default"].convertToType(data['displayName'], 'String'); + } + + if (data.hasOwnProperty('userIcon')) { + obj['userIcon'] = _ApiClient["default"].convertToType(data['userIcon'], 'String'); + } + + if (data.hasOwnProperty('bio')) { + obj['bio'] = _ApiClient["default"].convertToType(data['bio'], 'String'); + } + + if (data.hasOwnProperty('bioLinks')) { + obj['bioLinks'] = _ApiClient["default"].convertToType(data['bioLinks'], ['String']); + } + + if (data.hasOwnProperty('profilePicOverride')) { + obj['profilePicOverride'] = _ApiClient["default"].convertToType(data['profilePicOverride'], 'String'); + } + + if (data.hasOwnProperty('statusDescription')) { + obj['statusDescription'] = _ApiClient["default"].convertToType(data['statusDescription'], 'String'); + } + + if (data.hasOwnProperty('currentAvatarImageUrl')) { + obj['currentAvatarImageUrl'] = _ApiClient["default"].convertToType(data['currentAvatarImageUrl'], 'String'); + } + + if (data.hasOwnProperty('currentAvatarThumbnailImageUrl')) { + obj['currentAvatarThumbnailImageUrl'] = _ApiClient["default"].convertToType(data['currentAvatarThumbnailImageUrl'], 'String'); + } + + if (data.hasOwnProperty('fallbackAvatar')) { + obj['fallbackAvatar'] = _ApiClient["default"].convertToType(data['fallbackAvatar'], 'String'); + } + + if (data.hasOwnProperty('state')) { + obj['state'] = _UserState["default"].constructFromObject(data['state']); + } + + if (data.hasOwnProperty('tags')) { + obj['tags'] = _ApiClient["default"].convertToType(data['tags'], ['String']); + } + + if (data.hasOwnProperty('developerType')) { + obj['developerType'] = _DeveloperType["default"].constructFromObject(data['developerType']); + } + + if (data.hasOwnProperty('last_login')) { + obj['last_login'] = _ApiClient["default"].convertToType(data['last_login'], 'Date'); + } + + if (data.hasOwnProperty('last_platform')) { + obj['last_platform'] = _ApiClient["default"].convertToType(data['last_platform'], 'String'); + } + + if (data.hasOwnProperty('allowAvatarCopying')) { + obj['allowAvatarCopying'] = _ApiClient["default"].convertToType(data['allowAvatarCopying'], 'Boolean'); + } + + if (data.hasOwnProperty('status')) { + obj['status'] = _UserStatus["default"].constructFromObject(data['status']); + } + + if (data.hasOwnProperty('date_joined')) { + obj['date_joined'] = _ApiClient["default"].convertToType(data['date_joined'], 'Date'); + } + + if (data.hasOwnProperty('isFriend')) { + obj['isFriend'] = _ApiClient["default"].convertToType(data['isFriend'], 'Boolean'); + } + + if (data.hasOwnProperty('friendKey')) { + obj['friendKey'] = _ApiClient["default"].convertToType(data['friendKey'], 'String'); + } + + if (data.hasOwnProperty('worldId')) { + obj['worldId'] = _ApiClient["default"].convertToType(data['worldId'], 'String'); + } + + if (data.hasOwnProperty('instanceId')) { + obj['instanceId'] = _ApiClient["default"].convertToType(data['instanceId'], 'String'); + } + + if (data.hasOwnProperty('location')) { + obj['location'] = _ApiClient["default"].convertToType(data['location'], 'String'); + } + } + + return obj; + } + }]); + + return User; +}(); +/** + * @member {String} id + */ + + +User.prototype['id'] = undefined; +/** + * @member {String} username + */ + +User.prototype['username'] = undefined; +/** + * @member {String} displayName + */ + +User.prototype['displayName'] = undefined; +/** + * @member {String} userIcon + */ + +User.prototype['userIcon'] = undefined; +/** + * @member {String} bio + */ + +User.prototype['bio'] = undefined; +/** + * @member {Array.} bioLinks + */ + +User.prototype['bioLinks'] = undefined; +/** + * @member {String} profilePicOverride + */ + +User.prototype['profilePicOverride'] = undefined; +/** + * @member {String} statusDescription + */ + +User.prototype['statusDescription'] = undefined; +/** + * @member {String} currentAvatarImageUrl + */ + +User.prototype['currentAvatarImageUrl'] = undefined; +/** + * @member {String} currentAvatarThumbnailImageUrl + */ + +User.prototype['currentAvatarThumbnailImageUrl'] = undefined; +/** + * @member {String} fallbackAvatar + */ + +User.prototype['fallbackAvatar'] = undefined; +/** + * @member {module:model/UserState} state + */ + +User.prototype['state'] = undefined; +/** + * @member {Array.} tags + */ + +User.prototype['tags'] = undefined; +/** + * @member {module:model/DeveloperType} developerType + */ + +User.prototype['developerType'] = undefined; +/** + * @member {Date} last_login + */ + +User.prototype['last_login'] = undefined; +/** + * @member {String} last_platform + */ + +User.prototype['last_platform'] = undefined; +/** + * @member {Boolean} allowAvatarCopying + */ + +User.prototype['allowAvatarCopying'] = undefined; +/** + * @member {module:model/UserStatus} status + */ + +User.prototype['status'] = undefined; +/** + * @member {Date} date_joined + */ + +User.prototype['date_joined'] = undefined; +/** + * @member {Boolean} isFriend + */ + +User.prototype['isFriend'] = undefined; +/** + * @member {String} friendKey + */ + +User.prototype['friendKey'] = undefined; +/** + * @member {String} worldId + */ + +User.prototype['worldId'] = undefined; +/** + * @member {String} instanceId + */ + +User.prototype['instanceId'] = undefined; +/** + * @member {String} location + */ + +User.prototype['location'] = undefined; +var _default = User; +exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/UserState.js b/dist/model/UserState.js new file mode 100644 index 0000000..398c6a6 --- /dev/null +++ b/dist/model/UserState.js @@ -0,0 +1,52 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var _ApiClient = _interopRequireDefault(require("../ApiClient")); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } + +/** +* Enum class UserState. +* @enum {} +* @readonly +*/ +var UserState = /*#__PURE__*/function () { + function UserState() { + _classCallCheck(this, UserState); + + _defineProperty(this, "offline", "offline"); + + _defineProperty(this, "active", "active"); + + _defineProperty(this, "online", "online"); + } + + _createClass(UserState, null, [{ + key: "constructFromObject", + value: + /** + * Returns a UserState enum value from a Javascript object name. + * @param {Object} data The plain JavaScript object containing the name of the enum value. + * @return {module:model/UserState} The enum UserState value. + */ + function constructFromObject(object) { + return object; + } + }]); + + return UserState; +}(); + +exports["default"] = UserState; \ No newline at end of file diff --git a/dist/model/UserStatus.js b/dist/model/UserStatus.js new file mode 100644 index 0000000..526113b --- /dev/null +++ b/dist/model/UserStatus.js @@ -0,0 +1,56 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var _ApiClient = _interopRequireDefault(require("../ApiClient")); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } + +/** +* Enum class UserStatus. +* @enum {} +* @readonly +*/ +var UserStatus = /*#__PURE__*/function () { + function UserStatus() { + _classCallCheck(this, UserStatus); + + _defineProperty(this, "active", "active"); + + _defineProperty(this, "join me", "join me"); + + _defineProperty(this, "ask me", "ask me"); + + _defineProperty(this, "busy", "busy"); + + _defineProperty(this, "offline", "offline"); + } + + _createClass(UserStatus, null, [{ + key: "constructFromObject", + value: + /** + * Returns a UserStatus enum value from a Javascript object name. + * @param {Object} data The plain JavaScript object containing the name of the enum value. + * @return {module:model/UserStatus} The enum UserStatus value. + */ + function constructFromObject(object) { + return object; + } + }]); + + return UserStatus; +}(); + +exports["default"] = UserStatus; \ No newline at end of file diff --git a/docs/AuthenticationApi.md b/docs/AuthenticationApi.md new file mode 100644 index 0000000..c689ee8 --- /dev/null +++ b/docs/AuthenticationApi.md @@ -0,0 +1,330 @@ +# vrchatapi.AuthenticationApi + +All URIs are relative to *https://api.vrchat.cloud/api/1* + +Method | HTTP request | Description +------------- | ------------- | ------------- +[**deleteUserById**](AuthenticationApi.md#deleteUserById) | **PUT** /user/{userId}/delete | Delete User +[**getCurrentUser**](AuthenticationApi.md#getCurrentUser) | **GET** /auth/user | Login and/or Get Current User Info +[**logout**](AuthenticationApi.md#logout) | **PUT** /logout | Logout +[**verify2FA**](AuthenticationApi.md#verify2FA) | **POST** /auth/twofactorauth/totp/verify | Verify 2FA code +[**verifyAuthToken**](AuthenticationApi.md#verifyAuthToken) | **GET** /auth | Verify Auth Token +[**verifyRecoveryCode**](AuthenticationApi.md#verifyRecoveryCode) | **POST** /auth/twofactorauth/otp/verify | Verify 2FA code with Recovery code + + + +## deleteUserById + +> CurrentUser deleteUserById(userId) + +Delete User + +Deletes the account with given ID. Normal users only have permission to delete their own account. Account deletion is 14 days from this request, and will be cancelled if you do an authenticated request with the account afterwards. **VRC+ NOTE:** Despite the 14-days cooldown, any VRC+ subscription will be cancelled **immediately**. **METHOD NOTE:** Despite this being a Delete action, the method type required is PUT. + +### Example + +```javascript +import vrchatapi from 'vrchatapi'; +let defaultClient = vrchatapi.ApiClient.instance; +// Configure API key authorization: apiKeyCookie +let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; +apiKeyCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//apiKeyCookie.apiKeyPrefix = 'Token'; +// Configure API key authorization: authCookie +let authCookie = defaultClient.authentications['authCookie']; +authCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//authCookie.apiKeyPrefix = 'Token'; + +let apiInstance = new vrchatapi.AuthenticationApi(); +let userId = "userId_example"; // String | +apiInstance.deleteUserById(userId).then((data) => { + console.log('API called successfully. Returned data: ' + data); +}, (error) => { + console.error(error); +}); + +``` + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **userId** | **String**| | + +### Return type + +[**CurrentUser**](CurrentUser.md) + +### Authorization + +[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) + +### HTTP request headers + +- **Content-Type**: Not defined +- **Accept**: application/json + + +## getCurrentUser + +> CurrentUser getCurrentUser() + +Login and/or Get Current User Info + +Login and/or Get user data from your VRChat account. If `Authorization` header is present then a new login session will be generated, and a new `auth` cookie is returned. **WARNING: Session Limit:** Each authentication with login credentials counts as a separate session, out of which you have a limited amount. Make sure to save and reuse the `auth` cookie whenever you can, and avoid sending the Authorization header unless strictly neccesary. While the exact number of simultaneous open sessions is secret, expect to **very fast** run into the rate-limit and be temporarily blocked from making new sessions until the old ones expire. + +### Example + +```javascript +import vrchatapi from 'vrchatapi'; +let defaultClient = vrchatapi.ApiClient.instance; +// Configure API key authorization: authCookie +let authCookie = defaultClient.authentications['authCookie']; +authCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//authCookie.apiKeyPrefix = 'Token'; +// Configure HTTP basic authorization: authHeader +let authHeader = defaultClient.authentications['authHeader']; +authHeader.username = 'YOUR USERNAME'; +authHeader.password = 'YOUR PASSWORD'; +// Configure API key authorization: twoFactorAuthCookie +let twoFactorAuthCookie = defaultClient.authentications['twoFactorAuthCookie']; +twoFactorAuthCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//twoFactorAuthCookie.apiKeyPrefix = 'Token'; + +let apiInstance = new vrchatapi.AuthenticationApi(); +apiInstance.getCurrentUser().then((data) => { + console.log('API called successfully. Returned data: ' + data); +}, (error) => { + console.error(error); +}); + +``` + +### Parameters + +This endpoint does not need any parameter. + +### Return type + +[**CurrentUser**](CurrentUser.md) + +### Authorization + +[authCookie](../README.md#authCookie), [authHeader](../README.md#authHeader), [twoFactorAuthCookie](../README.md#twoFactorAuthCookie) + +### HTTP request headers + +- **Content-Type**: Not defined +- **Accept**: application/json + + +## logout + +> Success logout() + +Logout + +Invalidates the auth cookie. + +### Example + +```javascript +import vrchatapi from 'vrchatapi'; +let defaultClient = vrchatapi.ApiClient.instance; +// Configure API key authorization: apiKeyCookie +let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; +apiKeyCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//apiKeyCookie.apiKeyPrefix = 'Token'; +// Configure API key authorization: authCookie +let authCookie = defaultClient.authentications['authCookie']; +authCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//authCookie.apiKeyPrefix = 'Token'; + +let apiInstance = new vrchatapi.AuthenticationApi(); +apiInstance.logout().then((data) => { + console.log('API called successfully. Returned data: ' + data); +}, (error) => { + console.error(error); +}); + +``` + +### Parameters + +This endpoint does not need any parameter. + +### Return type + +[**Success**](Success.md) + +### Authorization + +[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) + +### HTTP request headers + +- **Content-Type**: Not defined +- **Accept**: application/json + + +## verify2FA + +> InlineResponse2001 verify2FA(opts) + +Verify 2FA code + +Finishes the login sequence with a normal 2FA-generated code for accounts with 2FA-protection enabled. + +### Example + +```javascript +import vrchatapi from 'vrchatapi'; +let defaultClient = vrchatapi.ApiClient.instance; +// Configure API key authorization: authCookie +let authCookie = defaultClient.authentications['authCookie']; +authCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//authCookie.apiKeyPrefix = 'Token'; + +let apiInstance = new vrchatapi.AuthenticationApi(); +let opts = { + 'inlineObject': new vrchatapi.InlineObject() // InlineObject | +}; +apiInstance.verify2FA(opts).then((data) => { + console.log('API called successfully. Returned data: ' + data); +}, (error) => { + console.error(error); +}); + +``` + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **inlineObject** | [**InlineObject**](InlineObject.md)| | [optional] + +### Return type + +[**InlineResponse2001**](InlineResponse2001.md) + +### Authorization + +[authCookie](../README.md#authCookie) + +### HTTP request headers + +- **Content-Type**: application/json +- **Accept**: application/json + + +## verifyAuthToken + +> InlineResponse200 verifyAuthToken() + +Verify Auth Token + +Verify whether the currently provided Auth Token is valid. + +### Example + +```javascript +import vrchatapi from 'vrchatapi'; +let defaultClient = vrchatapi.ApiClient.instance; +// Configure API key authorization: apiKeyCookie +let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; +apiKeyCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//apiKeyCookie.apiKeyPrefix = 'Token'; +// Configure API key authorization: authCookie +let authCookie = defaultClient.authentications['authCookie']; +authCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//authCookie.apiKeyPrefix = 'Token'; + +let apiInstance = new vrchatapi.AuthenticationApi(); +apiInstance.verifyAuthToken().then((data) => { + console.log('API called successfully. Returned data: ' + data); +}, (error) => { + console.error(error); +}); + +``` + +### Parameters + +This endpoint does not need any parameter. + +### Return type + +[**InlineResponse200**](InlineResponse200.md) + +### Authorization + +[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) + +### HTTP request headers + +- **Content-Type**: Not defined +- **Accept**: application/json + + +## verifyRecoveryCode + +> InlineResponse2001 verifyRecoveryCode(opts) + +Verify 2FA code with Recovery code + +Finishes the login sequence with an OTP (One Time Password) recovery code for accounts with 2FA-protection enabled. + +### Example + +```javascript +import vrchatapi from 'vrchatapi'; +let defaultClient = vrchatapi.ApiClient.instance; +// Configure API key authorization: authCookie +let authCookie = defaultClient.authentications['authCookie']; +authCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//authCookie.apiKeyPrefix = 'Token'; + +let apiInstance = new vrchatapi.AuthenticationApi(); +let opts = { + 'inlineObject1': new vrchatapi.InlineObject1() // InlineObject1 | +}; +apiInstance.verifyRecoveryCode(opts).then((data) => { + console.log('API called successfully. Returned data: ' + data); +}, (error) => { + console.error(error); +}); + +``` + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **inlineObject1** | [**InlineObject1**](InlineObject1.md)| | [optional] + +### Return type + +[**InlineResponse2001**](InlineResponse2001.md) + +### Authorization + +[authCookie](../README.md#authCookie) + +### HTTP request headers + +- **Content-Type**: application/json +- **Accept**: application/json + diff --git a/docs/Config.md b/docs/Config.md new file mode 100644 index 0000000..a602f82 --- /dev/null +++ b/docs/Config.md @@ -0,0 +1,83 @@ +# vrchatapi.Config + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**address** | **String** | VRChat's office address | [readonly] +**announcements** | [**[ConfigAnnouncements]**](ConfigAnnouncements.md) | PSA, Public Announcements | [readonly] +**apiKey** | **String** | apiKey to be used for all other requests | [readonly] +**appName** | **String** | Game name | [readonly] [default to 'VrChat'] +**buildVersionTag** | **String** | Build tag of the API server | [readonly] +**clientApiKey** | **String** | apiKey to be used for all other requests | [readonly] +**clientBPSCeiling** | **Number** | Unknown | [optional] +**clientDisconnectTimeout** | **Number** | Unknown | [optional] +**clientReservedPlayerBPS** | **Number** | Unknown | [optional] +**clientSentCountAllowance** | **Number** | Unknown | [optional] +**contactEmail** | **String** | VRChat's contact email | [readonly] +**copyrightEmail** | **String** | VRChat's copyright-issues-related email | [readonly] +**currentTOSVersion** | **Number** | Current version number of the Terms of Service | [readonly] +**defaultAvatar** | **String** | | +**deploymentGroup** | [**DeploymentGroup**](DeploymentGroup.md) | | +**devAppVersionStandalone** | **String** | Version number for game development build | [readonly] +**devDownloadLinkWindows** | **String** | Developer Download link | [readonly] +**devSdkUrl** | **String** | Link to download the development SDK, use downloadUrls instead | [readonly] +**devSdkVersion** | **String** | Version of the development SDK | [readonly] +**devServerVersionStandalone** | **String** | Version number for server development build | [readonly] +**disableAvatarCopying** | **Boolean** | Toggles if copying avatars should be disabled | [default to false] +**disableAvatarGating** | **Boolean** | Toggles if avatar gating should be disabled. Avatar gating restricts uploading of avatars to people with the `system_avatar_access` Tag or `admin_avatar_access` Tag | [default to false] +**disableCommunityLabs** | **Boolean** | Toggles if the Community Labs should be disabled | [default to false] +**disableCommunityLabsPromotion** | **Boolean** | Toggles if promotion out of Community Labs should be disabled | [default to false] +**disableEmail** | **Boolean** | Unknown | [optional] [default to false] +**disableEventStream** | **Boolean** | Toggles if Analytics should be disabled (this sreportedly not used in the Client) | [default to false] +**disableFeedbackGating** | **Boolean** | Toggles if feedback gating should be disabled. Feedback gating restricts submission of feedback (reporting a World or User) to people with the `system_feedback_access` Tag. | [default to false] +**disableHello** | **Boolean** | Unknown | [optional] [default to false] +**disableRegistration** | **Boolean** | Toggles if new user account registration should be disabled | [default to false] +**disableSteamNetworking** | **Boolean** | Toggles if Steam Networking should be disabled. VRChat these days uses Photon Unity Networking (PUN) instead. | [default to true] +**disableTwoFactorAuth** | **Boolean** | Toggles if 2FA should be disabled. | [default to false] +**disableUdon** | **Boolean** | Toggles if Udon should be universally disabled in-game. | [default to false] +**disableUpgradeAccount** | **Boolean** | Toggles if account upgrading \"linking with Steam/Oculus\" should be disabled. | [default to false] +**downloadLinkWindows** | **String** | Download link for game on the Oculus Rift website. | [readonly] +**downloadUrls** | [**ConfigDownloadUrls**](ConfigDownloadUrls.md) | | +**dynamicWorldRows** | [**[ConfigDynamicWorldRows]**](ConfigDynamicWorldRows.md) | Array of DynamicWorldRow objects, used by the game to display the list of world rows | [readonly] +**events** | [**ConfigEvents**](ConfigEvents.md) | | +**gearDemoRoomId** | **String** | Unknown | [readonly] +**homepageRedirectTarget** | **String** | Redirect target if you try to open the base API domain in your browser | [readonly] [default to 'https://hello.vrchat.com'] +**homeWorldId** | **String** | | +**hubWorldId** | **String** | | +**jobsEmail** | **String** | VRChat's job application email | [readonly] +**messageOfTheDay** | **String** | MOTD | [readonly] +**moderationEmail** | **String** | VRChat's moderation related email | [readonly] +**moderationQueryPeriod** | **Number** | Unknown | +**notAllowedToSelectAvatarInPrivateWorldMessage** | **String** | Used in-game to notify a user they aren't allowed to select avatars in private worlds | [readonly] +**plugin** | **String** | Extra [plugin](https://doc.photonengine.com/en-us/server/current/plugins/manual) to run in each instance | [readonly] +**releaseAppVersionStandalone** | **String** | Version number for game release build | [readonly] +**releaseSdkUrl** | **String** | Link to download the release SDK | [readonly] +**releaseSdkVersion** | **String** | Version of the release SDK | [readonly] +**releaseServerVersionStandalone** | **String** | Version number for server release build | [readonly] +**sdkDeveloperFaqUrl** | **String** | Link to the developer FAQ | [readonly] +**sdkDiscordUrl** | **String** | Link to the official VRChat Discord | [readonly] +**sdkNotAllowedToPublishMessage** | **String** | Used in the SDK to notify a user they aren't allowed to upload avatars/worlds yet | [readonly] +**sdkUnityVersion** | **String** | Unity version supported by the SDK | [readonly] +**serverName** | **String** | Server name of the API server currently responding | [readonly] +**supportEmail** | **String** | VRChat's support email | [readonly] +**timeOutWorldId** | **String** | | +**tutorialWorldId** | **String** | | +**updateRateMsMaximum** | **Number** | Unknown | [readonly] +**updateRateMsMinimum** | **Number** | Unknown | [readonly] +**updateRateMsNormal** | **Number** | Unknown | [readonly] +**updateRateMsUdonManual** | **Number** | Unknown | [readonly] +**uploadAnalysisPercent** | **Number** | Unknown | [readonly] +**urlList** | **[String]** | List of allowed URLs that bypass the \"Allow untrusted URL's\" setting in-game | [readonly] +**useReliableUdpForVoice** | **Boolean** | Unknown | [default to false] +**userUpdatePeriod** | **Number** | Unknown | [readonly] +**userVerificationDelay** | **Number** | Unknown | [readonly] +**userVerificationRetry** | **Number** | Unknown | [readonly] +**userVerificationTimeout** | **Number** | Unknown | [readonly] +**viveWindowsUrl** | **String** | Download link for game on the Steam website. | [readonly] +**whiteListedAssetUrls** | **[String]** | List of allowed URLs that are allowed to host avatar assets | [readonly] +**worldUpdatePeriod** | **Number** | Unknown | [readonly] +**youtubedlHash** | **String** | Currently used youtube-dl.exe hash in SHA-256-delimited format | [readonly] +**youtubedlVersion** | **String** | Currently used youtube-dl.exe version | [readonly] + + diff --git a/docs/ConfigAnnouncements.md b/docs/ConfigAnnouncements.md new file mode 100644 index 0000000..863db9d --- /dev/null +++ b/docs/ConfigAnnouncements.md @@ -0,0 +1,10 @@ +# vrchatapi.ConfigAnnouncements + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**name** | **String** | Announcement name | [readonly] +**text** | **String** | Announcement text | [readonly] + + diff --git a/docs/ConfigDownloadUrls.md b/docs/ConfigDownloadUrls.md new file mode 100644 index 0000000..ef5ecfc --- /dev/null +++ b/docs/ConfigDownloadUrls.md @@ -0,0 +1,11 @@ +# vrchatapi.ConfigDownloadUrls + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**sdk2** | **String** | Download link for legacy SDK2 | [readonly] +**sdk3Avatars** | **String** | Download link for SDK3 for Avatars | [readonly] +**sdk3Worlds** | **String** | Download link for SDK3 for Worlds | [readonly] + + diff --git a/docs/ConfigDynamicWorldRows.md b/docs/ConfigDynamicWorldRows.md new file mode 100644 index 0000000..063ad5f --- /dev/null +++ b/docs/ConfigDynamicWorldRows.md @@ -0,0 +1,15 @@ +# vrchatapi.ConfigDynamicWorldRows + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**index** | **Number** | | [readonly] +**name** | **String** | | [readonly] +**platform** | **String** | | [readonly] +**sortHeading** | **String** | | [readonly] +**sortOrder** | **String** | | [readonly] +**sortOwnership** | **String** | | [readonly] +**tag** | **String** | Tag to filter worlds for this row | [optional] [readonly] + + diff --git a/docs/ConfigEvents.md b/docs/ConfigEvents.md new file mode 100644 index 0000000..5db3cdc --- /dev/null +++ b/docs/ConfigEvents.md @@ -0,0 +1,18 @@ +# vrchatapi.ConfigEvents + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**distanceClose** | **Number** | Unknown | [readonly] +**distanceFactor** | **Number** | Unknown | [readonly] +**distanceFar** | **Number** | Unknown | [readonly] +**groupDistance** | **Number** | Unknown | [readonly] +**maximumBunchSize** | **Number** | Unknown | [readonly] +**notVisibleFactor** | **Number** | Unknown | [readonly] +**playerOrderBucketSize** | **Number** | Unknown | [readonly] +**playerOrderFactor** | **Number** | Unknown | [readonly] +**slowUpdateFactorThreshold** | **Number** | Unknown | [readonly] +**viewSegmentLength** | **Number** | Unknown | [readonly] + + diff --git a/docs/CurrentUser.md b/docs/CurrentUser.md new file mode 100644 index 0000000..ba918f4 --- /dev/null +++ b/docs/CurrentUser.md @@ -0,0 +1,54 @@ +# vrchatapi.CurrentUser + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**id** | **String** | | [readonly] +**username** | **String** | | +**displayName** | **String** | | +**userIcon** | **String** | | +**bio** | **String** | | +**bioLinks** | **[String]** | | +**profilePicOverride** | **String** | | +**statusDescription** | **String** | | +**pastDisplayNames** | **[String]** | | +**hasEmail** | **Boolean** | | +**hasPendingEmail** | **Boolean** | | +**obfuscatedEmail** | **String** | | +**obfuscatedPendingEmail** | **String** | | +**emailVerified** | **Boolean** | | +**hasBirthday** | **Boolean** | | +**unsubscribe** | **Boolean** | | +**statusHistory** | **[String]** | | +**statusFirstTime** | **Boolean** | | +**friends** | **[String]** | | +**friendGroupNames** | **[String]** | | +**currentAvatarImageUrl** | **String** | | +**currentAvatarThumbnailImageUrl** | **String** | | +**fallbackAvatar** | **String** | | +**currentAvatar** | **String** | | +**currentAvatarAssetUrl** | **String** | | +**accountDeletionDate** | **Date** | | [optional] +**acceptedTOSVersion** | **Number** | | +**steamId** | **String** | | +**steamDetails** | **Object** | | +**oculusId** | **String** | | +**hasLoggedInFromClient** | **Boolean** | | +**homeLocation** | **String** | | +**twoFactorAuthEnabled** | **Boolean** | | +**state** | [**UserState**](UserState.md) | | +**tags** | **[String]** | | +**developerType** | [**DeveloperType**](DeveloperType.md) | | +**lastLogin** | **Date** | | +**lastPlatform** | **String** | | +**allowAvatarCopying** | **Boolean** | | +**status** | [**UserStatus**](UserStatus.md) | | +**dateJoined** | **Date** | | [readonly] +**isFriend** | **Boolean** | | [default to false] +**friendKey** | **String** | | +**onlineFriends** | **[String]** | | +**activeFriends** | **[String]** | | +**offlineFriends** | **[String]** | | + + diff --git a/docs/DeploymentGroup.md b/docs/DeploymentGroup.md new file mode 100644 index 0000000..0781986 --- /dev/null +++ b/docs/DeploymentGroup.md @@ -0,0 +1,14 @@ +# vrchatapi.DeploymentGroup + +## Enum + + +* `blue` (value: `"blue"`) + +* `green` (value: `"green"`) + +* `grape` (value: `"grape"`) + +* `cherry` (value: `"cherry"`) + + diff --git a/docs/DeveloperType.md b/docs/DeveloperType.md new file mode 100644 index 0000000..f524561 --- /dev/null +++ b/docs/DeveloperType.md @@ -0,0 +1,14 @@ +# vrchatapi.DeveloperType + +## Enum + + +* `none` (value: `"none"`) + +* `trusted` (value: `"trusted"`) + +* `internal` (value: `"internal"`) + +* `moderator` (value: `"moderator"`) + + diff --git a/docs/Error.md b/docs/Error.md new file mode 100644 index 0000000..08123f3 --- /dev/null +++ b/docs/Error.md @@ -0,0 +1,9 @@ +# vrchatapi.Error + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**error** | [**Response**](Response.md) | | [optional] + + diff --git a/docs/File.md b/docs/File.md new file mode 100644 index 0000000..826fa14 --- /dev/null +++ b/docs/File.md @@ -0,0 +1,15 @@ +# vrchatapi.File + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**id** | **String** | | +**name** | **String** | | +**ownerId** | **String** | | [readonly] +**mimeType** | [**MIMEType**](MIMEType.md) | | +**extension** | **String** | | +**tags** | **[String]** | | +**versions** | [**[FileVersion]**](FileVersion.md) | | + + diff --git a/docs/FileData.md b/docs/FileData.md new file mode 100644 index 0000000..04e3fc2 --- /dev/null +++ b/docs/FileData.md @@ -0,0 +1,28 @@ +# vrchatapi.FileData + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**fileName** | **String** | | +**url** | **String** | | +**md5** | **String** | | +**sizeInBytes** | **Number** | | +**status** | [**FileStatus**](FileStatus.md) | | +**category** | **String** | | [readonly] +**uploadId** | **String** | | [default to ''] + + + +## Enum: CategoryEnum + + +* `multipart` (value: `"multipart"`) + +* `queued` (value: `"queued"`) + +* `simple` (value: `"simple"`) + + + + diff --git a/docs/FileStatus.md b/docs/FileStatus.md new file mode 100644 index 0000000..77ca0f3 --- /dev/null +++ b/docs/FileStatus.md @@ -0,0 +1,12 @@ +# vrchatapi.FileStatus + +## Enum + + +* `waiting` (value: `"waiting"`) + +* `complete` (value: `"complete"`) + +* `none` (value: `"none"`) + + diff --git a/docs/FileVersion.md b/docs/FileVersion.md new file mode 100644 index 0000000..0b6038a --- /dev/null +++ b/docs/FileVersion.md @@ -0,0 +1,15 @@ +# vrchatapi.FileVersion + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**version** | **Number** | Incremental version counter, can only be increased. | [default to 0] +**status** | [**FileStatus**](FileStatus.md) | | +**createdAt** | **Date** | | [readonly] +**file** | [**FileData**](FileData.md) | | [optional] +**delta** | [**FileData**](FileData.md) | | [optional] +**signature** | [**FileData**](FileData.md) | | [optional] +**deleted** | **Boolean** | Usually only present if `true` | [optional] [default to true] + + diff --git a/docs/FilesApi.md b/docs/FilesApi.md new file mode 100644 index 0000000..492b4e5 --- /dev/null +++ b/docs/FilesApi.md @@ -0,0 +1,600 @@ +# vrchatapi.FilesApi + +All URIs are relative to *https://api.vrchat.cloud/api/1* + +Method | HTTP request | Description +------------- | ------------- | ------------- +[**createFile**](FilesApi.md#createFile) | **POST** /file | Create File +[**createFileVersion**](FilesApi.md#createFileVersion) | **POST** /file/{fileId} | Create File Version +[**deleteFile**](FilesApi.md#deleteFile) | **DELETE** /file/{fileId} | Delete File +[**deleteFileVersion**](FilesApi.md#deleteFileVersion) | **DELETE** /file/{fileId}/{versionId} | Delete File Version +[**downloadFileVersion**](FilesApi.md#downloadFileVersion) | **GET** /file/{fileId}/{versionId} | Download File Version +[**finishFileDataUpload**](FilesApi.md#finishFileDataUpload) | **PUT** /file/{fileId}/{versionId}/{fileType}/finish | Finish FileData Upload +[**getFile**](FilesApi.md#getFile) | **GET** /file/{fileId} | Show File +[**getFileDataUploadStatus**](FilesApi.md#getFileDataUploadStatus) | **GET** /file/{fileId}/{versionId}/{fileType}/status | Check FileData Upload Status +[**getFiles**](FilesApi.md#getFiles) | **GET** /files | List Files +[**startFileDataUpload**](FilesApi.md#startFileDataUpload) | **PUT** /file/{fileId}/{versionId}/{fileType}/start | Start FileData Upload + + + +## createFile + +> File createFile(opts) + +Create File + +Creates a new File object + +### Example + +```javascript +import vrchatapi from 'vrchatapi'; +let defaultClient = vrchatapi.ApiClient.instance; +// Configure API key authorization: apiKeyCookie +let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; +apiKeyCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//apiKeyCookie.apiKeyPrefix = 'Token'; +// Configure API key authorization: authCookie +let authCookie = defaultClient.authentications['authCookie']; +authCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//authCookie.apiKeyPrefix = 'Token'; + +let apiInstance = new vrchatapi.FilesApi(); +let opts = { + 'inlineObject3': new vrchatapi.InlineObject3() // InlineObject3 | +}; +apiInstance.createFile(opts).then((data) => { + console.log('API called successfully. Returned data: ' + data); +}, (error) => { + console.error(error); +}); + +``` + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **inlineObject3** | [**InlineObject3**](InlineObject3.md)| | [optional] + +### Return type + +**File** + +### Authorization + +[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) + +### HTTP request headers + +- **Content-Type**: application/json +- **Accept**: application/json + + +## createFileVersion + +> File createFileVersion(fileId) + +Create File Version + +Creates a new FileVersion. Once a Version has been created, proceed to the `/file/{fileId}/{versionId}/file/start` endpoint to start a file upload. + +### Example + +```javascript +import vrchatapi from 'vrchatapi'; +let defaultClient = vrchatapi.ApiClient.instance; +// Configure API key authorization: apiKeyCookie +let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; +apiKeyCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//apiKeyCookie.apiKeyPrefix = 'Token'; +// Configure API key authorization: authCookie +let authCookie = defaultClient.authentications['authCookie']; +authCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//authCookie.apiKeyPrefix = 'Token'; + +let apiInstance = new vrchatapi.FilesApi(); +let fileId = file_00000000-0000-0000-0000-000000000000; // String | +apiInstance.createFileVersion(fileId).then((data) => { + console.log('API called successfully. Returned data: ' + data); +}, (error) => { + console.error(error); +}); + +``` + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **fileId** | **String**| | + +### Return type + +**File** + +### Authorization + +[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) + +### HTTP request headers + +- **Content-Type**: Not defined +- **Accept**: application/json + + +## deleteFile + +> Success deleteFile(fileId) + +Delete File + +Deletes a File object. + +### Example + +```javascript +import vrchatapi from 'vrchatapi'; +let defaultClient = vrchatapi.ApiClient.instance; +// Configure API key authorization: apiKeyCookie +let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; +apiKeyCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//apiKeyCookie.apiKeyPrefix = 'Token'; +// Configure API key authorization: authCookie +let authCookie = defaultClient.authentications['authCookie']; +authCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//authCookie.apiKeyPrefix = 'Token'; + +let apiInstance = new vrchatapi.FilesApi(); +let fileId = file_00000000-0000-0000-0000-000000000000; // String | +apiInstance.deleteFile(fileId).then((data) => { + console.log('API called successfully. Returned data: ' + data); +}, (error) => { + console.error(error); +}); + +``` + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **fileId** | **String**| | + +### Return type + +[**Success**](Success.md) + +### Authorization + +[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) + +### HTTP request headers + +- **Content-Type**: Not defined +- **Accept**: application/json + + +## deleteFileVersion + +> File deleteFileVersion(fileId, versionId) + +Delete File Version + +Delete a specific version of a file. You can only delete the latest version. + +### Example + +```javascript +import vrchatapi from 'vrchatapi'; +let defaultClient = vrchatapi.ApiClient.instance; +// Configure API key authorization: apiKeyCookie +let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; +apiKeyCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//apiKeyCookie.apiKeyPrefix = 'Token'; +// Configure API key authorization: authCookie +let authCookie = defaultClient.authentications['authCookie']; +authCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//authCookie.apiKeyPrefix = 'Token'; + +let apiInstance = new vrchatapi.FilesApi(); +let fileId = file_00000000-0000-0000-0000-000000000000; // String | +let versionId = 1; // Number | +apiInstance.deleteFileVersion(fileId, versionId).then((data) => { + console.log('API called successfully. Returned data: ' + data); +}, (error) => { + console.error(error); +}); + +``` + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **fileId** | **String**| | + **versionId** | **Number**| | + +### Return type + +**File** + +### Authorization + +[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) + +### HTTP request headers + +- **Content-Type**: Not defined +- **Accept**: application/json + + +## downloadFileVersion + +> downloadFileVersion(fileId, versionId) + +Download File Version + +Downloads the file with the provided version number. **Version Note:** Version 0 is always when the file was created. The real data is usually always located in version 1 and up. **Extension Note:** Files are not guaranteed to have a file extensions. UnityPackage files tends to have it, images through this endpoint do not. You are responsible for appending file extension from the `extension` field when neccesary. + +### Example + +```javascript +import vrchatapi from 'vrchatapi'; +let defaultClient = vrchatapi.ApiClient.instance; +// Configure API key authorization: apiKeyCookie +let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; +apiKeyCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//apiKeyCookie.apiKeyPrefix = 'Token'; +// Configure API key authorization: authCookie +let authCookie = defaultClient.authentications['authCookie']; +authCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//authCookie.apiKeyPrefix = 'Token'; + +let apiInstance = new vrchatapi.FilesApi(); +let fileId = file_00000000-0000-0000-0000-000000000000; // String | +let versionId = 1; // Number | +apiInstance.downloadFileVersion(fileId, versionId).then(() => { + console.log('API called successfully.'); +}, (error) => { + console.error(error); +}); + +``` + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **fileId** | **String**| | + **versionId** | **Number**| | + +### Return type + +null (empty response body) + +### Authorization + +[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) + +### HTTP request headers + +- **Content-Type**: Not defined +- **Accept**: Not defined + + +## finishFileDataUpload + +> File finishFileDataUpload(fileId, versionId, fileType, opts) + +Finish FileData Upload + +Finish an upload of a FileData. This will mark it as \"complete\". After uploading the `file` for Avatars and Worlds you then have to upload a `signature` file. + +### Example + +```javascript +import vrchatapi from 'vrchatapi'; +let defaultClient = vrchatapi.ApiClient.instance; +// Configure API key authorization: apiKeyCookie +let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; +apiKeyCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//apiKeyCookie.apiKeyPrefix = 'Token'; +// Configure API key authorization: authCookie +let authCookie = defaultClient.authentications['authCookie']; +authCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//authCookie.apiKeyPrefix = 'Token'; + +let apiInstance = new vrchatapi.FilesApi(); +let fileId = file_00000000-0000-0000-0000-000000000000; // String | +let versionId = 1; // Number | +let fileType = file; // String | +let opts = { + 'inlineObject4': new vrchatapi.InlineObject4() // InlineObject4 | +}; +apiInstance.finishFileDataUpload(fileId, versionId, fileType, opts).then((data) => { + console.log('API called successfully. Returned data: ' + data); +}, (error) => { + console.error(error); +}); + +``` + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **fileId** | **String**| | + **versionId** | **Number**| | + **fileType** | **String**| | + **inlineObject4** | [**InlineObject4**](InlineObject4.md)| | [optional] + +### Return type + +**File** + +### Authorization + +[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) + +### HTTP request headers + +- **Content-Type**: application/json +- **Accept**: application/json + + +## getFile + +> File getFile(fileId) + +Show File + +Shows general information about the \"File\" object. Each File can have several \"Version\"'s, and each Version can have multiple real files or \"Data\" blobs. + +### Example + +```javascript +import vrchatapi from 'vrchatapi'; +let defaultClient = vrchatapi.ApiClient.instance; +// Configure API key authorization: apiKeyCookie +let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; +apiKeyCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//apiKeyCookie.apiKeyPrefix = 'Token'; +// Configure API key authorization: authCookie +let authCookie = defaultClient.authentications['authCookie']; +authCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//authCookie.apiKeyPrefix = 'Token'; + +let apiInstance = new vrchatapi.FilesApi(); +let fileId = file_00000000-0000-0000-0000-000000000000; // String | +apiInstance.getFile(fileId).then((data) => { + console.log('API called successfully. Returned data: ' + data); +}, (error) => { + console.error(error); +}); + +``` + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **fileId** | **String**| | + +### Return type + +**File** + +### Authorization + +[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) + +### HTTP request headers + +- **Content-Type**: Not defined +- **Accept**: application/json + + +## getFileDataUploadStatus + +> InlineResponse2004 getFileDataUploadStatus(fileId, versionId, fileType) + +Check FileData Upload Status + +Retrieves the upload status for file upload. Can currently only be accessed when `status` is `waiting`. Trying to access it on a file version already uploaded currently times out. + +### Example + +```javascript +import vrchatapi from 'vrchatapi'; +let defaultClient = vrchatapi.ApiClient.instance; +// Configure API key authorization: apiKeyCookie +let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; +apiKeyCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//apiKeyCookie.apiKeyPrefix = 'Token'; +// Configure API key authorization: authCookie +let authCookie = defaultClient.authentications['authCookie']; +authCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//authCookie.apiKeyPrefix = 'Token'; + +let apiInstance = new vrchatapi.FilesApi(); +let fileId = file_00000000-0000-0000-0000-000000000000; // String | +let versionId = 1; // Number | +let fileType = file; // String | +apiInstance.getFileDataUploadStatus(fileId, versionId, fileType).then((data) => { + console.log('API called successfully. Returned data: ' + data); +}, (error) => { + console.error(error); +}); + +``` + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **fileId** | **String**| | + **versionId** | **Number**| | + **fileType** | **String**| | + +### Return type + +[**InlineResponse2004**](InlineResponse2004.md) + +### Authorization + +[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) + +### HTTP request headers + +- **Content-Type**: Not defined +- **Accept**: application/json + + +## getFiles + +> [File] getFiles(opts) + +List Files + +Returns a list of files + +### Example + +```javascript +import vrchatapi from 'vrchatapi'; +let defaultClient = vrchatapi.ApiClient.instance; +// Configure API key authorization: apiKeyCookie +let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; +apiKeyCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//apiKeyCookie.apiKeyPrefix = 'Token'; +// Configure API key authorization: authCookie +let authCookie = defaultClient.authentications['authCookie']; +authCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//authCookie.apiKeyPrefix = 'Token'; + +let apiInstance = new vrchatapi.FilesApi(); +let opts = { + 'tag': "tag_example", // String | Tag, for example \"icon\" or \"gallery\", not included by default. + 'userId': "userId_example", // String | UserID, will always generate a 500 permission error. + 'n': 60, // Number | The number of objects to return. + 'offset': 56 // Number | A zero-based offset from the default object sorting from where search results start. +}; +apiInstance.getFiles(opts).then((data) => { + console.log('API called successfully. Returned data: ' + data); +}, (error) => { + console.error(error); +}); + +``` + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **tag** | **String**| Tag, for example \"icon\" or \"gallery\", not included by default. | [optional] + **userId** | **String**| UserID, will always generate a 500 permission error. | [optional] + **n** | **Number**| The number of objects to return. | [optional] [default to 60] + **offset** | **Number**| A zero-based offset from the default object sorting from where search results start. | [optional] + +### Return type + +**[File]** + +### Authorization + +[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) + +### HTTP request headers + +- **Content-Type**: Not defined +- **Accept**: application/json + + +## startFileDataUpload + +> InlineResponse2005 startFileDataUpload(fileId, versionId, fileType, partNumber) + +Start FileData Upload + +Starts an upload of a specific FilePart. This endpoint will return an AWS URL which you can PUT data to. You need to call this and receive a new AWS API URL for each `partNumber`. Please see AWS's REST documentation on \"PUT Object to S3\" on how to upload. Once all parts has been uploaded, proceed to `/finish` endpoint. **Note:** `nextPartNumber` seems like it is always ignored. Despite it returning 0, first partNumber is always 1. + +### Example + +```javascript +import vrchatapi from 'vrchatapi'; +let defaultClient = vrchatapi.ApiClient.instance; +// Configure API key authorization: apiKeyCookie +let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; +apiKeyCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//apiKeyCookie.apiKeyPrefix = 'Token'; +// Configure API key authorization: authCookie +let authCookie = defaultClient.authentications['authCookie']; +authCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//authCookie.apiKeyPrefix = 'Token'; + +let apiInstance = new vrchatapi.FilesApi(); +let fileId = file_00000000-0000-0000-0000-000000000000; // String | +let versionId = 1; // Number | +let fileType = file; // String | +let partNumber = 1; // Number | +apiInstance.startFileDataUpload(fileId, versionId, fileType, partNumber).then((data) => { + console.log('API called successfully. Returned data: ' + data); +}, (error) => { + console.error(error); +}); + +``` + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **fileId** | **String**| | + **versionId** | **Number**| | + **fileType** | **String**| | + **partNumber** | **Number**| | + +### Return type + +[**InlineResponse2005**](InlineResponse2005.md) + +### Authorization + +[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) + +### HTTP request headers + +- **Content-Type**: Not defined +- **Accept**: application/json + diff --git a/docs/FriendsApi.md b/docs/FriendsApi.md new file mode 100644 index 0000000..db79599 --- /dev/null +++ b/docs/FriendsApi.md @@ -0,0 +1,294 @@ +# vrchatapi.FriendsApi + +All URIs are relative to *https://api.vrchat.cloud/api/1* + +Method | HTTP request | Description +------------- | ------------- | ------------- +[**deleteFriendRequest**](FriendsApi.md#deleteFriendRequest) | **DELETE** /user/{userId}/friendRequest | Delete Friend Request +[**friend**](FriendsApi.md#friend) | **POST** /user/{userId}/friendRequest | Send Friend Request +[**getFriendStatus**](FriendsApi.md#getFriendStatus) | **GET** /user/{userId}/friendStatus | Check Friend Status +[**getFriends**](FriendsApi.md#getFriends) | **GET** /auth/user/friends | List Friends +[**unfriend**](FriendsApi.md#unfriend) | **DELETE** /auth/user/friends/{userId} | Unfriend + + + +## deleteFriendRequest + +> Success deleteFriendRequest(userId) + +Delete Friend Request + +Deletes an outgoing pending friend request to another user. To delete an incoming friend request, use the `deleteNotification` endpoint instead. + +### Example + +```javascript +import vrchatapi from 'vrchatapi'; +let defaultClient = vrchatapi.ApiClient.instance; +// Configure API key authorization: apiKeyCookie +let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; +apiKeyCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//apiKeyCookie.apiKeyPrefix = 'Token'; +// Configure API key authorization: authCookie +let authCookie = defaultClient.authentications['authCookie']; +authCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//authCookie.apiKeyPrefix = 'Token'; + +let apiInstance = new vrchatapi.FriendsApi(); +let userId = "userId_example"; // String | +apiInstance.deleteFriendRequest(userId).then((data) => { + console.log('API called successfully. Returned data: ' + data); +}, (error) => { + console.error(error); +}); + +``` + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **userId** | **String**| | + +### Return type + +[**Success**](Success.md) + +### Authorization + +[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) + +### HTTP request headers + +- **Content-Type**: Not defined +- **Accept**: application/json + + +## friend + +> Notification friend(userId) + +Send Friend Request + +Send a friend request to another user. + +### Example + +```javascript +import vrchatapi from 'vrchatapi'; +let defaultClient = vrchatapi.ApiClient.instance; +// Configure API key authorization: apiKeyCookie +let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; +apiKeyCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//apiKeyCookie.apiKeyPrefix = 'Token'; +// Configure API key authorization: authCookie +let authCookie = defaultClient.authentications['authCookie']; +authCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//authCookie.apiKeyPrefix = 'Token'; + +let apiInstance = new vrchatapi.FriendsApi(); +let userId = "userId_example"; // String | +apiInstance.friend(userId).then((data) => { + console.log('API called successfully. Returned data: ' + data); +}, (error) => { + console.error(error); +}); + +``` + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **userId** | **String**| | + +### Return type + +[**Notification**](Notification.md) + +### Authorization + +[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) + +### HTTP request headers + +- **Content-Type**: Not defined +- **Accept**: application/json + + +## getFriendStatus + +> InlineResponse2003 getFriendStatus(userId) + +Check Friend Status + +Retrieve if the user is currently a friend with a given user, if they have an outgoing friend request, and if they have an incoming friend request. The proper way to receive and accept friend request is by checking if the user has an incoming `Notification` of type `friendRequest`, and then accepting that notification. + +### Example + +```javascript +import vrchatapi from 'vrchatapi'; +let defaultClient = vrchatapi.ApiClient.instance; +// Configure API key authorization: apiKeyCookie +let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; +apiKeyCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//apiKeyCookie.apiKeyPrefix = 'Token'; +// Configure API key authorization: authCookie +let authCookie = defaultClient.authentications['authCookie']; +authCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//authCookie.apiKeyPrefix = 'Token'; + +let apiInstance = new vrchatapi.FriendsApi(); +let userId = "userId_example"; // String | +apiInstance.getFriendStatus(userId).then((data) => { + console.log('API called successfully. Returned data: ' + data); +}, (error) => { + console.error(error); +}); + +``` + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **userId** | **String**| | + +### Return type + +[**InlineResponse2003**](InlineResponse2003.md) + +### Authorization + +[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) + +### HTTP request headers + +- **Content-Type**: Not defined +- **Accept**: application/json + + +## getFriends + +> [LimitedUser] getFriends(opts) + +List Friends + +List information about friends. + +### Example + +```javascript +import vrchatapi from 'vrchatapi'; +let defaultClient = vrchatapi.ApiClient.instance; +// Configure API key authorization: apiKeyCookie +let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; +apiKeyCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//apiKeyCookie.apiKeyPrefix = 'Token'; +// Configure API key authorization: authCookie +let authCookie = defaultClient.authentications['authCookie']; +authCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//authCookie.apiKeyPrefix = 'Token'; + +let apiInstance = new vrchatapi.FriendsApi(); +let opts = { + 'offset': 56, // Number | A zero-based offset from the default object sorting from where search results start. + 'n': 60, // Number | The number of objects to return. + 'offline': true // Boolean | Returns *only* offline users if true, returns only online and active users if false +}; +apiInstance.getFriends(opts).then((data) => { + console.log('API called successfully. Returned data: ' + data); +}, (error) => { + console.error(error); +}); + +``` + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **offset** | **Number**| A zero-based offset from the default object sorting from where search results start. | [optional] + **n** | **Number**| The number of objects to return. | [optional] [default to 60] + **offline** | **Boolean**| Returns *only* offline users if true, returns only online and active users if false | [optional] + +### Return type + +[**[LimitedUser]**](LimitedUser.md) + +### Authorization + +[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) + +### HTTP request headers + +- **Content-Type**: Not defined +- **Accept**: application/json + + +## unfriend + +> Success unfriend(userId) + +Unfriend + +Unfriend a user by ID. + +### Example + +```javascript +import vrchatapi from 'vrchatapi'; +let defaultClient = vrchatapi.ApiClient.instance; +// Configure API key authorization: apiKeyCookie +let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; +apiKeyCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//apiKeyCookie.apiKeyPrefix = 'Token'; +// Configure API key authorization: authCookie +let authCookie = defaultClient.authentications['authCookie']; +authCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//authCookie.apiKeyPrefix = 'Token'; + +let apiInstance = new vrchatapi.FriendsApi(); +let userId = "userId_example"; // String | +apiInstance.unfriend(userId).then((data) => { + console.log('API called successfully. Returned data: ' + data); +}, (error) => { + console.error(error); +}); + +``` + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **userId** | **String**| | + +### Return type + +[**Success**](Success.md) + +### Authorization + +[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) + +### HTTP request headers + +- **Content-Type**: Not defined +- **Accept**: application/json + diff --git a/docs/InlineObject.md b/docs/InlineObject.md new file mode 100644 index 0000000..ba2a497 --- /dev/null +++ b/docs/InlineObject.md @@ -0,0 +1,9 @@ +# vrchatapi.InlineObject + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**code** | **String** | | + + diff --git a/docs/InlineObject1.md b/docs/InlineObject1.md new file mode 100644 index 0000000..9e86a8e --- /dev/null +++ b/docs/InlineObject1.md @@ -0,0 +1,9 @@ +# vrchatapi.InlineObject1 + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**code** | **String** | | + + diff --git a/docs/InlineObject2.md b/docs/InlineObject2.md new file mode 100644 index 0000000..3889d19 --- /dev/null +++ b/docs/InlineObject2.md @@ -0,0 +1,17 @@ +# vrchatapi.InlineObject2 + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**email** | **String** | | [optional] +**birthday** | **Date** | | [optional] +**acceptedTOSVersion** | **Number** | | [optional] +**tags** | **[String]** | | [optional] +**status** | [**UserStatus**](UserStatus.md) | | [optional] +**statusDescription** | **String** | | [optional] +**bio** | **String** | | [optional] +**bioLinks** | **[String]** | | [optional] +**userIcon** | **String** | MUST be a valid VRChat /file/ url. | [optional] + + diff --git a/docs/InlineObject3.md b/docs/InlineObject3.md new file mode 100644 index 0000000..58857cc --- /dev/null +++ b/docs/InlineObject3.md @@ -0,0 +1,12 @@ +# vrchatapi.InlineObject3 + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**name** | **String** | | +**mimeType** | [**MIMEType**](MIMEType.md) | | +**extension** | **String** | | +**tags** | **[String]** | | [optional] + + diff --git a/docs/InlineObject4.md b/docs/InlineObject4.md new file mode 100644 index 0000000..d3e5f5b --- /dev/null +++ b/docs/InlineObject4.md @@ -0,0 +1,29 @@ +# vrchatapi.InlineObject4 + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**etags** | **[String]** | Array of ETags uploaded. | [optional] +**nextPartNumber** | **String** | Always a zero in string form, despite how many parts uploaded. | [default to '0'] +**maxParts** | **String** | Always a zero in string form, despite how many parts uploaded. | [default to '0'] + + + +## Enum: NextPartNumberEnum + + +* `0` (value: `"0"`) + + + + + +## Enum: MaxPartsEnum + + +* `0` (value: `"0"`) + + + + diff --git a/docs/InlineResponse200.md b/docs/InlineResponse200.md new file mode 100644 index 0000000..32871ea --- /dev/null +++ b/docs/InlineResponse200.md @@ -0,0 +1,10 @@ +# vrchatapi.InlineResponse200 + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**ok** | **Boolean** | | +**token** | **String** | | + + diff --git a/docs/InlineResponse2001.md b/docs/InlineResponse2001.md new file mode 100644 index 0000000..1932822 --- /dev/null +++ b/docs/InlineResponse2001.md @@ -0,0 +1,9 @@ +# vrchatapi.InlineResponse2001 + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**verified** | **Boolean** | | + + diff --git a/docs/InlineResponse2002.md b/docs/InlineResponse2002.md new file mode 100644 index 0000000..b2a3e86 --- /dev/null +++ b/docs/InlineResponse2002.md @@ -0,0 +1,11 @@ +# vrchatapi.InlineResponse2002 + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**ok** | **Boolean** | | +**serverName** | **String** | | +**buildVersionTag** | **String** | | + + diff --git a/docs/InlineResponse2003.md b/docs/InlineResponse2003.md new file mode 100644 index 0000000..7227f1d --- /dev/null +++ b/docs/InlineResponse2003.md @@ -0,0 +1,11 @@ +# vrchatapi.InlineResponse2003 + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**isFriend** | **Boolean** | | [default to false] +**outgoingRequest** | **Boolean** | | [default to false] +**incomingRequest** | **Boolean** | | [default to false] + + diff --git a/docs/InlineResponse2004.md b/docs/InlineResponse2004.md new file mode 100644 index 0000000..f155f82 --- /dev/null +++ b/docs/InlineResponse2004.md @@ -0,0 +1,14 @@ +# vrchatapi.InlineResponse2004 + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**uploadId** | **String** | | [readonly] +**fileName** | **String** | | [readonly] +**nextPartNumber** | **Number** | | [readonly] +**maxParts** | **Number** | | [readonly] +**parts** | **[Object]** | | [readonly] +**etags** | **[Object]** | Unknown | [readonly] + + diff --git a/docs/InlineResponse2005.md b/docs/InlineResponse2005.md new file mode 100644 index 0000000..c62e70a --- /dev/null +++ b/docs/InlineResponse2005.md @@ -0,0 +1,9 @@ +# vrchatapi.InlineResponse2005 + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**url** | **String** | | + + diff --git a/docs/InlineResponse401.md b/docs/InlineResponse401.md new file mode 100644 index 0000000..937d895 --- /dev/null +++ b/docs/InlineResponse401.md @@ -0,0 +1,9 @@ +# vrchatapi.InlineResponse401 + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**error** | [**Error**](Error.md) | | + + diff --git a/docs/LimitedUser.md b/docs/LimitedUser.md new file mode 100644 index 0000000..64b87de --- /dev/null +++ b/docs/LimitedUser.md @@ -0,0 +1,24 @@ +# vrchatapi.LimitedUser + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**id** | **String** | | [readonly] +**username** | **String** | | +**displayName** | **String** | | +**bio** | **String** | | [optional] +**userIcon** | **String** | | +**profilePicOverride** | **String** | | +**statusDescription** | **String** | | +**currentAvatarImageUrl** | **String** | | +**currentAvatarThumbnailImageUrl** | **String** | | +**fallbackAvatar** | **String** | | +**developerType** | [**DeveloperType**](DeveloperType.md) | | +**lastPlatform** | **String** | | +**status** | [**UserStatus**](UserStatus.md) | | +**isFriend** | **Boolean** | | +**location** | **String** | | +**tags** | **[String]** | Always empty | + + diff --git a/docs/LimitedWorld.md b/docs/LimitedWorld.md new file mode 100644 index 0000000..8cf895b --- /dev/null +++ b/docs/LimitedWorld.md @@ -0,0 +1,27 @@ +# vrchatapi.LimitedWorld + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**authorId** | **String** | | [readonly] +**authorName** | **String** | | +**capacity** | **Number** | | +**createdAt** | **Date** | | [optional] +**favorites** | **Number** | | +**heat** | **Number** | | +**id** | **String** | | +**imageUrl** | **String** | | +**labsPublicationDate** | **String** | | [optional] +**name** | **String** | | +**occupants** | **Number** | | [optional] +**organization** | **String** | | +**popularity** | **Number** | | +**publicationDate** | **String** | | +**releaseStatus** | [**ReleaseStatus**](ReleaseStatus.md) | | +**tags** | **[String]** | | +**thumbnailImageUrl** | **String** | | +**unityPackages** | **[Object]** | | +**updatedAt** | **Date** | | [optional] + + diff --git a/docs/MIMEType.md b/docs/MIMEType.md new file mode 100644 index 0000000..7c0c94d --- /dev/null +++ b/docs/MIMEType.md @@ -0,0 +1,34 @@ +# vrchatapi.MIMEType + +## Enum + + +* `image⁄jpeg` (value: `"image⁄jpeg"`) + +* `image⁄jpg` (value: `"image⁄jpg"`) + +* `image⁄png` (value: `"image⁄png"`) + +* `image⁄webp` (value: `"image⁄webp"`) + +* `image⁄gif` (value: `"image⁄gif"`) + +* `image⁄bmp` (value: `"image⁄bmp"`) + +* `image⁄svg+xml` (value: `"image⁄svg+xml"`) + +* `image⁄tiff` (value: `"image⁄tiff"`) + +* `application⁄x-avatar` (value: `"application⁄x-avatar"`) + +* `application⁄x-world` (value: `"application⁄x-world"`) + +* `application⁄gzip` (value: `"application⁄gzip"`) + +* `application/x-rsync-signature` (value: `"application/x-rsync-signature"`) + +* `application/x-rsync-delta` (value: `"application/x-rsync-delta"`) + +* `application/octet-stream` (value: `"application/octet-stream"`) + + diff --git a/docs/Notification.md b/docs/Notification.md new file mode 100644 index 0000000..89f9f6d --- /dev/null +++ b/docs/Notification.md @@ -0,0 +1,16 @@ +# vrchatapi.Notification + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**id** | **String** | | +**senderUserId** | **String** | | [readonly] +**senderUsername** | **String** | | +**type** | [**NotificationType**](NotificationType.md) | | +**message** | **String** | | +**details** | **String** | **NOTICE:** This is not a JSON object, this is a json **encoded** object, meaning you have to json-de-encode to get the NotificationDetail object depending on the NotificationType. | [default to '{}'] +**seen** | **Boolean** | | [default to false] +**createdAt** | **Date** | | [readonly] + + diff --git a/docs/NotificationType.md b/docs/NotificationType.md new file mode 100644 index 0000000..a8ea8c7 --- /dev/null +++ b/docs/NotificationType.md @@ -0,0 +1,20 @@ +# vrchatapi.NotificationType + +## Enum + + +* `all` (value: `"all"`) + +* `broadcast` (value: `"broadcast"`) + +* `friendRequest` (value: `"friendRequest"`) + +* `invite` (value: `"invite"`) + +* `message` (value: `"message"`) + +* `RequestInvite` (value: `"RequestInvite"`) + +* `votetokick` (value: `"votetokick"`) + + diff --git a/docs/NotificationsApi.md b/docs/NotificationsApi.md new file mode 100644 index 0000000..c1a5c8f --- /dev/null +++ b/docs/NotificationsApi.md @@ -0,0 +1,296 @@ +# vrchatapi.NotificationsApi + +All URIs are relative to *https://api.vrchat.cloud/api/1* + +Method | HTTP request | Description +------------- | ------------- | ------------- +[**acceptFriendRequest**](NotificationsApi.md#acceptFriendRequest) | **PUT** /auth/user/notifications/{notificationId}/accept | Accept Friend Request +[**clearNotifications**](NotificationsApi.md#clearNotifications) | **PUT** /auth/user/notifications/clear | Clear All Notifications +[**deleteNotification**](NotificationsApi.md#deleteNotification) | **PUT** /auth/user/notifications/{notificationId}/hide | Delete Notification +[**getNotifications**](NotificationsApi.md#getNotifications) | **GET** /auth/user/notifications | List Notifications +[**markNotificationAsRead**](NotificationsApi.md#markNotificationAsRead) | **PUT** /auth/user/notifications/{notificationId}/see | Mark As Read + + + +## acceptFriendRequest + +> Success acceptFriendRequest(notificationId) + +Accept Friend Request + +Accept a friend request by notification `frq_` ID. Friend requests can be found using the NotificationsAPI `getNotifications` by filtering of type `friendRequest`. + +### Example + +```javascript +import vrchatapi from 'vrchatapi'; +let defaultClient = vrchatapi.ApiClient.instance; +// Configure API key authorization: apiKeyCookie +let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; +apiKeyCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//apiKeyCookie.apiKeyPrefix = 'Token'; +// Configure API key authorization: authCookie +let authCookie = defaultClient.authentications['authCookie']; +authCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//authCookie.apiKeyPrefix = 'Token'; + +let apiInstance = new vrchatapi.NotificationsApi(); +let notificationId = "notificationId_example"; // String | +apiInstance.acceptFriendRequest(notificationId).then((data) => { + console.log('API called successfully. Returned data: ' + data); +}, (error) => { + console.error(error); +}); + +``` + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **notificationId** | **String**| | + +### Return type + +[**Success**](Success.md) + +### Authorization + +[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) + +### HTTP request headers + +- **Content-Type**: Not defined +- **Accept**: application/json + + +## clearNotifications + +> Success clearNotifications() + +Clear All Notifications + +Clear **all** notifications. + +### Example + +```javascript +import vrchatapi from 'vrchatapi'; +let defaultClient = vrchatapi.ApiClient.instance; +// Configure API key authorization: apiKeyCookie +let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; +apiKeyCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//apiKeyCookie.apiKeyPrefix = 'Token'; +// Configure API key authorization: authCookie +let authCookie = defaultClient.authentications['authCookie']; +authCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//authCookie.apiKeyPrefix = 'Token'; + +let apiInstance = new vrchatapi.NotificationsApi(); +apiInstance.clearNotifications().then((data) => { + console.log('API called successfully. Returned data: ' + data); +}, (error) => { + console.error(error); +}); + +``` + +### Parameters + +This endpoint does not need any parameter. + +### Return type + +[**Success**](Success.md) + +### Authorization + +[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) + +### HTTP request headers + +- **Content-Type**: Not defined +- **Accept**: application/json + + +## deleteNotification + +> Notification deleteNotification(notificationId) + +Delete Notification + +Delete a notification. + +### Example + +```javascript +import vrchatapi from 'vrchatapi'; +let defaultClient = vrchatapi.ApiClient.instance; +// Configure API key authorization: apiKeyCookie +let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; +apiKeyCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//apiKeyCookie.apiKeyPrefix = 'Token'; +// Configure API key authorization: authCookie +let authCookie = defaultClient.authentications['authCookie']; +authCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//authCookie.apiKeyPrefix = 'Token'; + +let apiInstance = new vrchatapi.NotificationsApi(); +let notificationId = "notificationId_example"; // String | +apiInstance.deleteNotification(notificationId).then((data) => { + console.log('API called successfully. Returned data: ' + data); +}, (error) => { + console.error(error); +}); + +``` + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **notificationId** | **String**| | + +### Return type + +[**Notification**](Notification.md) + +### Authorization + +[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) + +### HTTP request headers + +- **Content-Type**: Not defined +- **Accept**: application/json + + +## getNotifications + +> [Notification] getNotifications(opts) + +List Notifications + +Retrieve all of the current user's notifications. + +### Example + +```javascript +import vrchatapi from 'vrchatapi'; +let defaultClient = vrchatapi.ApiClient.instance; +// Configure API key authorization: apiKeyCookie +let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; +apiKeyCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//apiKeyCookie.apiKeyPrefix = 'Token'; +// Configure API key authorization: authCookie +let authCookie = defaultClient.authentications['authCookie']; +authCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//authCookie.apiKeyPrefix = 'Token'; + +let apiInstance = new vrchatapi.NotificationsApi(); +let opts = { + 'type': all, // String | Only send notifications of this type (can use `all` for all). + 'sent': true, // Boolean | Return notifications sent by the user. Must be false or omitted. + 'hidden': true, // Boolean | Whether to return hidden or non-hidden notifications. True only allowed on type `friendRequest`. + 'after': five_minutes_ago, // String | Only return notifications sent after this Date. Ignored if type is `friendRequest`. + 'n': 60, // Number | The number of objects to return. + 'offset': 56 // Number | A zero-based offset from the default object sorting from where search results start. +}; +apiInstance.getNotifications(opts).then((data) => { + console.log('API called successfully. Returned data: ' + data); +}, (error) => { + console.error(error); +}); + +``` + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **type** | **String**| Only send notifications of this type (can use `all` for all). | [optional] + **sent** | **Boolean**| Return notifications sent by the user. Must be false or omitted. | [optional] + **hidden** | **Boolean**| Whether to return hidden or non-hidden notifications. True only allowed on type `friendRequest`. | [optional] + **after** | **String**| Only return notifications sent after this Date. Ignored if type is `friendRequest`. | [optional] + **n** | **Number**| The number of objects to return. | [optional] [default to 60] + **offset** | **Number**| A zero-based offset from the default object sorting from where search results start. | [optional] + +### Return type + +[**[Notification]**](Notification.md) + +### Authorization + +[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) + +### HTTP request headers + +- **Content-Type**: Not defined +- **Accept**: application/json + + +## markNotificationAsRead + +> Notification markNotificationAsRead(notificationId) + +Mark As Read + +Mark a notification as seen. + +### Example + +```javascript +import vrchatapi from 'vrchatapi'; +let defaultClient = vrchatapi.ApiClient.instance; +// Configure API key authorization: apiKeyCookie +let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; +apiKeyCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//apiKeyCookie.apiKeyPrefix = 'Token'; +// Configure API key authorization: authCookie +let authCookie = defaultClient.authentications['authCookie']; +authCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//authCookie.apiKeyPrefix = 'Token'; + +let apiInstance = new vrchatapi.NotificationsApi(); +let notificationId = "notificationId_example"; // String | +apiInstance.markNotificationAsRead(notificationId).then((data) => { + console.log('API called successfully. Returned data: ' + data); +}, (error) => { + console.error(error); +}); + +``` + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **notificationId** | **String**| | + +### Return type + +[**Notification**](Notification.md) + +### Authorization + +[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) + +### HTTP request headers + +- **Content-Type**: Not defined +- **Accept**: application/json + diff --git a/docs/ReleaseStatus.md b/docs/ReleaseStatus.md new file mode 100644 index 0000000..f86cd7d --- /dev/null +++ b/docs/ReleaseStatus.md @@ -0,0 +1,12 @@ +# vrchatapi.ReleaseStatus + +## Enum + + +* `public` (value: `"public"`) + +* `private` (value: `"private"`) + +* `hidden` (value: `"hidden"`) + + diff --git a/docs/Response.md b/docs/Response.md new file mode 100644 index 0000000..e7224c1 --- /dev/null +++ b/docs/Response.md @@ -0,0 +1,10 @@ +# vrchatapi.Response + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**message** | **String** | | +**statusCode** | **Number** | | + + diff --git a/docs/Success.md b/docs/Success.md new file mode 100644 index 0000000..5cb6ce8 --- /dev/null +++ b/docs/Success.md @@ -0,0 +1,9 @@ +# vrchatapi.Success + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**success** | [**Response**](Response.md) | | [optional] + + diff --git a/docs/SystemApi.md b/docs/SystemApi.md new file mode 100644 index 0000000..a1a6914 --- /dev/null +++ b/docs/SystemApi.md @@ -0,0 +1,172 @@ +# vrchatapi.SystemApi + +All URIs are relative to *https://api.vrchat.cloud/api/1* + +Method | HTTP request | Description +------------- | ------------- | ------------- +[**getConfig**](SystemApi.md#getConfig) | **GET** /config | Fetch API Config +[**getCurrentOnlineUsers**](SystemApi.md#getCurrentOnlineUsers) | **GET** /visits | Current Online Users +[**getHealth**](SystemApi.md#getHealth) | **GET** /health | Check API Health +[**getSystemTime**](SystemApi.md#getSystemTime) | **GET** /time | Current System Time + + + +## getConfig + +> Config getConfig() + +Fetch API Config + +API config contains configuration that the clients needs to work properly. Currently the most important value here is `clientApiKey` which is used for all other API endpoints. + +### Example + +```javascript +import vrchatapi from 'vrchatapi'; + +let apiInstance = new vrchatapi.SystemApi(); +apiInstance.getConfig().then((data) => { + console.log('API called successfully. Returned data: ' + data); +}, (error) => { + console.error(error); +}); + +``` + +### Parameters + +This endpoint does not need any parameter. + +### Return type + +[**Config**](Config.md) + +### Authorization + +No authorization required + +### HTTP request headers + +- **Content-Type**: Not defined +- **Accept**: application/json + + +## getCurrentOnlineUsers + +> Number getCurrentOnlineUsers() + +Current Online Users + +Returns in plain format the number of currently online users. **NOTE:** The response type is not of JSON, but is an integer in plain ASCII format. + +### Example + +```javascript +import vrchatapi from 'vrchatapi'; + +let apiInstance = new vrchatapi.SystemApi(); +apiInstance.getCurrentOnlineUsers().then((data) => { + console.log('API called successfully. Returned data: ' + data); +}, (error) => { + console.error(error); +}); + +``` + +### Parameters + +This endpoint does not need any parameter. + +### Return type + +**Number** + +### Authorization + +No authorization required + +### HTTP request headers + +- **Content-Type**: Not defined +- **Accept**: text/plain + + +## getHealth + +> InlineResponse2002 getHealth() + +Check API Health + +Gets the overall health status, the server name, and the current build version tag of the API. + +### Example + +```javascript +import vrchatapi from 'vrchatapi'; + +let apiInstance = new vrchatapi.SystemApi(); +apiInstance.getHealth().then((data) => { + console.log('API called successfully. Returned data: ' + data); +}, (error) => { + console.error(error); +}); + +``` + +### Parameters + +This endpoint does not need any parameter. + +### Return type + +[**InlineResponse2002**](InlineResponse2002.md) + +### Authorization + +No authorization required + +### HTTP request headers + +- **Content-Type**: Not defined +- **Accept**: application/json + + +## getSystemTime + +> Date getSystemTime() + +Current System Time + +Returns in plain format the current time of the API server. **NOTE:** The response type is not of JSON, but is a string in plain ASCII format. + +### Example + +```javascript +import vrchatapi from 'vrchatapi'; + +let apiInstance = new vrchatapi.SystemApi(); +apiInstance.getSystemTime().then((data) => { + console.log('API called successfully. Returned data: ' + data); +}, (error) => { + console.error(error); +}); + +``` + +### Parameters + +This endpoint does not need any parameter. + +### Return type + +**Date** + +### Authorization + +No authorization required + +### HTTP request headers + +- **Content-Type**: Not defined +- **Accept**: text/plain + diff --git a/docs/User.md b/docs/User.md new file mode 100644 index 0000000..5ea8e68 --- /dev/null +++ b/docs/User.md @@ -0,0 +1,32 @@ +# vrchatapi.User + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**id** | **String** | | [readonly] +**username** | **String** | | +**displayName** | **String** | | +**userIcon** | **String** | | +**bio** | **String** | | +**bioLinks** | **[String]** | | +**profilePicOverride** | **String** | | +**statusDescription** | **String** | | +**currentAvatarImageUrl** | **String** | | +**currentAvatarThumbnailImageUrl** | **String** | | +**fallbackAvatar** | **String** | | +**state** | [**UserState**](UserState.md) | | +**tags** | **[String]** | | +**developerType** | [**DeveloperType**](DeveloperType.md) | | +**lastLogin** | **Date** | | +**lastPlatform** | **String** | | +**allowAvatarCopying** | **Boolean** | | +**status** | [**UserStatus**](UserStatus.md) | | +**dateJoined** | **Date** | | [readonly] +**isFriend** | **Boolean** | | +**friendKey** | **String** | | +**worldId** | **String** | | [optional] +**instanceId** | **String** | | [optional] +**location** | **String** | | [optional] + + diff --git a/docs/UserState.md b/docs/UserState.md new file mode 100644 index 0000000..bdfd54b --- /dev/null +++ b/docs/UserState.md @@ -0,0 +1,12 @@ +# vrchatapi.UserState + +## Enum + + +* `offline` (value: `"offline"`) + +* `active` (value: `"active"`) + +* `online` (value: `"online"`) + + diff --git a/docs/UserStatus.md b/docs/UserStatus.md new file mode 100644 index 0000000..e8b7de0 --- /dev/null +++ b/docs/UserStatus.md @@ -0,0 +1,16 @@ +# vrchatapi.UserStatus + +## Enum + + +* `active` (value: `"active"`) + +* `join me` (value: `"join me"`) + +* `ask me` (value: `"ask me"`) + +* `busy` (value: `"busy"`) + +* `offline` (value: `"offline"`) + + diff --git a/docs/UsersApi.md b/docs/UsersApi.md new file mode 100644 index 0000000..477bd76 --- /dev/null +++ b/docs/UsersApi.md @@ -0,0 +1,308 @@ +# vrchatapi.UsersApi + +All URIs are relative to *https://api.vrchat.cloud/api/1* + +Method | HTTP request | Description +------------- | ------------- | ------------- +[**getUser**](UsersApi.md#getUser) | **GET** /users/{userId} | Get User by ID +[**getUserByName**](UsersApi.md#getUserByName) | **GET** /users/{username}/name | Get User by Username +[**searchActiveUsers**](UsersApi.md#searchActiveUsers) | **GET** /users/active | Search Active Users +[**searchUsers**](UsersApi.md#searchUsers) | **GET** /users | Search All Users +[**updateUser**](UsersApi.md#updateUser) | **PUT** /users/{userId} | Update User Info + + + +## getUser + +> User getUser(userId) + +Get User by ID + +Get public user information about a specific user using their ID. + +### Example + +```javascript +import vrchatapi from 'vrchatapi'; +let defaultClient = vrchatapi.ApiClient.instance; +// Configure API key authorization: apiKeyCookie +let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; +apiKeyCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//apiKeyCookie.apiKeyPrefix = 'Token'; +// Configure API key authorization: authCookie +let authCookie = defaultClient.authentications['authCookie']; +authCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//authCookie.apiKeyPrefix = 'Token'; + +let apiInstance = new vrchatapi.UsersApi(); +let userId = "userId_example"; // String | +apiInstance.getUser(userId).then((data) => { + console.log('API called successfully. Returned data: ' + data); +}, (error) => { + console.error(error); +}); + +``` + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **userId** | **String**| | + +### Return type + +[**User**](User.md) + +### Authorization + +[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) + +### HTTP request headers + +- **Content-Type**: Not defined +- **Accept**: application/json + + +## getUserByName + +> User getUserByName(username) + +Get User by Username + +Get public user information about a specific user using their name. + +### Example + +```javascript +import vrchatapi from 'vrchatapi'; +let defaultClient = vrchatapi.ApiClient.instance; +// Configure API key authorization: apiKeyCookie +let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; +apiKeyCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//apiKeyCookie.apiKeyPrefix = 'Token'; +// Configure API key authorization: authCookie +let authCookie = defaultClient.authentications['authCookie']; +authCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//authCookie.apiKeyPrefix = 'Token'; + +let apiInstance = new vrchatapi.UsersApi(); +let username = "username_example"; // String | +apiInstance.getUserByName(username).then((data) => { + console.log('API called successfully. Returned data: ' + data); +}, (error) => { + console.error(error); +}); + +``` + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **username** | **String**| | + +### Return type + +[**User**](User.md) + +### Authorization + +[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) + +### HTTP request headers + +- **Content-Type**: Not defined +- **Accept**: application/json + + +## searchActiveUsers + +> [LimitedUser] searchActiveUsers(search, opts) + +Search Active Users + +Search and list any Active users by text query. **Has been locked down and now always respond with \"Invalid Admin Credentials\".** + +### Example + +```javascript +import vrchatapi from 'vrchatapi'; +let defaultClient = vrchatapi.ApiClient.instance; +// Configure API key authorization: apiKeyCookie +let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; +apiKeyCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//apiKeyCookie.apiKeyPrefix = 'Token'; +// Configure API key authorization: authCookie +let authCookie = defaultClient.authentications['authCookie']; +authCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//authCookie.apiKeyPrefix = 'Token'; + +let apiInstance = new vrchatapi.UsersApi(); +let search = "search_example"; // String | Username to search for +let opts = { + 'developerType': "developerType_example", // String | Active user by developer type, none for normal users and internal for moderators + 'offset': 56, // Number | A zero-based offset from the default object sorting from where search results start. + 'n': 60 // Number | The number of objects to return. +}; +apiInstance.searchActiveUsers(search, opts).then((data) => { + console.log('API called successfully. Returned data: ' + data); +}, (error) => { + console.error(error); +}); + +``` + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **search** | **String**| Username to search for | + **developerType** | **String**| Active user by developer type, none for normal users and internal for moderators | [optional] + **offset** | **Number**| A zero-based offset from the default object sorting from where search results start. | [optional] + **n** | **Number**| The number of objects to return. | [optional] [default to 60] + +### Return type + +[**[LimitedUser]**](LimitedUser.md) + +### Authorization + +[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) + +### HTTP request headers + +- **Content-Type**: Not defined +- **Accept**: application/json + + +## searchUsers + +> [LimitedUser] searchUsers(opts) + +Search All Users + +Search and list any users by text query + +### Example + +```javascript +import vrchatapi from 'vrchatapi'; +let defaultClient = vrchatapi.ApiClient.instance; +// Configure API key authorization: apiKeyCookie +let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; +apiKeyCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//apiKeyCookie.apiKeyPrefix = 'Token'; +// Configure API key authorization: authCookie +let authCookie = defaultClient.authentications['authCookie']; +authCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//authCookie.apiKeyPrefix = 'Token'; + +let apiInstance = new vrchatapi.UsersApi(); +let opts = { + 'search': "search_example", // String | Searches by `displayName`. Will return empty array if search query is empty or missing. + 'developerType': "developerType_example", // String | Active user by developer type, none for normal users and internal for moderators + 'n': 60, // Number | The number of objects to return. + 'offset': 56 // Number | A zero-based offset from the default object sorting from where search results start. +}; +apiInstance.searchUsers(opts).then((data) => { + console.log('API called successfully. Returned data: ' + data); +}, (error) => { + console.error(error); +}); + +``` + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **search** | **String**| Searches by `displayName`. Will return empty array if search query is empty or missing. | [optional] + **developerType** | **String**| Active user by developer type, none for normal users and internal for moderators | [optional] + **n** | **Number**| The number of objects to return. | [optional] [default to 60] + **offset** | **Number**| A zero-based offset from the default object sorting from where search results start. | [optional] + +### Return type + +[**[LimitedUser]**](LimitedUser.md) + +### Authorization + +[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) + +### HTTP request headers + +- **Content-Type**: Not defined +- **Accept**: application/json + + +## updateUser + +> CurrentUser updateUser(userId, opts) + +Update User Info + +Update a users information such as the email and birthday. + +### Example + +```javascript +import vrchatapi from 'vrchatapi'; +let defaultClient = vrchatapi.ApiClient.instance; +// Configure API key authorization: apiKeyCookie +let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; +apiKeyCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//apiKeyCookie.apiKeyPrefix = 'Token'; +// Configure API key authorization: authCookie +let authCookie = defaultClient.authentications['authCookie']; +authCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//authCookie.apiKeyPrefix = 'Token'; + +let apiInstance = new vrchatapi.UsersApi(); +let userId = "userId_example"; // String | +let opts = { + 'inlineObject2': new vrchatapi.InlineObject2() // InlineObject2 | +}; +apiInstance.updateUser(userId, opts).then((data) => { + console.log('API called successfully. Returned data: ' + data); +}, (error) => { + console.error(error); +}); + +``` + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **userId** | **String**| | + **inlineObject2** | [**InlineObject2**](InlineObject2.md)| | [optional] + +### Return type + +[**CurrentUser**](CurrentUser.md) + +### Authorization + +[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) + +### HTTP request headers + +- **Content-Type**: application/json +- **Accept**: application/json + diff --git a/docs/WorldsApi.md b/docs/WorldsApi.md new file mode 100644 index 0000000..0938b15 --- /dev/null +++ b/docs/WorldsApi.md @@ -0,0 +1,96 @@ +# vrchatapi.WorldsApi + +All URIs are relative to *https://api.vrchat.cloud/api/1* + +Method | HTTP request | Description +------------- | ------------- | ------------- +[**searchWorlds**](WorldsApi.md#searchWorlds) | **GET** /worlds | Search all worlds + + + +## searchWorlds + +> [LimitedWorld] searchWorlds(opts) + +Search all worlds + +Search and list any worlds by text query + +### Example + +```javascript +import vrchatapi from 'vrchatapi'; +let defaultClient = vrchatapi.ApiClient.instance; +// Configure API key authorization: apiKeyCookie +let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; +apiKeyCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//apiKeyCookie.apiKeyPrefix = 'Token'; +// Configure API key authorization: authCookie +let authCookie = defaultClient.authentications['authCookie']; +authCookie.apiKey = 'YOUR API KEY'; +// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) +//authCookie.apiKeyPrefix = 'Token'; + +let apiInstance = new vrchatapi.WorldsApi(); +let opts = { + 'featured': true, // Boolean | is the world featured + 'sort': order, // String | + 'user': "user_example", // String | Set to `me` for searching own worlds + 'userId': "userId_example", // String | Filter by creator id, use `me` for only worlds owned by current user + 'n': 60, // Number | The number of objects to return. + 'order': descending, // String | + 'offset': 56, // Number | A zero-based offset from the default object sorting from where search results start. + 'search': "search_example", // String | Searches by `name`. Will return empty array if search query is empty or missing. + 'tag': ["null"], // [String] | Filter by Tag + 'notag': ["null"], // [String] | Tags to exclude + 'releaseStatus': hidden, // String | + 'maxUnityVersion': "maxUnityVersion_example", // String | Current unity version the game is using + 'minUnityVersion': "minUnityVersion_example", // String | The min unity version the world support + 'maxAssetVersion': "maxAssetVersion_example", // String | Current asset version the game is using + 'minAssetVersion': "minAssetVersion_example", // String | The min asset version the world support + 'platform': "platform_example" // String | The platform the world supports (usually standalonewindows) +}; +apiInstance.searchWorlds(opts).then((data) => { + console.log('API called successfully. Returned data: ' + data); +}, (error) => { + console.error(error); +}); + +``` + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **featured** | **Boolean**| is the world featured | [optional] + **sort** | **String**| | [optional] [default to 'order'] + **user** | **String**| Set to `me` for searching own worlds | [optional] + **userId** | **String**| Filter by creator id, use `me` for only worlds owned by current user | [optional] + **n** | **Number**| The number of objects to return. | [optional] [default to 60] + **order** | **String**| | [optional] [default to 'descending'] + **offset** | **Number**| A zero-based offset from the default object sorting from where search results start. | [optional] + **search** | **String**| Searches by `name`. Will return empty array if search query is empty or missing. | [optional] + **tag** | [**[String]**](String.md)| Filter by Tag | [optional] + **notag** | [**[String]**](String.md)| Tags to exclude | [optional] + **releaseStatus** | **String**| | [optional] [default to 'hidden'] + **maxUnityVersion** | **String**| Current unity version the game is using | [optional] + **minUnityVersion** | **String**| The min unity version the world support | [optional] + **maxAssetVersion** | **String**| Current asset version the game is using | [optional] + **minAssetVersion** | **String**| The min asset version the world support | [optional] + **platform** | **String**| The platform the world supports (usually standalonewindows) | [optional] + +### Return type + +[**[LimitedWorld]**](LimitedWorld.md) + +### Authorization + +[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) + +### HTTP request headers + +- **Content-Type**: Not defined +- **Accept**: application/json + diff --git a/generate.sh b/generate.sh new file mode 100644 index 0000000..2c75746 --- /dev/null +++ b/generate.sh @@ -0,0 +1,16 @@ +#!/bin/bash + +# Generate Client +rm src docs test -rf +openapi-generator-cli generate \ +-g javascript \ +--additional-properties=projectName=vrchatapi,usePromises=true,moduleName=vrchatapi \ +--git-user-id=vrchatapi \ +--git-repo-id=vrchatapi-node \ +-o . \ +-i ../specification/openapi.yaml \ +--http-user-agent="vrchatapi-node" + +# Remove unwanted lines from README +sed -i '/Uncomment the following line to set a prefix/d' ./README.md +sed -i '/apiKeyPrefix/d' ./README.md \ No newline at end of file diff --git a/git_push.sh b/git_push.sh new file mode 100644 index 0000000..a4189bd --- /dev/null +++ b/git_push.sh @@ -0,0 +1,58 @@ +#!/bin/sh +# ref: https://help.github.com/articles/adding-an-existing-project-to-github-using-the-command-line/ +# +# Usage example: /bin/sh ./git_push.sh wing328 openapi-pestore-perl "minor update" "gitlab.com" + +git_user_id=$1 +git_repo_id=$2 +release_note=$3 +git_host=$4 + +if [ "$git_host" = "" ]; then + git_host="github.com" + echo "[INFO] No command line input provided. Set \$git_host to $git_host" +fi + +if [ "$git_user_id" = "" ]; then + git_user_id="vrchatapi" + echo "[INFO] No command line input provided. Set \$git_user_id to $git_user_id" +fi + +if [ "$git_repo_id" = "" ]; then + git_repo_id="vrchatapi-node" + echo "[INFO] No command line input provided. Set \$git_repo_id to $git_repo_id" +fi + +if [ "$release_note" = "" ]; then + release_note="Minor update" + echo "[INFO] No command line input provided. Set \$release_note to $release_note" +fi + +# Initialize the local directory as a Git repository +git init + +# Adds the files in the local repository and stages them for commit. +git add . + +# Commits the tracked changes and prepares them to be pushed to a remote repository. +git commit -m "$release_note" + +# Sets the new remote +git_remote=`git remote` +if [ "$git_remote" = "" ]; then # git remote not defined + + if [ "$GIT_TOKEN" = "" ]; then + echo "[INFO] \$GIT_TOKEN (environment variable) is not set. Using the git credential in your environment." + git remote add origin https://${git_host}/${git_user_id}/${git_repo_id}.git + else + git remote add origin https://${git_user_id}:${GIT_TOKEN}@${git_host}/${git_user_id}/${git_repo_id}.git + fi + +fi + +git pull origin master + +# Pushes (Forces) the changes in the local repository up to the remote repository +echo "Git pushing to https://${git_host}/${git_user_id}/${git_repo_id}.git" +git push origin master 2>&1 | grep -v 'To https' + diff --git a/mocha.opts b/mocha.opts new file mode 100644 index 0000000..9070118 --- /dev/null +++ b/mocha.opts @@ -0,0 +1 @@ +--timeout 10000 diff --git a/openapitools.json b/openapitools.json new file mode 100644 index 0000000..29f5d06 --- /dev/null +++ b/openapitools.json @@ -0,0 +1,7 @@ +{ + "$schema": "node_modules/@openapitools/openapi-generator-cli/config.schema.json", + "spaces": 2, + "generator-cli": { + "version": "5.2.0" + } +} diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..d7cdaea --- /dev/null +++ b/package-lock.json @@ -0,0 +1,4208 @@ +{ + "name": "vrchatapi", + "version": "1.0.0", + "lockfileVersion": 1, + "requires": true, + "dependencies": { + "@babel/cli": { + "version": "7.14.8", + "resolved": "https://registry.npmjs.org/@babel/cli/-/cli-7.14.8.tgz", + "integrity": "sha512-lcy6Lymft9Rpfqmrqdd4oTDdUx9ZwaAhAfywVrHG4771Pa6PPT0danJ1kDHBXYqh4HHSmIdA+nlmfxfxSDPtBg==", + "requires": { + "@nicolo-ribaudo/chokidar-2": "2.1.8-no-fsevents.2", + "chokidar": "^3.4.0", + "commander": "^4.0.1", + "convert-source-map": "^1.1.0", + "fs-readdir-recursive": "^1.1.0", + "glob": "^7.0.0", + "make-dir": "^2.1.0", + "slash": "^2.0.0", + "source-map": "^0.5.0" + } + }, + "@babel/code-frame": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.14.5.tgz", + "integrity": "sha512-9pzDqyc6OLDaqe+zbACgFkb6fKMNG6CObKpnYXChRsvYGyEdc7CA2BaqeOM+vOtCS5ndmJicPJhKAwYRI6UfFw==", + "dev": true, + "requires": { + "@babel/highlight": "^7.14.5" + } + }, + "@babel/compat-data": { + "version": "7.14.7", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.14.7.tgz", + "integrity": "sha512-nS6dZaISCXJ3+518CWiBfEr//gHyMO02uDxBkXTKZDN5POruCnOZ1N4YBRZDCabwF8nZMWBpRxIicmXtBs+fvw==", + "dev": true + }, + "@babel/core": { + "version": "7.14.8", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.14.8.tgz", + "integrity": "sha512-/AtaeEhT6ErpDhInbXmjHcUQXH0L0TEgscfcxk1qbOvLuKCa5aZT0SOOtDKFY96/CLROwbLSKyFor6idgNaU4Q==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.14.5", + "@babel/generator": "^7.14.8", + "@babel/helper-compilation-targets": "^7.14.5", + "@babel/helper-module-transforms": "^7.14.8", + "@babel/helpers": "^7.14.8", + "@babel/parser": "^7.14.8", + "@babel/template": "^7.14.5", + "@babel/traverse": "^7.14.8", + "@babel/types": "^7.14.8", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.1.2", + "semver": "^6.3.0", + "source-map": "^0.5.0" + }, + "dependencies": { + "debug": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", + "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", + "dev": true, + "requires": { + "ms": "2.1.2" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "@babel/generator": { + "version": "7.14.8", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.14.8.tgz", + "integrity": "sha512-cYDUpvIzhBVnMzRoY1fkSEhK/HmwEVwlyULYgn/tMQYd6Obag3ylCjONle3gdErfXBW61SVTlR9QR7uWlgeIkg==", + "dev": true, + "requires": { + "@babel/types": "^7.14.8", + "jsesc": "^2.5.1", + "source-map": "^0.5.0" + } + }, + "@babel/helper-annotate-as-pure": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.14.5.tgz", + "integrity": "sha512-EivH9EgBIb+G8ij1B2jAwSH36WnGvkQSEC6CkX/6v6ZFlw5fVOHvsgGF4uiEHO2GzMvunZb6tDLQEQSdrdocrA==", + "dev": true, + "requires": { + "@babel/types": "^7.14.5" + } + }, + "@babel/helper-builder-binary-assignment-operator-visitor": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.14.5.tgz", + "integrity": "sha512-YTA/Twn0vBXDVGJuAX6PwW7x5zQei1luDDo2Pl6q1qZ7hVNl0RZrhHCQG/ArGpR29Vl7ETiB8eJyrvpuRp300w==", + "dev": true, + "requires": { + "@babel/helper-explode-assignable-expression": "^7.14.5", + "@babel/types": "^7.14.5" + } + }, + "@babel/helper-compilation-targets": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.14.5.tgz", + "integrity": "sha512-v+QtZqXEiOnpO6EYvlImB6zCD2Lel06RzOPzmkz/D/XgQiUu3C/Jb1LOqSt/AIA34TYi/Q+KlT8vTQrgdxkbLw==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.14.5", + "@babel/helper-validator-option": "^7.14.5", + "browserslist": "^4.16.6", + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "@babel/helper-create-class-features-plugin": { + "version": "7.14.8", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.14.8.tgz", + "integrity": "sha512-bpYvH8zJBWzeqi1o+co8qOrw+EXzQ/0c74gVmY205AWXy9nifHrOg77y+1zwxX5lXE7Icq4sPlSQ4O2kWBrteQ==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.14.5", + "@babel/helper-function-name": "^7.14.5", + "@babel/helper-member-expression-to-functions": "^7.14.7", + "@babel/helper-optimise-call-expression": "^7.14.5", + "@babel/helper-replace-supers": "^7.14.5", + "@babel/helper-split-export-declaration": "^7.14.5" + } + }, + "@babel/helper-create-regexp-features-plugin": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.14.5.tgz", + "integrity": "sha512-TLawwqpOErY2HhWbGJ2nZT5wSkR192QpN+nBg1THfBfftrlvOh+WbhrxXCH4q4xJ9Gl16BGPR/48JA+Ryiho/A==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.14.5", + "regexpu-core": "^4.7.1" + } + }, + "@babel/helper-define-polyfill-provider": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.2.3.tgz", + "integrity": "sha512-RH3QDAfRMzj7+0Nqu5oqgO5q9mFtQEVvCRsi8qCEfzLR9p2BHfn5FzhSB2oj1fF7I2+DcTORkYaQ6aTR9Cofew==", + "dev": true, + "requires": { + "@babel/helper-compilation-targets": "^7.13.0", + "@babel/helper-module-imports": "^7.12.13", + "@babel/helper-plugin-utils": "^7.13.0", + "@babel/traverse": "^7.13.0", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2", + "semver": "^6.1.2" + }, + "dependencies": { + "debug": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", + "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", + "dev": true, + "requires": { + "ms": "2.1.2" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "@babel/helper-explode-assignable-expression": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.14.5.tgz", + "integrity": "sha512-Htb24gnGJdIGT4vnRKMdoXiOIlqOLmdiUYpAQ0mYfgVT/GDm8GOYhgi4GL+hMKrkiPRohO4ts34ELFsGAPQLDQ==", + "dev": true, + "requires": { + "@babel/types": "^7.14.5" + } + }, + "@babel/helper-function-name": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.14.5.tgz", + "integrity": "sha512-Gjna0AsXWfFvrAuX+VKcN/aNNWonizBj39yGwUzVDVTlMYJMK2Wp6xdpy72mfArFq5uK+NOuexfzZlzI1z9+AQ==", + "dev": true, + "requires": { + "@babel/helper-get-function-arity": "^7.14.5", + "@babel/template": "^7.14.5", + "@babel/types": "^7.14.5" + } + }, + "@babel/helper-get-function-arity": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.14.5.tgz", + "integrity": "sha512-I1Db4Shst5lewOM4V+ZKJzQ0JGGaZ6VY1jYvMghRjqs6DWgxLCIyFt30GlnKkfUeFLpJt2vzbMVEXVSXlIFYUg==", + "dev": true, + "requires": { + "@babel/types": "^7.14.5" + } + }, + "@babel/helper-hoist-variables": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.14.5.tgz", + "integrity": "sha512-R1PXiz31Uc0Vxy4OEOm07x0oSjKAdPPCh3tPivn/Eo8cvz6gveAeuyUUPB21Hoiif0uoPQSSdhIPS3352nvdyQ==", + "dev": true, + "requires": { + "@babel/types": "^7.14.5" + } + }, + "@babel/helper-member-expression-to-functions": { + "version": "7.14.7", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.14.7.tgz", + "integrity": "sha512-TMUt4xKxJn6ccjcOW7c4hlwyJArizskAhoSTOCkA0uZ+KghIaci0Qg9R043kUMWI9mtQfgny+NQ5QATnZ+paaA==", + "dev": true, + "requires": { + "@babel/types": "^7.14.5" + } + }, + "@babel/helper-module-imports": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.14.5.tgz", + "integrity": "sha512-SwrNHu5QWS84XlHwGYPDtCxcA0hrSlL2yhWYLgeOc0w7ccOl2qv4s/nARI0aYZW+bSwAL5CukeXA47B/1NKcnQ==", + "dev": true, + "requires": { + "@babel/types": "^7.14.5" + } + }, + "@babel/helper-module-transforms": { + "version": "7.14.8", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.14.8.tgz", + "integrity": "sha512-RyE+NFOjXn5A9YU1dkpeBaduagTlZ0+fccnIcAGbv1KGUlReBj7utF7oEth8IdIBQPcux0DDgW5MFBH2xu9KcA==", + "dev": true, + "requires": { + "@babel/helper-module-imports": "^7.14.5", + "@babel/helper-replace-supers": "^7.14.5", + "@babel/helper-simple-access": "^7.14.8", + "@babel/helper-split-export-declaration": "^7.14.5", + "@babel/helper-validator-identifier": "^7.14.8", + "@babel/template": "^7.14.5", + "@babel/traverse": "^7.14.8", + "@babel/types": "^7.14.8" + } + }, + "@babel/helper-optimise-call-expression": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.14.5.tgz", + "integrity": "sha512-IqiLIrODUOdnPU9/F8ib1Fx2ohlgDhxnIDU7OEVi+kAbEZcyiF7BLU8W6PfvPi9LzztjS7kcbzbmL7oG8kD6VA==", + "dev": true, + "requires": { + "@babel/types": "^7.14.5" + } + }, + "@babel/helper-plugin-utils": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.14.5.tgz", + "integrity": "sha512-/37qQCE3K0vvZKwoK4XU/irIJQdIfCJuhU5eKnNxpFDsOkgFaUAwbv+RYw6eYgsC0E4hS7r5KqGULUogqui0fQ==", + "dev": true + }, + "@babel/helper-remap-async-to-generator": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.14.5.tgz", + "integrity": "sha512-rLQKdQU+HYlxBwQIj8dk4/0ENOUEhA/Z0l4hN8BexpvmSMN9oA9EagjnhnDpNsRdWCfjwa4mn/HyBXO9yhQP6A==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.14.5", + "@babel/helper-wrap-function": "^7.14.5", + "@babel/types": "^7.14.5" + } + }, + "@babel/helper-replace-supers": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.14.5.tgz", + "integrity": "sha512-3i1Qe9/8x/hCHINujn+iuHy+mMRLoc77b2nI9TB0zjH1hvn9qGlXjWlggdwUcju36PkPCy/lpM7LLUdcTyH4Ow==", + "dev": true, + "requires": { + "@babel/helper-member-expression-to-functions": "^7.14.5", + "@babel/helper-optimise-call-expression": "^7.14.5", + "@babel/traverse": "^7.14.5", + "@babel/types": "^7.14.5" + } + }, + "@babel/helper-simple-access": { + "version": "7.14.8", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.14.8.tgz", + "integrity": "sha512-TrFN4RHh9gnWEU+s7JloIho2T76GPwRHhdzOWLqTrMnlas8T9O7ec+oEDNsRXndOmru9ymH9DFrEOxpzPoSbdg==", + "dev": true, + "requires": { + "@babel/types": "^7.14.8" + } + }, + "@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.14.5.tgz", + "integrity": "sha512-dmqZB7mrb94PZSAOYtr+ZN5qt5owZIAgqtoTuqiFbHFtxgEcmQlRJVI+bO++fciBunXtB6MK7HrzrfcAzIz2NQ==", + "dev": true, + "requires": { + "@babel/types": "^7.14.5" + } + }, + "@babel/helper-split-export-declaration": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.14.5.tgz", + "integrity": "sha512-hprxVPu6e5Kdp2puZUmvOGjaLv9TCe58E/Fl6hRq4YiVQxIcNvuq6uTM2r1mT/oPskuS9CgR+I94sqAYv0NGKA==", + "dev": true, + "requires": { + "@babel/types": "^7.14.5" + } + }, + "@babel/helper-validator-identifier": { + "version": "7.14.8", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.8.tgz", + "integrity": "sha512-ZGy6/XQjllhYQrNw/3zfWRwZCTVSiBLZ9DHVZxn9n2gip/7ab8mv2TWlKPIBk26RwedCBoWdjLmn+t9na2Gcow==", + "dev": true + }, + "@babel/helper-validator-option": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.14.5.tgz", + "integrity": "sha512-OX8D5eeX4XwcroVW45NMvoYaIuFI+GQpA2a8Gi+X/U/cDUIRsV37qQfF905F0htTRCREQIB4KqPeaveRJUl3Ow==", + "dev": true + }, + "@babel/helper-wrap-function": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.14.5.tgz", + "integrity": "sha512-YEdjTCq+LNuNS1WfxsDCNpgXkJaIyqco6DAelTUjT4f2KIWC1nBcaCaSdHTBqQVLnTBexBcVcFhLSU1KnYuePQ==", + "dev": true, + "requires": { + "@babel/helper-function-name": "^7.14.5", + "@babel/template": "^7.14.5", + "@babel/traverse": "^7.14.5", + "@babel/types": "^7.14.5" + } + }, + "@babel/helpers": { + "version": "7.14.8", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.14.8.tgz", + "integrity": "sha512-ZRDmI56pnV+p1dH6d+UN6GINGz7Krps3+270qqI9UJ4wxYThfAIcI5i7j5vXC4FJ3Wap+S9qcebxeYiqn87DZw==", + "dev": true, + "requires": { + "@babel/template": "^7.14.5", + "@babel/traverse": "^7.14.8", + "@babel/types": "^7.14.8" + } + }, + "@babel/highlight": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.5.tgz", + "integrity": "sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg==", + "dev": true, + "requires": { + "@babel/helper-validator-identifier": "^7.14.5", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + } + }, + "@babel/parser": { + "version": "7.14.8", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.14.8.tgz", + "integrity": "sha512-syoCQFOoo/fzkWDeM0dLEZi5xqurb5vuyzwIMNZRNun+N/9A4cUZeQaE7dTrB8jGaKuJRBtEOajtnmw0I5hvvA==", + "dev": true + }, + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.14.5.tgz", + "integrity": "sha512-ZoJS2XCKPBfTmL122iP6NM9dOg+d4lc9fFk3zxc8iDjvt8Pk4+TlsHSKhIPf6X+L5ORCdBzqMZDjL/WHj7WknQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.14.5", + "@babel/plugin-proposal-optional-chaining": "^7.14.5" + } + }, + "@babel/plugin-proposal-async-generator-functions": { + "version": "7.14.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.14.7.tgz", + "integrity": "sha512-RK8Wj7lXLY3bqei69/cc25gwS5puEc3dknoFPFbqfy3XxYQBQFvu4ioWpafMBAB+L9NyptQK4nMOa5Xz16og8Q==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-remap-async-to-generator": "^7.14.5", + "@babel/plugin-syntax-async-generators": "^7.8.4" + } + }, + "@babel/plugin-proposal-class-properties": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.14.5.tgz", + "integrity": "sha512-q/PLpv5Ko4dVc1LYMpCY7RVAAO4uk55qPwrIuJ5QJ8c6cVuAmhu7I/49JOppXL6gXf7ZHzpRVEUZdYoPLM04Gg==", + "dev": true, + "requires": { + "@babel/helper-create-class-features-plugin": "^7.14.5", + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-proposal-class-static-block": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.14.5.tgz", + "integrity": "sha512-KBAH5ksEnYHCegqseI5N9skTdxgJdmDoAOc0uXa+4QMYKeZD0w5IARh4FMlTNtaHhbB8v+KzMdTgxMMzsIy6Yg==", + "dev": true, + "requires": { + "@babel/helper-create-class-features-plugin": "^7.14.5", + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/plugin-syntax-class-static-block": "^7.14.5" + } + }, + "@babel/plugin-proposal-decorators": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.14.5.tgz", + "integrity": "sha512-LYz5nvQcvYeRVjui1Ykn28i+3aUiXwQ/3MGoEy0InTaz1pJo/lAzmIDXX+BQny/oufgHzJ6vnEEiXQ8KZjEVFg==", + "dev": true, + "requires": { + "@babel/helper-create-class-features-plugin": "^7.14.5", + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/plugin-syntax-decorators": "^7.14.5" + } + }, + "@babel/plugin-proposal-do-expressions": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-do-expressions/-/plugin-proposal-do-expressions-7.14.5.tgz", + "integrity": "sha512-i40m/CLe5WBGYMZL/SC3xtjJ/B0i+XblaonSsinumgfNIqmBOf4LEcZJXijoQeQbQVl55PyM0siWSWWJ9lV7cA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/plugin-syntax-do-expressions": "^7.14.5" + } + }, + "@babel/plugin-proposal-dynamic-import": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.14.5.tgz", + "integrity": "sha512-ExjiNYc3HDN5PXJx+bwC50GIx/KKanX2HiggnIUAYedbARdImiCU4RhhHfdf0Kd7JNXGpsBBBCOm+bBVy3Gb0g==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3" + } + }, + "@babel/plugin-proposal-export-default-from": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-default-from/-/plugin-proposal-export-default-from-7.14.5.tgz", + "integrity": "sha512-T8KZ5abXvKMjF6JcoXjgac3ElmXf0AWzJwi2O/42Jk+HmCky3D9+i1B7NPP1FblyceqTevKeV/9szeikFoaMDg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/plugin-syntax-export-default-from": "^7.14.5" + } + }, + "@babel/plugin-proposal-export-namespace-from": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.14.5.tgz", + "integrity": "sha512-g5POA32bXPMmSBu5Dx/iZGLGnKmKPc5AiY7qfZgurzrCYgIztDlHFbznSNCoQuv57YQLnQfaDi7dxCtLDIdXdA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3" + } + }, + "@babel/plugin-proposal-function-bind": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-function-bind/-/plugin-proposal-function-bind-7.14.5.tgz", + "integrity": "sha512-PSQk5JImi81nFAzIebCEqkd0aiP9LDVKLCIH+0yR66JV8cQ1oZ8IRK9NNaA5nw9sjo0cPXxuBPCqgqcpugR8tA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/plugin-syntax-function-bind": "^7.14.5" + } + }, + "@babel/plugin-proposal-function-sent": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-function-sent/-/plugin-proposal-function-sent-7.14.5.tgz", + "integrity": "sha512-3Hvb9m1dvFK1cor9kObPCPK8q0xlcakm+haBwHQy7V5BN1As6iys9oOKyWpHVbop+tW8JYs0v9Ahcp1BOxC3Ng==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-wrap-function": "^7.14.5", + "@babel/plugin-syntax-function-sent": "^7.14.5" + } + }, + "@babel/plugin-proposal-json-strings": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.14.5.tgz", + "integrity": "sha512-NSq2fczJYKVRIsUJyNxrVUMhB27zb7N7pOFGQOhBKJrChbGcgEAqyZrmZswkPk18VMurEeJAaICbfm57vUeTbQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/plugin-syntax-json-strings": "^7.8.3" + } + }, + "@babel/plugin-proposal-logical-assignment-operators": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.14.5.tgz", + "integrity": "sha512-YGn2AvZAo9TwyhlLvCCWxD90Xq8xJ4aSgaX3G5D/8DW94L8aaT+dS5cSP+Z06+rCJERGSr9GxMBZ601xoc2taw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" + } + }, + "@babel/plugin-proposal-nullish-coalescing-operator": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.14.5.tgz", + "integrity": "sha512-gun/SOnMqjSb98Nkaq2rTKMwervfdAoz6NphdY0vTfuzMfryj+tDGb2n6UkDKwez+Y8PZDhE3D143v6Gepp4Hg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" + } + }, + "@babel/plugin-proposal-numeric-separator": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.14.5.tgz", + "integrity": "sha512-yiclALKe0vyZRZE0pS6RXgjUOt87GWv6FYa5zqj15PvhOGFO69R5DusPlgK/1K5dVnCtegTiWu9UaBSrLLJJBg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/plugin-syntax-numeric-separator": "^7.10.4" + } + }, + "@babel/plugin-proposal-object-rest-spread": { + "version": "7.14.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.14.7.tgz", + "integrity": "sha512-082hsZz+sVabfmDWo1Oct1u1AgbKbUAyVgmX4otIc7bdsRgHBXwTwb3DpDmD4Eyyx6DNiuz5UAATT655k+kL5g==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.14.7", + "@babel/helper-compilation-targets": "^7.14.5", + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.14.5" + } + }, + "@babel/plugin-proposal-optional-catch-binding": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.14.5.tgz", + "integrity": "sha512-3Oyiixm0ur7bzO5ybNcZFlmVsygSIQgdOa7cTfOYCMY+wEPAYhZAJxi3mixKFCTCKUhQXuCTtQ1MzrpL3WT8ZQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" + } + }, + "@babel/plugin-proposal-optional-chaining": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.14.5.tgz", + "integrity": "sha512-ycz+VOzo2UbWNI1rQXxIuMOzrDdHGrI23fRiz/Si2R4kv2XZQ1BK8ccdHwehMKBlcH/joGW/tzrUmo67gbJHlQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.14.5", + "@babel/plugin-syntax-optional-chaining": "^7.8.3" + } + }, + "@babel/plugin-proposal-pipeline-operator": { + "version": "7.14.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-pipeline-operator/-/plugin-proposal-pipeline-operator-7.14.8.tgz", + "integrity": "sha512-JWJpelV56bW+4rw3QyGTV4efL2NFoT+VH7vV55FyMD4rH8FxsNXuR8SkUOunvOXLcxFpLT2+8v/M0HKrCUIx5g==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/plugin-syntax-pipeline-operator": "^7.14.5" + } + }, + "@babel/plugin-proposal-private-methods": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.14.5.tgz", + "integrity": "sha512-838DkdUA1u+QTCplatfq4B7+1lnDa/+QMI89x5WZHBcnNv+47N8QEj2k9I2MUU9xIv8XJ4XvPCviM/Dj7Uwt9g==", + "dev": true, + "requires": { + "@babel/helper-create-class-features-plugin": "^7.14.5", + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-proposal-private-property-in-object": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.14.5.tgz", + "integrity": "sha512-62EyfyA3WA0mZiF2e2IV9mc9Ghwxcg8YTu8BS4Wss4Y3PY725OmS9M0qLORbJwLqFtGh+jiE4wAmocK2CTUK2Q==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.14.5", + "@babel/helper-create-class-features-plugin": "^7.14.5", + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5" + } + }, + "@babel/plugin-proposal-throw-expressions": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-throw-expressions/-/plugin-proposal-throw-expressions-7.14.5.tgz", + "integrity": "sha512-Db2JCIPhe409U3qy0sWpDun6Xa1k77TfNsKTzUY0PDRTpiho7e2uIhYMJVwGrHOkHRH03D6yQLZRosNahnpi1Q==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/plugin-syntax-throw-expressions": "^7.14.5" + } + }, + "@babel/plugin-proposal-unicode-property-regex": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.14.5.tgz", + "integrity": "sha512-6axIeOU5LnY471KenAB9vI8I5j7NQ2d652hIYwVyRfgaZT5UpiqFKCuVXCDMSrU+3VFafnu2c5m3lrWIlr6A5Q==", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.14.5", + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.12.13" + } + }, + "@babel/plugin-syntax-class-static-block": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", + "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-syntax-decorators": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.14.5.tgz", + "integrity": "sha512-c4sZMRWL4GSvP1EXy0woIP7m4jkVcEuG8R1TOZxPBPtp4FSM/kiPZub9UIs/Jrb5ZAOzvTUSGYrWsrSu1JvoPw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-syntax-do-expressions": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-do-expressions/-/plugin-syntax-do-expressions-7.14.5.tgz", + "integrity": "sha512-IpVyxRlfFCU2emBiq2OxUX10PD6FoGZ30yWwGt1qdkIPUDhAodG5Il1LStODgATndKRhQgqT21ksqA5fd39AwA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-syntax-dynamic-import": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", + "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-export-default-from": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-default-from/-/plugin-syntax-export-default-from-7.14.5.tgz", + "integrity": "sha512-snWDxjuaPEobRBnhpqEfZ8RMxDbHt8+87fiEioGuE+Uc0xAKgSD8QiuL3lF93hPVQfZFAcYwrrf+H5qUhike3Q==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-syntax-export-namespace-from": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", + "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.3" + } + }, + "@babel/plugin-syntax-function-bind": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-function-bind/-/plugin-syntax-function-bind-7.14.5.tgz", + "integrity": "sha512-gstAIrKtlPwrQaRz4uK+kT7zI2p5MQqX41SeO+kZKH1XGO1jL0nLZBWznRigPpkem6LfIoG2EduQZmPBcUwEmg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-syntax-function-sent": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-function-sent/-/plugin-syntax-function-sent-7.14.5.tgz", + "integrity": "sha512-FNN0Ve2/6yxCa0xMG7wUlM81t+HOPu8HNWk683Xav1B+vjHKQQujX82NEKYdDYNUX7/ky8pUCHfRUYVmigs69Q==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-syntax-import-meta": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", + "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-pipeline-operator": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-pipeline-operator/-/plugin-syntax-pipeline-operator-7.14.5.tgz", + "integrity": "sha512-yyV4QIHExzKJwYoZ0yRorVLROdsZ96H6iamG60rvDghWyfo7BaSPjvoHWGRirebzUj+Vv5Ih6yhhMLx04Gnvyw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-syntax-private-property-in-object": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", + "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-syntax-throw-expressions": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-throw-expressions/-/plugin-syntax-throw-expressions-7.14.5.tgz", + "integrity": "sha512-4aFC2goA9+JceXayipcSY017nGspvcAkzR+sdsT6hN4DUuHWvM88wdjf/Nxja5sTE7oYPmfuN84ViREdgjingw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-syntax-top-level-await": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", + "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-transform-arrow-functions": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.14.5.tgz", + "integrity": "sha512-KOnO0l4+tD5IfOdi4x8C1XmEIRWUjNRV8wc6K2vz/3e8yAOoZZvsRXRRIF/yo/MAOFb4QjtAw9xSxMXbSMRy8A==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-transform-async-to-generator": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.14.5.tgz", + "integrity": "sha512-szkbzQ0mNk0rpu76fzDdqSyPu0MuvpXgC+6rz5rpMb5OIRxdmHfQxrktL8CYolL2d8luMCZTR0DpIMIdL27IjA==", + "dev": true, + "requires": { + "@babel/helper-module-imports": "^7.14.5", + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-remap-async-to-generator": "^7.14.5" + } + }, + "@babel/plugin-transform-block-scoped-functions": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.14.5.tgz", + "integrity": "sha512-dtqWqdWZ5NqBX3KzsVCWfQI3A53Ft5pWFCT2eCVUftWZgjc5DpDponbIF1+c+7cSGk2wN0YK7HGL/ezfRbpKBQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-transform-block-scoping": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.14.5.tgz", + "integrity": "sha512-LBYm4ZocNgoCqyxMLoOnwpsmQ18HWTQvql64t3GvMUzLQrNoV1BDG0lNftC8QKYERkZgCCT/7J5xWGObGAyHDw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-transform-classes": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.14.5.tgz", + "integrity": "sha512-J4VxKAMykM06K/64z9rwiL6xnBHgB1+FVspqvlgCdwD1KUbQNfszeKVVOMh59w3sztHYIZDgnhOC4WbdEfHFDA==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.14.5", + "@babel/helper-function-name": "^7.14.5", + "@babel/helper-optimise-call-expression": "^7.14.5", + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-replace-supers": "^7.14.5", + "@babel/helper-split-export-declaration": "^7.14.5", + "globals": "^11.1.0" + } + }, + "@babel/plugin-transform-computed-properties": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.14.5.tgz", + "integrity": "sha512-pWM+E4283UxaVzLb8UBXv4EIxMovU4zxT1OPnpHJcmnvyY9QbPPTKZfEj31EUvG3/EQRbYAGaYEUZ4yWOBC2xg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-transform-destructuring": { + "version": "7.14.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.14.7.tgz", + "integrity": "sha512-0mDE99nK+kVh3xlc5vKwB6wnP9ecuSj+zQCa/n0voENtP/zymdT4HH6QEb65wjjcbqr1Jb/7z9Qp7TF5FtwYGw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-transform-dotall-regex": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.14.5.tgz", + "integrity": "sha512-loGlnBdj02MDsFaHhAIJzh7euK89lBrGIdM9EAtHFo6xKygCUGuuWe07o1oZVk287amtW1n0808sQM99aZt3gw==", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.14.5", + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-transform-duplicate-keys": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.14.5.tgz", + "integrity": "sha512-iJjbI53huKbPDAsJ8EmVmvCKeeq21bAze4fu9GBQtSLqfvzj2oRuHVx4ZkDwEhg1htQ+5OBZh/Ab0XDf5iBZ7A==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-transform-exponentiation-operator": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.14.5.tgz", + "integrity": "sha512-jFazJhMBc9D27o9jDnIE5ZErI0R0m7PbKXVq77FFvqFbzvTMuv8jaAwLZ5PviOLSFttqKIW0/wxNSDbjLk0tYA==", + "dev": true, + "requires": { + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.14.5", + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-transform-for-of": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.14.5.tgz", + "integrity": "sha512-CfmqxSUZzBl0rSjpoQSFoR9UEj3HzbGuGNL21/iFTmjb5gFggJp3ph0xR1YBhexmLoKRHzgxuFvty2xdSt6gTA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-transform-function-name": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.14.5.tgz", + "integrity": "sha512-vbO6kv0fIzZ1GpmGQuvbwwm+O4Cbm2NrPzwlup9+/3fdkuzo1YqOZcXw26+YUJB84Ja7j9yURWposEHLYwxUfQ==", + "dev": true, + "requires": { + "@babel/helper-function-name": "^7.14.5", + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-transform-literals": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.14.5.tgz", + "integrity": "sha512-ql33+epql2F49bi8aHXxvLURHkxJbSmMKl9J5yHqg4PLtdE6Uc48CH1GS6TQvZ86eoB/ApZXwm7jlA+B3kra7A==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-transform-member-expression-literals": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.14.5.tgz", + "integrity": "sha512-WkNXxH1VXVTKarWFqmso83xl+2V3Eo28YY5utIkbsmXoItO8Q3aZxN4BTS2k0hz9dGUloHK26mJMyQEYfkn/+Q==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-transform-modules-amd": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.14.5.tgz", + "integrity": "sha512-3lpOU8Vxmp3roC4vzFpSdEpGUWSMsHFreTWOMMLzel2gNGfHE5UWIh/LN6ghHs2xurUp4jRFYMUIZhuFbody1g==", + "dev": true, + "requires": { + "@babel/helper-module-transforms": "^7.14.5", + "@babel/helper-plugin-utils": "^7.14.5", + "babel-plugin-dynamic-import-node": "^2.3.3" + } + }, + "@babel/plugin-transform-modules-commonjs": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.14.5.tgz", + "integrity": "sha512-en8GfBtgnydoao2PS+87mKyw62k02k7kJ9ltbKe0fXTHrQmG6QZZflYuGI1VVG7sVpx4E1n7KBpNlPb8m78J+A==", + "dev": true, + "requires": { + "@babel/helper-module-transforms": "^7.14.5", + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-simple-access": "^7.14.5", + "babel-plugin-dynamic-import-node": "^2.3.3" + } + }, + "@babel/plugin-transform-modules-systemjs": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.14.5.tgz", + "integrity": "sha512-mNMQdvBEE5DcMQaL5LbzXFMANrQjd2W7FPzg34Y4yEz7dBgdaC+9B84dSO+/1Wba98zoDbInctCDo4JGxz1VYA==", + "dev": true, + "requires": { + "@babel/helper-hoist-variables": "^7.14.5", + "@babel/helper-module-transforms": "^7.14.5", + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-validator-identifier": "^7.14.5", + "babel-plugin-dynamic-import-node": "^2.3.3" + } + }, + "@babel/plugin-transform-modules-umd": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.14.5.tgz", + "integrity": "sha512-RfPGoagSngC06LsGUYyM9QWSXZ8MysEjDJTAea1lqRjNECE3y0qIJF/qbvJxc4oA4s99HumIMdXOrd+TdKaAAA==", + "dev": true, + "requires": { + "@babel/helper-module-transforms": "^7.14.5", + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.14.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.14.7.tgz", + "integrity": "sha512-DTNOTaS7TkW97xsDMrp7nycUVh6sn/eq22VaxWfEdzuEbRsiaOU0pqU7DlyUGHVsbQbSghvjKRpEl+nUCKGQSg==", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.14.5" + } + }, + "@babel/plugin-transform-new-target": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.14.5.tgz", + "integrity": "sha512-Nx054zovz6IIRWEB49RDRuXGI4Gy0GMgqG0cII9L3MxqgXz/+rgII+RU58qpo4g7tNEx1jG7rRVH4ihZoP4esQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-transform-object-super": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.14.5.tgz", + "integrity": "sha512-MKfOBWzK0pZIrav9z/hkRqIk/2bTv9qvxHzPQc12RcVkMOzpIKnFCNYJip00ssKWYkd8Sf5g0Wr7pqJ+cmtuFg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-replace-supers": "^7.14.5" + } + }, + "@babel/plugin-transform-parameters": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.14.5.tgz", + "integrity": "sha512-Tl7LWdr6HUxTmzQtzuU14SqbgrSKmaR77M0OKyq4njZLQTPfOvzblNKyNkGwOfEFCEx7KeYHQHDI0P3F02IVkA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-transform-property-literals": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.14.5.tgz", + "integrity": "sha512-r1uilDthkgXW8Z1vJz2dKYLV1tuw2xsbrp3MrZmD99Wh9vsfKoob+JTgri5VUb/JqyKRXotlOtwgu4stIYCmnw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-transform-regenerator": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.14.5.tgz", + "integrity": "sha512-NVIY1W3ITDP5xQl50NgTKlZ0GrotKtLna08/uGY6ErQt6VEQZXla86x/CTddm5gZdcr+5GSsvMeTmWA5Ii6pkg==", + "dev": true, + "requires": { + "regenerator-transform": "^0.14.2" + } + }, + "@babel/plugin-transform-reserved-words": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.14.5.tgz", + "integrity": "sha512-cv4F2rv1nD4qdexOGsRQXJrOcyb5CrgjUH9PKrrtyhSDBNWGxd0UIitjyJiWagS+EbUGjG++22mGH1Pub8D6Vg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-transform-shorthand-properties": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.14.5.tgz", + "integrity": "sha512-xLucks6T1VmGsTB+GWK5Pl9Jl5+nRXD1uoFdA5TSO6xtiNjtXTjKkmPdFXVLGlK5A2/or/wQMKfmQ2Y0XJfn5g==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-transform-spread": { + "version": "7.14.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.14.6.tgz", + "integrity": "sha512-Zr0x0YroFJku7n7+/HH3A2eIrGMjbmAIbJSVv0IZ+t3U2WUQUA64S/oeied2e+MaGSjmt4alzBCsK9E8gh+fag==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.14.5" + } + }, + "@babel/plugin-transform-sticky-regex": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.14.5.tgz", + "integrity": "sha512-Z7F7GyvEMzIIbwnziAZmnSNpdijdr4dWt+FJNBnBLz5mwDFkqIXU9wmBcWWad3QeJF5hMTkRe4dAq2sUZiG+8A==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-transform-template-literals": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.14.5.tgz", + "integrity": "sha512-22btZeURqiepOfuy/VkFr+zStqlujWaarpMErvay7goJS6BWwdd6BY9zQyDLDa4x2S3VugxFb162IZ4m/S/+Gg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-transform-typeof-symbol": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.14.5.tgz", + "integrity": "sha512-lXzLD30ffCWseTbMQzrvDWqljvZlHkXU+CnseMhkMNqU1sASnCsz3tSzAaH3vCUXb9PHeUb90ZT1BdFTm1xxJw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-transform-unicode-escapes": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.14.5.tgz", + "integrity": "sha512-crTo4jATEOjxj7bt9lbYXcBAM3LZaUrbP2uUdxb6WIorLmjNKSpHfIybgY4B8SRpbf8tEVIWH3Vtm7ayCrKocA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-transform-unicode-regex": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.14.5.tgz", + "integrity": "sha512-UygduJpC5kHeCiRw/xDVzC+wj8VaYSoKl5JNVmbP7MadpNinAm3SvZCxZ42H37KZBKztz46YC73i9yV34d0Tzw==", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.14.5", + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/preset-env": { + "version": "7.14.8", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.14.8.tgz", + "integrity": "sha512-a9aOppDU93oArQ51H+B8M1vH+tayZbuBqzjOhntGetZVa+4tTu5jp+XTwqHGG2lxslqomPYVSjIxQkFwXzgnxg==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.14.7", + "@babel/helper-compilation-targets": "^7.14.5", + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-validator-option": "^7.14.5", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.14.5", + "@babel/plugin-proposal-async-generator-functions": "^7.14.7", + "@babel/plugin-proposal-class-properties": "^7.14.5", + "@babel/plugin-proposal-class-static-block": "^7.14.5", + "@babel/plugin-proposal-dynamic-import": "^7.14.5", + "@babel/plugin-proposal-export-namespace-from": "^7.14.5", + "@babel/plugin-proposal-json-strings": "^7.14.5", + "@babel/plugin-proposal-logical-assignment-operators": "^7.14.5", + "@babel/plugin-proposal-nullish-coalescing-operator": "^7.14.5", + "@babel/plugin-proposal-numeric-separator": "^7.14.5", + "@babel/plugin-proposal-object-rest-spread": "^7.14.7", + "@babel/plugin-proposal-optional-catch-binding": "^7.14.5", + "@babel/plugin-proposal-optional-chaining": "^7.14.5", + "@babel/plugin-proposal-private-methods": "^7.14.5", + "@babel/plugin-proposal-private-property-in-object": "^7.14.5", + "@babel/plugin-proposal-unicode-property-regex": "^7.14.5", + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5", + "@babel/plugin-transform-arrow-functions": "^7.14.5", + "@babel/plugin-transform-async-to-generator": "^7.14.5", + "@babel/plugin-transform-block-scoped-functions": "^7.14.5", + "@babel/plugin-transform-block-scoping": "^7.14.5", + "@babel/plugin-transform-classes": "^7.14.5", + "@babel/plugin-transform-computed-properties": "^7.14.5", + "@babel/plugin-transform-destructuring": "^7.14.7", + "@babel/plugin-transform-dotall-regex": "^7.14.5", + "@babel/plugin-transform-duplicate-keys": "^7.14.5", + "@babel/plugin-transform-exponentiation-operator": "^7.14.5", + "@babel/plugin-transform-for-of": "^7.14.5", + "@babel/plugin-transform-function-name": "^7.14.5", + "@babel/plugin-transform-literals": "^7.14.5", + "@babel/plugin-transform-member-expression-literals": "^7.14.5", + "@babel/plugin-transform-modules-amd": "^7.14.5", + "@babel/plugin-transform-modules-commonjs": "^7.14.5", + "@babel/plugin-transform-modules-systemjs": "^7.14.5", + "@babel/plugin-transform-modules-umd": "^7.14.5", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.14.7", + "@babel/plugin-transform-new-target": "^7.14.5", + "@babel/plugin-transform-object-super": "^7.14.5", + "@babel/plugin-transform-parameters": "^7.14.5", + "@babel/plugin-transform-property-literals": "^7.14.5", + "@babel/plugin-transform-regenerator": "^7.14.5", + "@babel/plugin-transform-reserved-words": "^7.14.5", + "@babel/plugin-transform-shorthand-properties": "^7.14.5", + "@babel/plugin-transform-spread": "^7.14.6", + "@babel/plugin-transform-sticky-regex": "^7.14.5", + "@babel/plugin-transform-template-literals": "^7.14.5", + "@babel/plugin-transform-typeof-symbol": "^7.14.5", + "@babel/plugin-transform-unicode-escapes": "^7.14.5", + "@babel/plugin-transform-unicode-regex": "^7.14.5", + "@babel/preset-modules": "^0.1.4", + "@babel/types": "^7.14.8", + "babel-plugin-polyfill-corejs2": "^0.2.2", + "babel-plugin-polyfill-corejs3": "^0.2.2", + "babel-plugin-polyfill-regenerator": "^0.2.2", + "core-js-compat": "^3.15.0", + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "@babel/preset-modules": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.4.tgz", + "integrity": "sha512-J36NhwnfdzpmH41M1DrnkkgAqhZaqr/NBdPfQ677mLzlaXo+oDiv1deyCDtgAhz8p328otdob0Du7+xgHGZbKg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", + "@babel/plugin-transform-dotall-regex": "^7.4.4", + "@babel/types": "^7.4.4", + "esutils": "^2.0.2" + } + }, + "@babel/register": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/register/-/register-7.14.5.tgz", + "integrity": "sha512-TjJpGz/aDjFGWsItRBQMOFTrmTI9tr79CHOK+KIvLeCkbxuOAk2M5QHjvruIMGoo9OuccMh5euplPzc5FjAKGg==", + "dev": true, + "requires": { + "clone-deep": "^4.0.1", + "find-cache-dir": "^2.0.0", + "make-dir": "^2.1.0", + "pirates": "^4.0.0", + "source-map-support": "^0.5.16" + } + }, + "@babel/runtime": { + "version": "7.14.8", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.14.8.tgz", + "integrity": "sha512-twj3L8Og5SaCRCErB4x4ajbvBIVV77CGeFglHpeg5WC5FF8TZzBWXtTJ4MqaD9QszLYTtr+IsaAL2rEUevb+eg==", + "dev": true, + "requires": { + "regenerator-runtime": "^0.13.4" + } + }, + "@babel/template": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.14.5.tgz", + "integrity": "sha512-6Z3Po85sfxRGachLULUhOmvAaOo7xCvqGQtxINai2mEGPFm6pQ4z5QInFnUrRpfoSV60BnjyF5F3c+15fxFV1g==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.14.5", + "@babel/parser": "^7.14.5", + "@babel/types": "^7.14.5" + } + }, + "@babel/traverse": { + "version": "7.14.8", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.14.8.tgz", + "integrity": "sha512-kexHhzCljJcFNn1KYAQ6A5wxMRzq9ebYpEDV4+WdNyr3i7O44tanbDOR/xjiG2F3sllan+LgwK+7OMk0EmydHg==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.14.5", + "@babel/generator": "^7.14.8", + "@babel/helper-function-name": "^7.14.5", + "@babel/helper-hoist-variables": "^7.14.5", + "@babel/helper-split-export-declaration": "^7.14.5", + "@babel/parser": "^7.14.8", + "@babel/types": "^7.14.8", + "debug": "^4.1.0", + "globals": "^11.1.0" + }, + "dependencies": { + "debug": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", + "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", + "dev": true, + "requires": { + "ms": "2.1.2" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + } + } + }, + "@babel/types": { + "version": "7.14.8", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.14.8.tgz", + "integrity": "sha512-iob4soQa7dZw8nodR/KlOQkPh9S4I8RwCxwRIFuiMRYjOzH/KJzdUfDgz6cGi5dDaclXF4P2PAhCdrBJNIg68Q==", + "dev": true, + "requires": { + "@babel/helper-validator-identifier": "^7.14.8", + "to-fast-properties": "^2.0.0" + } + }, + "@nicolo-ribaudo/chokidar-2": { + "version": "2.1.8-no-fsevents.2", + "resolved": "https://registry.npmjs.org/@nicolo-ribaudo/chokidar-2/-/chokidar-2-2.1.8-no-fsevents.2.tgz", + "integrity": "sha512-Fb8WxUFOBQVl+CX4MWet5o7eCc6Pj04rXIwVKZ6h1NnqTo45eOQW6aWyhG25NIODvWFwTDMwBsYxrQ3imxpetg==", + "optional": true, + "requires": { + "anymatch": "^2.0.0", + "async-each": "^1.0.1", + "braces": "^2.3.2", + "glob-parent": "^5.1.2", + "inherits": "^2.0.3", + "is-binary-path": "^1.0.0", + "is-glob": "^4.0.0", + "normalize-path": "^3.0.0", + "path-is-absolute": "^1.0.0", + "readdirp": "^2.2.1", + "upath": "^1.1.1" + } + }, + "@sinonjs/commons": { + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.3.tgz", + "integrity": "sha512-xkNcLAn/wZaX14RPlwizcKicDk9G3F8m2nU3L7Ukm5zBgTwiT0wsoFAHx9Jq56fJA1z/7uKGtCRu16sOUCLIHQ==", + "dev": true, + "requires": { + "type-detect": "4.0.8" + } + }, + "@sinonjs/formatio": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/@sinonjs/formatio/-/formatio-3.2.2.tgz", + "integrity": "sha512-B8SEsgd8gArBLMD6zpRw3juQ2FVSsmdd7qlevyDqzS9WTCtvF55/gAL+h6gue8ZvPYcdiPdvueM/qm//9XzyTQ==", + "dev": true, + "requires": { + "@sinonjs/commons": "^1", + "@sinonjs/samsam": "^3.1.0" + } + }, + "@sinonjs/samsam": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-3.3.3.tgz", + "integrity": "sha512-bKCMKZvWIjYD0BLGnNrxVuw4dkWCYsLqFOUWw8VgKF/+5Y+mE7LfHWPIYoDXowH+3a9LsWDMo0uAP8YDosPvHQ==", + "dev": true, + "requires": { + "@sinonjs/commons": "^1.3.0", + "array-from": "^2.1.1", + "lodash": "^4.17.15" + } + }, + "@sinonjs/text-encoding": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.1.tgz", + "integrity": "sha512-+iTbntw2IZPb/anVDbypzfQa+ay64MW0Zo8aJ8gZPWMMK6/OubMVb6lUPMagqjOPnmtauXnFCACVl3O7ogjeqQ==", + "dev": true + }, + "@ungap/promise-all-settled": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@ungap/promise-all-settled/-/promise-all-settled-1.1.2.tgz", + "integrity": "sha512-sL/cEvJWAnClXw0wHk85/2L0G6Sj8UB0Ctc1TEMbKSsmpRosqhwj9gWgFRZSrBr2f9tiXISwNhCPmlfqUqyb9Q==", + "dev": true + }, + "ansi-colors": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", + "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", + "dev": true + }, + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "anymatch": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", + "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", + "optional": true, + "requires": { + "micromatch": "^3.1.4", + "normalize-path": "^2.1.1" + }, + "dependencies": { + "normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "optional": true, + "requires": { + "remove-trailing-separator": "^1.0.1" + } + } + } + }, + "argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, + "arr-diff": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", + "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", + "optional": true + }, + "arr-flatten": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", + "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", + "optional": true + }, + "arr-union": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", + "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", + "optional": true + }, + "array-from": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/array-from/-/array-from-2.1.1.tgz", + "integrity": "sha1-z+nYwmYoudxa7MYqn12PHzUsEZU=", + "dev": true + }, + "array-unique": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", + "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", + "optional": true + }, + "assign-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", + "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", + "optional": true + }, + "async-each": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz", + "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==", + "optional": true + }, + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" + }, + "atob": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", + "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", + "optional": true + }, + "babel-plugin-dynamic-import-node": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz", + "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==", + "dev": true, + "requires": { + "object.assign": "^4.1.0" + } + }, + "babel-plugin-polyfill-corejs2": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.2.2.tgz", + "integrity": "sha512-kISrENsJ0z5dNPq5eRvcctITNHYXWOA4DUZRFYCz3jYCcvTb/A546LIddmoGNMVYg2U38OyFeNosQwI9ENTqIQ==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.13.11", + "@babel/helper-define-polyfill-provider": "^0.2.2", + "semver": "^6.1.1" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "babel-plugin-polyfill-corejs3": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.2.3.tgz", + "integrity": "sha512-rCOFzEIJpJEAU14XCcV/erIf/wZQMmMT5l5vXOpL5uoznyOGfDIjPj6FVytMvtzaKSTSVKouOCTPJ5OMUZH30g==", + "dev": true, + "requires": { + "@babel/helper-define-polyfill-provider": "^0.2.2", + "core-js-compat": "^3.14.0" + } + }, + "babel-plugin-polyfill-regenerator": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.2.2.tgz", + "integrity": "sha512-Goy5ghsc21HgPDFtzRkSirpZVW35meGoTmTOb2bxqdl60ghub4xOidgNTHaZfQ2FaxQsKmwvXtOAkcIS4SMBWg==", + "dev": true, + "requires": { + "@babel/helper-define-polyfill-provider": "^0.2.2" + } + }, + "balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "base": { + "version": "0.11.2", + "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", + "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", + "optional": true, + "requires": { + "cache-base": "^1.0.1", + "class-utils": "^0.3.5", + "component-emitter": "^1.2.1", + "define-property": "^1.0.0", + "isobject": "^3.0.1", + "mixin-deep": "^1.2.0", + "pascalcase": "^0.1.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "optional": true, + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "optional": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "optional": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "optional": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "binary-extensions": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", + "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", + "optional": true + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "optional": true, + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "optional": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "browser-stdout": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz", + "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==", + "dev": true + }, + "browserslist": { + "version": "4.16.6", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.16.6.tgz", + "integrity": "sha512-Wspk/PqO+4W9qp5iUTJsa1B/QrYn1keNCcEP5OvP7WBwT4KaDly0uONYmC6Xa3Z5IqnUgS0KcgLYu1l74x0ZXQ==", + "dev": true, + "requires": { + "caniuse-lite": "^1.0.30001219", + "colorette": "^1.2.2", + "electron-to-chromium": "^1.3.723", + "escalade": "^3.1.1", + "node-releases": "^1.1.71" + } + }, + "buffer-from": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", + "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", + "dev": true + }, + "cache-base": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", + "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", + "optional": true, + "requires": { + "collection-visit": "^1.0.0", + "component-emitter": "^1.2.1", + "get-value": "^2.0.6", + "has-value": "^1.0.0", + "isobject": "^3.0.1", + "set-value": "^2.0.0", + "to-object-path": "^0.3.0", + "union-value": "^1.0.0", + "unset-value": "^1.0.0" + } + }, + "call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "requires": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + } + }, + "camelcase": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.2.0.tgz", + "integrity": "sha512-c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg==", + "dev": true + }, + "caniuse-lite": { + "version": "1.0.30001247", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001247.tgz", + "integrity": "sha512-4rS7co+7+AoOSPRPOPUt5/GdaqZc0EsUpWk66ofE3HJTAajUK2Ss2VwoNzVN69ghg8lYYlh0an0Iy4LIHHo9UQ==", + "dev": true + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "chokidar": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.2.tgz", + "integrity": "sha512-ekGhOnNVPgT77r4K/U3GDhu+FQ2S8TnK/s2KbIGXi0SZWuwkZ2QNyfWdZW+TVfn84DpEP7rLeCt2UI6bJ8GwbQ==", + "optional": true, + "requires": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "fsevents": "~2.3.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "dependencies": { + "anymatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", + "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", + "optional": true, + "requires": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + } + }, + "binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "optional": true + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "optional": true, + "requires": { + "fill-range": "^7.0.1" + } + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "optional": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "optional": true, + "requires": { + "binary-extensions": "^2.0.0" + } + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "optional": true + }, + "readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "optional": true, + "requires": { + "picomatch": "^2.2.1" + } + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "optional": true, + "requires": { + "is-number": "^7.0.0" + } + } + } + }, + "class-utils": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", + "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", + "optional": true, + "requires": { + "arr-union": "^3.1.0", + "define-property": "^0.2.5", + "isobject": "^3.0.0", + "static-extend": "^0.1.1" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "optional": true, + "requires": { + "is-descriptor": "^0.1.0" + } + } + } + }, + "cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dev": true, + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + }, + "string-width": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", + "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" + } + }, + "strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.0" + } + } + } + }, + "clone-deep": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", + "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", + "dev": true, + "requires": { + "is-plain-object": "^2.0.4", + "kind-of": "^6.0.2", + "shallow-clone": "^3.0.0" + } + }, + "collection-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", + "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", + "optional": true, + "requires": { + "map-visit": "^1.0.0", + "object-visit": "^1.0.0" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "colorette": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.2.2.tgz", + "integrity": "sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w==", + "dev": true + }, + "combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "requires": { + "delayed-stream": "~1.0.0" + } + }, + "commander": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==" + }, + "commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", + "dev": true + }, + "component-emitter": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", + "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==" + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + }, + "convert-source-map": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", + "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==", + "requires": { + "safe-buffer": "~5.1.1" + } + }, + "cookiejar": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.2.tgz", + "integrity": "sha512-Mw+adcfzPxcPeI+0WlvRrr/3lGVO0bD75SxX6811cxSh1Wbxx7xZBGK1eVtDf6si8rg2lhnUjsVLMFMfbRIuwA==" + }, + "copy-descriptor": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", + "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", + "optional": true + }, + "core-js-compat": { + "version": "3.15.2", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.15.2.tgz", + "integrity": "sha512-Wp+BJVvwopjI+A1EFqm2dwUmWYXrvucmtIB2LgXn/Rb+gWPKYxtmb4GKHGKG/KGF1eK9jfjzT38DITbTOCX/SQ==", + "dev": true, + "requires": { + "browserslist": "^4.16.6", + "semver": "7.0.0" + }, + "dependencies": { + "semver": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz", + "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==", + "dev": true + } + } + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", + "optional": true + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "optional": true, + "requires": { + "ms": "2.0.0" + } + }, + "decamelize": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz", + "integrity": "sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==", + "dev": true + }, + "decode-uri-component": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", + "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", + "optional": true + }, + "define-properties": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", + "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", + "dev": true, + "requires": { + "object-keys": "^1.0.12" + } + }, + "define-property": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", + "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "optional": true, + "requires": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + }, + "dependencies": { + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "optional": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "optional": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "optional": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" + }, + "diff": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-5.0.0.tgz", + "integrity": "sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==", + "dev": true + }, + "electron-to-chromium": { + "version": "1.3.786", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.786.tgz", + "integrity": "sha512-AmvbLBj3hepRk8v/DHrFF8gINxOFfDbrn6Ts3PcK46/FBdQb5OMmpamSpZQXSkfi77FfBzYtQtAk+00LCLYMVw==", + "dev": true + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "dev": true + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, + "esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true + }, + "expand-brackets": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", + "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", + "optional": true, + "requires": { + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "optional": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "optional": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "expect.js": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/expect.js/-/expect.js-0.3.1.tgz", + "integrity": "sha1-sKWaDS7/VDdUTr8M6qYBWEHQm1s=", + "dev": true + }, + "extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", + "optional": true, + "requires": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "optional": true, + "requires": { + "is-plain-object": "^2.0.4" + } + } + } + }, + "extglob": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", + "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", + "optional": true, + "requires": { + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "optional": true, + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "optional": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "optional": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "optional": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "optional": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "fast-safe-stringify": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.0.8.tgz", + "integrity": "sha512-lXatBjf3WPjmWD6DpIZxkeSsCOwqI0maYMpgDlx8g4U2qi4lbjA9oH/HD2a87G+KfsUmo5WbJFmqBZlPxtptag==" + }, + "fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "optional": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "optional": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "find-cache-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", + "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", + "dev": true, + "requires": { + "commondir": "^1.0.1", + "make-dir": "^2.0.0", + "pkg-dir": "^3.0.0" + } + }, + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "requires": { + "locate-path": "^3.0.0" + } + }, + "flat": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", + "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", + "dev": true + }, + "for-in": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", + "optional": true + }, + "form-data": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", + "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + } + }, + "formidable": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/formidable/-/formidable-1.2.2.tgz", + "integrity": "sha512-V8gLm+41I/8kguQ4/o1D3RIHRmhYFG4pnNyonvua+40rqcEmT4+V71yaZ3B457xbbgCsCfjSPi65u/W6vK1U5Q==" + }, + "fragment-cache": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", + "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", + "optional": true, + "requires": { + "map-cache": "^0.2.2" + } + }, + "fs-readdir-recursive": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fs-readdir-recursive/-/fs-readdir-recursive-1.1.0.tgz", + "integrity": "sha512-GNanXlVr2pf02+sPN40XN8HG+ePaNcvM0q5mZBd668Obwb0yD5GiUbZOFgwn8kGMY6I3mdyDJzieUy3PTYyTRA==" + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" + }, + "fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "optional": true + }, + "function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + }, + "gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true + }, + "get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true + }, + "get-intrinsic": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", + "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", + "requires": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1" + } + }, + "get-value": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", + "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", + "optional": true + }, + "glob": { + "version": "7.1.7", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", + "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "requires": { + "is-glob": "^4.0.1" + } + }, + "globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true + }, + "graceful-fs": { + "version": "4.2.6", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.6.tgz", + "integrity": "sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==", + "optional": true + }, + "growl": { + "version": "1.10.5", + "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz", + "integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==", + "dev": true + }, + "has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "requires": { + "function-bind": "^1.1.1" + } + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + }, + "has-symbols": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz", + "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==" + }, + "has-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", + "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", + "optional": true, + "requires": { + "get-value": "^2.0.6", + "has-values": "^1.0.0", + "isobject": "^3.0.0" + } + }, + "has-values": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", + "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", + "optional": true, + "requires": { + "is-number": "^3.0.0", + "kind-of": "^4.0.0" + }, + "dependencies": { + "kind-of": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", + "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", + "optional": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "dev": true + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "optional": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "optional": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-binary-path": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", + "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", + "optional": true, + "requires": { + "binary-extensions": "^1.0.0" + } + }, + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", + "optional": true + }, + "is-core-module": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.5.0.tgz", + "integrity": "sha512-TXCMSDsEHMEEZ6eCA8rwRDbLu55MRGmrctljsBX/2v1d9/GzqHOxW5c5oPSgrUt2vBFXebu9rGqckXGPWOlYpg==", + "dev": true, + "requires": { + "has": "^1.0.3" + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "optional": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "optional": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "optional": true, + "requires": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "dependencies": { + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "optional": true + } + } + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", + "optional": true + }, + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=" + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "is-glob": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", + "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", + "requires": { + "is-extglob": "^2.1.1" + } + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "optional": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "optional": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-plain-obj": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", + "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==", + "dev": true + }, + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "requires": { + "isobject": "^3.0.1" + } + }, + "is-windows": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", + "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", + "optional": true + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "optional": true + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "dev": true + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" + }, + "js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + }, + "js-yaml": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.0.0.tgz", + "integrity": "sha512-pqon0s+4ScYUvX30wxQi3PogGFAlUyH0awepWvwkj4jD4v+ova3RiYw8bmA6x2rDrEaj8i/oWKoRxpVNW+Re8Q==", + "dev": true, + "requires": { + "argparse": "^2.0.1" + } + }, + "jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true + }, + "json5": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz", + "integrity": "sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==", + "dev": true, + "requires": { + "minimist": "^1.2.5" + } + }, + "just-extend": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.2.1.tgz", + "integrity": "sha512-g3UB796vUFIY90VIv/WX3L2c8CS2MdWUww3CNrYmqza1Fg0DURc2K/O4YrnklBdQarSJ/y8JnJYDGc+1iumQjg==", + "dev": true + }, + "kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==" + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true + }, + "lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=", + "dev": true + }, + "log-symbols": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.0.0.tgz", + "integrity": "sha512-FN8JBzLx6CzeMrB0tg6pqlGU1wCrXW+ZXGH481kfsBqer0hToTIiHdjH4Mq8xJUbvATujKCvaREGWpGUionraA==", + "dev": true, + "requires": { + "chalk": "^4.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", + "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "lolex": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lolex/-/lolex-4.2.0.tgz", + "integrity": "sha512-gKO5uExCXvSm6zbF562EvM+rd1kQDnB9AZBbiQVzf1ZmdDpxUSvpnAaVOP83N/31mRK8Ml8/VE8DMvsAZQ+7wg==", + "dev": true + }, + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "requires": { + "yallist": "^4.0.0" + } + }, + "make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "requires": { + "pify": "^4.0.1", + "semver": "^5.6.0" + } + }, + "map-cache": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", + "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", + "optional": true + }, + "map-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", + "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", + "optional": true, + "requires": { + "object-visit": "^1.0.0" + } + }, + "methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=" + }, + "micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "optional": true, + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + } + }, + "mime": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.5.2.tgz", + "integrity": "sha512-tqkh47FzKeCPD2PUiPB6pkbMzsCasjxAfC62/Wap5qrUWcb+sFasXUC5I3gYM5iBM8v/Qpn4UK0x+j0iHyFPDg==" + }, + "mime-db": { + "version": "1.48.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.48.0.tgz", + "integrity": "sha512-FM3QwxV+TnZYQ2aRqhlKBMHxk10lTbMt3bBkMAp54ddrNeVSfcQYOOKuGuy3Ddrm38I04If834fOUSq1yzslJQ==" + }, + "mime-types": { + "version": "2.1.31", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.31.tgz", + "integrity": "sha512-XGZnNzm3QvgKxa8dpzyhFTHmpP3l5YNusmne07VUOXxou9CqUqYa/HBy124RqtVh/O2pECas/MOcsDgpilPOPg==", + "requires": { + "mime-db": "1.48.0" + } + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", + "dev": true + }, + "mixin-deep": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", + "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", + "optional": true, + "requires": { + "for-in": "^1.0.2", + "is-extendable": "^1.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "optional": true, + "requires": { + "is-plain-object": "^2.0.4" + } + } + } + }, + "mocha": { + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/mocha/-/mocha-8.4.0.tgz", + "integrity": "sha512-hJaO0mwDXmZS4ghXsvPVriOhsxQ7ofcpQdm8dE+jISUOKopitvnXFQmpRR7jd2K6VBG6E26gU3IAbXXGIbu4sQ==", + "dev": true, + "requires": { + "@ungap/promise-all-settled": "1.1.2", + "ansi-colors": "4.1.1", + "browser-stdout": "1.3.1", + "chokidar": "3.5.1", + "debug": "4.3.1", + "diff": "5.0.0", + "escape-string-regexp": "4.0.0", + "find-up": "5.0.0", + "glob": "7.1.6", + "growl": "1.10.5", + "he": "1.2.0", + "js-yaml": "4.0.0", + "log-symbols": "4.0.0", + "minimatch": "3.0.4", + "ms": "2.1.3", + "nanoid": "3.1.20", + "serialize-javascript": "5.0.1", + "strip-json-comments": "3.1.1", + "supports-color": "8.1.1", + "which": "2.0.2", + "wide-align": "1.1.3", + "workerpool": "6.1.0", + "yargs": "16.2.0", + "yargs-parser": "20.2.4", + "yargs-unparser": "2.0.0" + }, + "dependencies": { + "anymatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", + "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", + "dev": true, + "requires": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + } + }, + "binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "dev": true + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } + }, + "chokidar": { + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.1.tgz", + "integrity": "sha512-9+s+Od+W0VJJzawDma/gvBNQqkTiqYTWLuZoyAsivsI4AaWTCzHG06/TMjsf1cYe9Cb97UCEhjz7HvnPk2p/tw==", + "dev": true, + "requires": { + "anymatch": "~3.1.1", + "braces": "~3.0.2", + "fsevents": "~2.3.1", + "glob-parent": "~5.1.0", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.5.0" + } + }, + "debug": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", + "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", + "dev": true, + "requires": { + "ms": "2.1.2" + }, + "dependencies": { + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + } + } + }, + "escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "requires": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + } + }, + "glob": { + "version": "7.1.6", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", + "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "requires": { + "binary-extensions": "^2.0.0" + } + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "requires": { + "p-locate": "^5.0.0" + } + }, + "ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true + }, + "p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "requires": { + "yocto-queue": "^0.1.0" + } + }, + "p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "requires": { + "p-limit": "^3.0.2" + } + }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true + }, + "readdirp": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.5.0.tgz", + "integrity": "sha512-cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ==", + "dev": true, + "requires": { + "picomatch": "^2.2.1" + } + }, + "supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "^7.0.0" + } + } + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "optional": true + }, + "nanoid": { + "version": "3.1.20", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.20.tgz", + "integrity": "sha512-a1cQNyczgKbLX9jwbS/+d7W8fX/RfgYR7lVWwWOGIPNgK2m0MWvrGF6/m4kk6U3QcFMnZf3RIhL0v2Jgh/0Uxw==", + "dev": true + }, + "nanomatch": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", + "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", + "optional": true, + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "fragment-cache": "^0.2.1", + "is-windows": "^1.0.2", + "kind-of": "^6.0.2", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + } + }, + "nise": { + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/nise/-/nise-1.5.3.tgz", + "integrity": "sha512-Ymbac/94xeIrMf59REBPOv0thr+CJVFMhrlAkW/gjCIE58BGQdCj0x7KRCb3yz+Ga2Rz3E9XXSvUyyxqqhjQAQ==", + "dev": true, + "requires": { + "@sinonjs/formatio": "^3.2.1", + "@sinonjs/text-encoding": "^0.7.1", + "just-extend": "^4.0.2", + "lolex": "^5.0.1", + "path-to-regexp": "^1.7.0" + }, + "dependencies": { + "lolex": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/lolex/-/lolex-5.1.2.tgz", + "integrity": "sha512-h4hmjAvHTmd+25JSwrtTIuwbKdwg5NzZVRMLn9saij4SZaepCrTCxPr35H/3bjwfMJtN+t3CX8672UIkglz28A==", + "dev": true, + "requires": { + "@sinonjs/commons": "^1.7.0" + } + } + } + }, + "node-modules-regexp": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz", + "integrity": "sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA=", + "dev": true + }, + "node-releases": { + "version": "1.1.73", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.73.tgz", + "integrity": "sha512-uW7fodD6pyW2FZNZnp/Z3hvWKeEW1Y8R1+1CnErE8cXFXzl5blBOoVB41CvMer6P6Q0S5FXDwcHgFd1Wj0U9zg==", + "dev": true + }, + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==" + }, + "object-copy": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", + "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", + "optional": true, + "requires": { + "copy-descriptor": "^0.1.0", + "define-property": "^0.2.5", + "kind-of": "^3.0.3" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "optional": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "optional": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "object-inspect": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.11.0.tgz", + "integrity": "sha512-jp7ikS6Sd3GxQfZJPyH3cjcbJF6GZPClgdV+EFygjFLQ5FmW/dRUnTd9PQ9k0JhoNDabWFbpF1yCdSWCC6gexg==" + }, + "object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true + }, + "object-visit": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", + "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", + "optional": true, + "requires": { + "isobject": "^3.0.0" + } + }, + "object.assign": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz", + "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", + "dev": true, + "requires": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "has-symbols": "^1.0.1", + "object-keys": "^1.1.1" + } + }, + "object.pick": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", + "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", + "optional": true, + "requires": { + "isobject": "^3.0.1" + } + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "requires": { + "wrappy": "1" + } + }, + "p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true + }, + "pascalcase": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", + "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", + "optional": true + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" + }, + "path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true + }, + "path-to-regexp": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz", + "integrity": "sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==", + "dev": true, + "requires": { + "isarray": "0.0.1" + }, + "dependencies": { + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true + } + } + }, + "picomatch": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz", + "integrity": "sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==" + }, + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==" + }, + "pirates": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.1.tgz", + "integrity": "sha512-WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA==", + "dev": true, + "requires": { + "node-modules-regexp": "^1.0.0" + } + }, + "pkg-dir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", + "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", + "dev": true, + "requires": { + "find-up": "^3.0.0" + } + }, + "posix-character-classes": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", + "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=", + "optional": true + }, + "process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", + "optional": true + }, + "qs": { + "version": "6.10.1", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.1.tgz", + "integrity": "sha512-M528Hph6wsSVOBiYUnGf+K/7w0hNshs/duGsNXPUCLH5XAqjEtiPGwNONLV0tBH8NoGb0mvD5JubnUTrujKDTg==", + "requires": { + "side-channel": "^1.0.4" + } + }, + "randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dev": true, + "requires": { + "safe-buffer": "^5.1.0" + } + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "optional": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "readdirp": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", + "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", + "optional": true, + "requires": { + "graceful-fs": "^4.1.11", + "micromatch": "^3.1.10", + "readable-stream": "^2.0.2" + } + }, + "regenerate": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", + "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", + "dev": true + }, + "regenerate-unicode-properties": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-8.2.0.tgz", + "integrity": "sha512-F9DjY1vKLo/tPePDycuH3dn9H1OTPIkVD9Kz4LODu+F2C75mgjAJ7x/gwy6ZcSNRAAkhNlJSOHRe8k3p+K9WhA==", + "dev": true, + "requires": { + "regenerate": "^1.4.0" + } + }, + "regenerator-runtime": { + "version": "0.13.9", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz", + "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==", + "dev": true + }, + "regenerator-transform": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.14.5.tgz", + "integrity": "sha512-eOf6vka5IO151Jfsw2NO9WpGX58W6wWmefK3I1zEGr0lOD0u8rwPaNqQL1aRxUaxLeKO3ArNh3VYg1KbaD+FFw==", + "dev": true, + "requires": { + "@babel/runtime": "^7.8.4" + } + }, + "regex-not": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", + "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", + "optional": true, + "requires": { + "extend-shallow": "^3.0.2", + "safe-regex": "^1.1.0" + } + }, + "regexpu-core": { + "version": "4.7.1", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.7.1.tgz", + "integrity": "sha512-ywH2VUraA44DZQuRKzARmw6S66mr48pQVva4LBeRhcOltJ6hExvWly5ZjFLYo67xbIxb6W1q4bAGtgfEl20zfQ==", + "dev": true, + "requires": { + "regenerate": "^1.4.0", + "regenerate-unicode-properties": "^8.2.0", + "regjsgen": "^0.5.1", + "regjsparser": "^0.6.4", + "unicode-match-property-ecmascript": "^1.0.4", + "unicode-match-property-value-ecmascript": "^1.2.0" + } + }, + "regjsgen": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.2.tgz", + "integrity": "sha512-OFFT3MfrH90xIW8OOSyUrk6QHD5E9JOTeGodiJeBS3J6IwlgzJMNE/1bZklWz5oTg+9dCMyEetclvCVXOPoN3A==", + "dev": true + }, + "regjsparser": { + "version": "0.6.9", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.9.tgz", + "integrity": "sha512-ZqbNRz1SNjLAiYuwY0zoXW8Ne675IX5q+YHioAGbCw4X96Mjl2+dcX9B2ciaeyYjViDAfvIjFpQjJgLttTEERQ==", + "dev": true, + "requires": { + "jsesc": "~0.5.0" + }, + "dependencies": { + "jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", + "dev": true + } + } + }, + "remove-trailing-separator": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", + "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", + "optional": true + }, + "repeat-element": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.4.tgz", + "integrity": "sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ==", + "optional": true + }, + "repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", + "optional": true + }, + "require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", + "dev": true + }, + "resolve": { + "version": "1.20.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz", + "integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==", + "dev": true, + "requires": { + "is-core-module": "^2.2.0", + "path-parse": "^1.0.6" + } + }, + "resolve-url": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", + "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", + "optional": true + }, + "ret": { + "version": "0.1.15", + "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", + "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", + "optional": true + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "safe-regex": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", + "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", + "optional": true, + "requires": { + "ret": "~0.1.10" + } + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + }, + "serialize-javascript": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-5.0.1.tgz", + "integrity": "sha512-SaaNal9imEO737H2c05Og0/8LUXG7EnsZyMa8MzkmuHoELfT6txuj0cMqRj6zfPKnmQ1yasR4PCJc8x+M4JSPA==", + "dev": true, + "requires": { + "randombytes": "^2.1.0" + } + }, + "set-value": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", + "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", + "optional": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.3", + "split-string": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "optional": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "shallow-clone": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", + "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", + "dev": true, + "requires": { + "kind-of": "^6.0.2" + } + }, + "side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "requires": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + } + }, + "sinon": { + "version": "7.5.0", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-7.5.0.tgz", + "integrity": "sha512-AoD0oJWerp0/rY9czP/D6hDTTUYGpObhZjMpd7Cl/A6+j0xBE+ayL/ldfggkBXUs0IkvIiM1ljM8+WkOc5k78Q==", + "dev": true, + "requires": { + "@sinonjs/commons": "^1.4.0", + "@sinonjs/formatio": "^3.2.1", + "@sinonjs/samsam": "^3.3.3", + "diff": "^3.5.0", + "lolex": "^4.2.0", + "nise": "^1.5.2", + "supports-color": "^5.5.0" + }, + "dependencies": { + "diff": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", + "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", + "dev": true + } + } + }, + "slash": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", + "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==" + }, + "snapdragon": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", + "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", + "optional": true, + "requires": { + "base": "^0.11.1", + "debug": "^2.2.0", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "map-cache": "^0.2.2", + "source-map": "^0.5.6", + "source-map-resolve": "^0.5.0", + "use": "^3.1.0" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "optional": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "optional": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "snapdragon-node": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", + "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", + "optional": true, + "requires": { + "define-property": "^1.0.0", + "isobject": "^3.0.0", + "snapdragon-util": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "optional": true, + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "optional": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "optional": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "optional": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "snapdragon-util": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", + "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", + "optional": true, + "requires": { + "kind-of": "^3.2.0" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "optional": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" + }, + "source-map-resolve": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz", + "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", + "optional": true, + "requires": { + "atob": "^2.1.2", + "decode-uri-component": "^0.2.0", + "resolve-url": "^0.2.1", + "source-map-url": "^0.4.0", + "urix": "^0.1.0" + } + }, + "source-map-support": { + "version": "0.5.19", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz", + "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, + "source-map-url": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.1.tgz", + "integrity": "sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw==", + "optional": true + }, + "split-string": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", + "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", + "optional": true, + "requires": { + "extend-shallow": "^3.0.0" + } + }, + "static-extend": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", + "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", + "optional": true, + "requires": { + "define-property": "^0.2.5", + "object-copy": "^0.1.0" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "optional": true, + "requires": { + "is-descriptor": "^0.1.0" + } + } + } + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + }, + "strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true + }, + "superagent": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/superagent/-/superagent-5.3.1.tgz", + "integrity": "sha512-wjJ/MoTid2/RuGCOFtlacyGNxN9QLMgcpYLDQlWFIhhdJ93kNscFonGvrpAHSCVjRVj++DGCglocF7Aej1KHvQ==", + "requires": { + "component-emitter": "^1.3.0", + "cookiejar": "^2.1.2", + "debug": "^4.1.1", + "fast-safe-stringify": "^2.0.7", + "form-data": "^3.0.0", + "formidable": "^1.2.2", + "methods": "^1.1.2", + "mime": "^2.4.6", + "qs": "^6.9.4", + "readable-stream": "^3.6.0", + "semver": "^7.3.2" + }, + "dependencies": { + "debug": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", + "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", + "requires": { + "ms": "2.1.2" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + }, + "semver": { + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "requires": { + "lru-cache": "^6.0.0" + } + } + } + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + }, + "to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", + "dev": true + }, + "to-object-path": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", + "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", + "optional": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "optional": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "to-regex": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", + "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", + "optional": true, + "requires": { + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "regex-not": "^1.0.2", + "safe-regex": "^1.1.0" + } + }, + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "optional": true, + "requires": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + } + }, + "type-detect": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", + "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", + "dev": true + }, + "unicode-canonical-property-names-ecmascript": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz", + "integrity": "sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ==", + "dev": true + }, + "unicode-match-property-ecmascript": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz", + "integrity": "sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg==", + "dev": true, + "requires": { + "unicode-canonical-property-names-ecmascript": "^1.0.4", + "unicode-property-aliases-ecmascript": "^1.0.4" + } + }, + "unicode-match-property-value-ecmascript": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.2.0.tgz", + "integrity": "sha512-wjuQHGQVofmSJv1uVISKLE5zO2rNGzM/KCYZch/QQvez7C1hUhBIuZ701fYXExuufJFMPhv2SyL8CyoIfMLbIQ==", + "dev": true + }, + "unicode-property-aliases-ecmascript": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.1.0.tgz", + "integrity": "sha512-PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg==", + "dev": true + }, + "union-value": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", + "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", + "optional": true, + "requires": { + "arr-union": "^3.1.0", + "get-value": "^2.0.6", + "is-extendable": "^0.1.1", + "set-value": "^2.0.1" + } + }, + "unset-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", + "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", + "optional": true, + "requires": { + "has-value": "^0.3.1", + "isobject": "^3.0.0" + }, + "dependencies": { + "has-value": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", + "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", + "optional": true, + "requires": { + "get-value": "^2.0.3", + "has-values": "^0.1.4", + "isobject": "^2.0.0" + }, + "dependencies": { + "isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", + "optional": true, + "requires": { + "isarray": "1.0.0" + } + } + } + }, + "has-values": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", + "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", + "optional": true + } + } + }, + "upath": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz", + "integrity": "sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==", + "optional": true + }, + "urix": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", + "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", + "optional": true + }, + "use": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", + "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", + "optional": true + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + }, + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + }, + "wide-align": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", + "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", + "dev": true, + "requires": { + "string-width": "^1.0.2 || 2" + } + }, + "workerpool": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.1.0.tgz", + "integrity": "sha512-toV7q9rWNYha963Pl/qyeZ6wG+3nnsyvolaNUS8+R5Wtw6qJPTxIlOP1ZSvcGhEJw+l3HMMmtiNo9Gl61G4GVg==", + "dev": true + }, + "wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + }, + "string-width": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", + "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" + } + }, + "strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.0" + } + } + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + }, + "y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "dev": true, + "requires": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + }, + "string-width": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", + "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" + } + }, + "strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.0" + } + } + } + }, + "yargs-parser": { + "version": "20.2.4", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.4.tgz", + "integrity": "sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA==", + "dev": true + }, + "yargs-unparser": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-2.0.0.tgz", + "integrity": "sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==", + "dev": true, + "requires": { + "camelcase": "^6.0.0", + "decamelize": "^4.0.0", + "flat": "^5.0.2", + "is-plain-obj": "^2.1.0" + } + }, + "yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..a67d325 --- /dev/null +++ b/package.json @@ -0,0 +1,46 @@ +{ + "name": "vrchatapi", + "version": "1.0.0", + "description": "_VRChat_API_Banner_https__raw_githubusercontent_com_vrchatapi_vrchatapi_github_io_master_assets_apibanner_png_VRChat_API_DocumentationThis_project_is_an__OPEN_Open_Source_Project_https__openopensource_orgIndividuals_making_significant_and_valuable_contributions_are_givencommit_access_to_the_project_to_contribute_as_they_see_fit__This_projectis_more_like_an_open_wiki_than_a_standard_guarded_open_source_project__DisclaimerThis_is_the_official_response_of_the_VRChat_Team__from_Tupper_more_specifically_on_the_usage_of_the_VRChat_API__Use_of_the_API_using_applications_other_than_the_approved_methods__website_VRChat_application_are_not_officially_supported__You_may_use_the_API_for_your_own_application_but_keep_these_guidelines_in_mind__We_do_not_provide_documentation_or_support_for_the_API___Do_not_make_queries_to_the_API_more_than_once_per_60_seconds___Abuse_of_the_API_may_result_in_account_termination___Access_to_API_endpoints_may_break_at_any_given_time_with_no_warning_As_stated_this_documentation_was_not_created_with_the_help_of_the_official_VRChat_team__Therefore_this_documentation_is_not_an_official_documentation_of_the_VRChat_API_and_may_not_be_always_up_to_date_with_the_latest_versions__If_you_find_that_a_page_or_endpoint_is_not_longer_valid_please_create_an_issue_and_tell_us_so_we_can_fix_it__Get_in_touch_with_us_https__discord_gg_qjZE9C9fkBvrchat_api_https__discord_gg_qjZE9C9fkB", + "license": "The MIT License (MIT)", + "main": "dist/index.js", + "scripts": { + "build": "babel src -d dist", + "prepare": "npm run build", + "test": "mocha --require @babel/register --recursive" + }, + "browser": { + "fs": false + }, + "dependencies": { + "@babel/cli": "^7.0.0", + "superagent": "^5.3.0" + }, + "devDependencies": { + "@babel/core": "^7.0.0", + "@babel/plugin-proposal-class-properties": "^7.0.0", + "@babel/plugin-proposal-decorators": "^7.0.0", + "@babel/plugin-proposal-do-expressions": "^7.0.0", + "@babel/plugin-proposal-export-default-from": "^7.0.0", + "@babel/plugin-proposal-export-namespace-from": "^7.0.0", + "@babel/plugin-proposal-function-bind": "^7.0.0", + "@babel/plugin-proposal-function-sent": "^7.0.0", + "@babel/plugin-proposal-json-strings": "^7.0.0", + "@babel/plugin-proposal-logical-assignment-operators": "^7.0.0", + "@babel/plugin-proposal-nullish-coalescing-operator": "^7.0.0", + "@babel/plugin-proposal-numeric-separator": "^7.0.0", + "@babel/plugin-proposal-optional-chaining": "^7.0.0", + "@babel/plugin-proposal-pipeline-operator": "^7.0.0", + "@babel/plugin-proposal-throw-expressions": "^7.0.0", + "@babel/plugin-syntax-dynamic-import": "^7.0.0", + "@babel/plugin-syntax-import-meta": "^7.0.0", + "@babel/preset-env": "^7.0.0", + "@babel/register": "^7.0.0", + "expect.js": "^0.3.1", + "mocha": "^8.0.1", + "sinon": "^7.2.0" + }, + "files": [ + "dist" + ] +} diff --git a/src/ApiClient.js b/src/ApiClient.js new file mode 100644 index 0000000..ba19768 --- /dev/null +++ b/src/ApiClient.js @@ -0,0 +1,692 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + + +import superagent from "superagent"; +import querystring from "querystring"; + +/** +* @module ApiClient +* @version 1.0.0 +*/ + +/** +* Manages low level client-server communications, parameter marshalling, etc. There should not be any need for an +* application to use this class directly - the *Api and model classes provide the public API for the service. The +* contents of this file should be regarded as internal but are documented for completeness. +* @alias module:ApiClient +* @class +*/ +class ApiClient { + constructor() { + /** + * The base URL against which to resolve every API call's (relative) path. + * @type {String} + * @default https://api.vrchat.cloud/api/1 + */ + this.basePath = 'https://api.vrchat.cloud/api/1'.replace(/\/+$/, ''); + + /** + * The authentication methods to be included for all API calls. + * @type {Array.} + */ + this.authentications = { + 'apiKeyCookie': {type: 'apiKey', 'in': 'query', name: 'apiKey'}, + 'apiKeyQuery': {type: 'apiKey', 'in': 'query', name: 'apiKey'}, + 'authCookie': {type: 'apiKey', 'in': 'query', name: 'auth'}, + 'authHeader': {type: 'basic'}, + 'twoFactorAuthCookie': {type: 'apiKey', 'in': 'query', name: 'twoFactorAuth'} + } + + /** + * The default HTTP headers to be included for all API calls. + * @type {Array.} + * @default {} + */ + this.defaultHeaders = { + 'User-Agent': 'vrchatapi-node' + }; + + /** + * The default HTTP timeout for all API calls. + * @type {Number} + * @default 60000 + */ + this.timeout = 60000; + + /** + * If set to false an additional timestamp parameter is added to all API GET calls to + * prevent browser caching + * @type {Boolean} + * @default true + */ + this.cache = true; + + /** + * If set to true, the client will save the cookies from each server + * response, and return them in the next request. + * @default false + */ + this.enableCookies = false; + + /* + * Used to save and return cookies in a node.js (non-browser) setting, + * if this.enableCookies is set to true. + */ + if (typeof window === 'undefined') { + this.agent = new superagent.agent(); + } + + /* + * Allow user to override superagent agent + */ + this.requestAgent = null; + + /* + * Allow user to add superagent plugins + */ + this.plugins = null; + + } + + /** + * Returns a string representation for an actual parameter. + * @param param The actual parameter. + * @returns {String} The string representation of param. + */ + paramToString(param) { + if (param == undefined || param == null) { + return ''; + } + if (param instanceof Date) { + return param.toJSON(); + } + if (ApiClient.canBeJsonified(param)) { + return JSON.stringify(param); + } + + return param.toString(); + } + + /** + * Returns a boolean indicating if the parameter could be JSON.stringified + * @param param The actual parameter + * @returns {Boolean} Flag indicating if param can be JSON.stringified + */ + static canBeJsonified(str) { + if (typeof str !== 'string' && typeof str !== 'object') return false; + try { + const type = str.toString(); + return type === '[object Object]' + || type === '[object Array]'; + } catch (err) { + return false; + } + }; + + /** + * Builds full URL by appending the given path to the base URL and replacing path parameter place-holders with parameter values. + * NOTE: query parameters are not handled here. + * @param {String} path The path to append to the base URL. + * @param {Object} pathParams The parameter values to append. + * @param {String} apiBasePath Base path defined in the path, operation level to override the default one + * @returns {String} The encoded path with parameter values substituted. + */ + buildUrl(path, pathParams, apiBasePath) { + if (!path.match(/^\//)) { + path = '/' + path; + } + + var url = this.basePath + path; + + // use API (operation, path) base path if defined + if (apiBasePath !== null && apiBasePath !== undefined) { + url = apiBasePath + path; + } + + url = url.replace(/\{([\w-\.]+)\}/g, (fullMatch, key) => { + var value; + if (pathParams.hasOwnProperty(key)) { + value = this.paramToString(pathParams[key]); + } else { + value = fullMatch; + } + + return encodeURIComponent(value); + }); + + return url; + } + + /** + * Checks whether the given content type represents JSON.
+ * JSON content type examples:
+ *
    + *
  • application/json
  • + *
  • application/json; charset=UTF8
  • + *
  • APPLICATION/JSON
  • + *
+ * @param {String} contentType The MIME content type to check. + * @returns {Boolean} true if contentType represents JSON, otherwise false. + */ + isJsonMime(contentType) { + return Boolean(contentType != null && contentType.match(/^application\/json(;.*)?$/i)); + } + + /** + * Chooses a content type from the given array, with JSON preferred; i.e. return JSON if included, otherwise return the first. + * @param {Array.} contentTypes + * @returns {String} The chosen content type, preferring JSON. + */ + jsonPreferredMime(contentTypes) { + for (var i = 0; i < contentTypes.length; i++) { + if (this.isJsonMime(contentTypes[i])) { + return contentTypes[i]; + } + } + + return contentTypes[0]; + } + + /** + * Checks whether the given parameter value represents file-like content. + * @param param The parameter to check. + * @returns {Boolean} true if param represents a file. + */ + isFileParam(param) { + // fs.ReadStream in Node.js and Electron (but not in runtime like browserify) + if (typeof require === 'function') { + let fs; + try { + fs = require('fs'); + } catch (err) {} + if (fs && fs.ReadStream && param instanceof fs.ReadStream) { + return true; + } + } + + // Buffer in Node.js + if (typeof Buffer === 'function' && param instanceof Buffer) { + return true; + } + + // Blob in browser + if (typeof Blob === 'function' && param instanceof Blob) { + return true; + } + + // File in browser (it seems File object is also instance of Blob, but keep this for safe) + if (typeof File === 'function' && param instanceof File) { + return true; + } + + return false; + } + + /** + * Normalizes parameter values: + *
    + *
  • remove nils
  • + *
  • keep files and arrays
  • + *
  • format to string with `paramToString` for other cases
  • + *
+ * @param {Object.} params The parameters as object properties. + * @returns {Object.} normalized parameters. + */ + normalizeParams(params) { + var newParams = {}; + for (var key in params) { + if (params.hasOwnProperty(key) && params[key] != undefined && params[key] != null) { + var value = params[key]; + if (this.isFileParam(value) || Array.isArray(value)) { + newParams[key] = value; + } else { + newParams[key] = this.paramToString(value); + } + } + } + + return newParams; + } + + /** + * Builds a string representation of an array-type actual parameter, according to the given collection format. + * @param {Array} param An array parameter. + * @param {module:ApiClient.CollectionFormatEnum} collectionFormat The array element separator strategy. + * @returns {String|Array} A string representation of the supplied collection, using the specified delimiter. Returns + * param as is if collectionFormat is multi. + */ + buildCollectionParam(param, collectionFormat) { + if (param == null) { + return null; + } + switch (collectionFormat) { + case 'csv': + return param.map(this.paramToString, this).join(','); + case 'ssv': + return param.map(this.paramToString, this).join(' '); + case 'tsv': + return param.map(this.paramToString, this).join('\t'); + case 'pipes': + return param.map(this.paramToString, this).join('|'); + case 'multi': + //return the array directly as SuperAgent will handle it as expected + return param.map(this.paramToString, this); + case 'passthrough': + return param; + default: + throw new Error('Unknown collection format: ' + collectionFormat); + } + } + + /** + * Applies authentication headers to the request. + * @param {Object} request The request object created by a superagent() call. + * @param {Array.} authNames An array of authentication method names. + */ + applyAuthToRequest(request, authNames) { + authNames.forEach((authName) => { + var auth = this.authentications[authName]; + switch (auth.type) { + case 'basic': + if (auth.username || auth.password) { + request.auth(auth.username || '', auth.password || ''); + } + + break; + case 'bearer': + if (auth.accessToken) { + var localVarBearerToken = typeof auth.accessToken === 'function' + ? auth.accessToken() + : auth.accessToken + request.set({'Authorization': 'Bearer ' + localVarBearerToken}); + } + + break; + case 'apiKey': + if (auth.apiKey) { + var data = {}; + if (auth.apiKeyPrefix) { + data[auth.name] = auth.apiKeyPrefix + ' ' + auth.apiKey; + } else { + data[auth.name] = auth.apiKey; + } + + if (auth['in'] === 'header') { + request.set(data); + } else { + request.query(data); + } + } + + break; + case 'oauth2': + if (auth.accessToken) { + request.set({'Authorization': 'Bearer ' + auth.accessToken}); + } + + break; + default: + throw new Error('Unknown authentication type: ' + auth.type); + } + }); + } + + /** + * Deserializes an HTTP response body into a value of the specified type. + * @param {Object} response A SuperAgent response object. + * @param {(String|Array.|Object.|Function)} returnType The type to return. Pass a string for simple types + * or the constructor function for a complex type. Pass an array containing the type name to return an array of that type. To + * return an object, pass an object with one property whose name is the key type and whose value is the corresponding value type: + * all properties on data will be converted to this type. + * @returns A value of the specified type. + */ + deserialize(response, returnType) { + if (response == null || returnType == null || response.status == 204) { + return null; + } + + // Rely on SuperAgent for parsing response body. + // See http://visionmedia.github.io/superagent/#parsing-response-bodies + var data = response.body; + if (data == null || (typeof data === 'object' && typeof data.length === 'undefined' && !Object.keys(data).length)) { + // SuperAgent does not always produce a body; use the unparsed response as a fallback + data = response.text; + } + + return ApiClient.convertToType(data, returnType); + } + + + /** + * Invokes the REST service using the supplied settings and parameters. + * @param {String} path The base URL to invoke. + * @param {String} httpMethod The HTTP method to use. + * @param {Object.} pathParams A map of path parameters and their values. + * @param {Object.} queryParams A map of query parameters and their values. + * @param {Object.} headerParams A map of header parameters and their values. + * @param {Object.} formParams A map of form parameters and their values. + * @param {Object} bodyParam The value to pass as the request body. + * @param {Array.} authNames An array of authentication type names. + * @param {Array.} contentTypes An array of request MIME types. + * @param {Array.} accepts An array of acceptable response MIME types. + * @param {(String|Array|ObjectFunction)} returnType The required type to return; can be a string for simple types or the + * constructor for a complex type. + * @param {String} apiBasePath base path defined in the operation/path level to override the default one + * @returns {Promise} A {@link https://www.promisejs.org/|Promise} object. + */ + callApi(path, httpMethod, pathParams, + queryParams, headerParams, formParams, bodyParam, authNames, contentTypes, accepts, + returnType, apiBasePath) { + + var url = this.buildUrl(path, pathParams, apiBasePath); + var request = superagent(httpMethod, url); + + if (this.plugins !== null) { + for (var index in this.plugins) { + if (this.plugins.hasOwnProperty(index)) { + request.use(this.plugins[index]) + } + } + } + + // apply authentications + this.applyAuthToRequest(request, authNames); + + // set query parameters + if (httpMethod.toUpperCase() === 'GET' && this.cache === false) { + queryParams['_'] = new Date().getTime(); + } + + request.query(this.normalizeParams(queryParams)); + + // set header parameters + request.set(this.defaultHeaders).set(this.normalizeParams(headerParams)); + + // set requestAgent if it is set by user + if (this.requestAgent) { + request.agent(this.requestAgent); + } + + // set request timeout + request.timeout(this.timeout); + + var contentType = this.jsonPreferredMime(contentTypes); + if (contentType) { + // Issue with superagent and multipart/form-data (https://github.com/visionmedia/superagent/issues/746) + if(contentType != 'multipart/form-data') { + request.type(contentType); + } + } + + if (contentType === 'application/x-www-form-urlencoded') { + request.send(querystring.stringify(this.normalizeParams(formParams))); + } else if (contentType == 'multipart/form-data') { + var _formParams = this.normalizeParams(formParams); + for (var key in _formParams) { + if (_formParams.hasOwnProperty(key)) { + let _formParamsValue = _formParams[key]; + if (this.isFileParam(_formParamsValue)) { + // file field + request.attach(key, _formParamsValue); + } else if (Array.isArray(_formParamsValue) && _formParamsValue.length + && this.isFileParam(_formParamsValue[0])) { + // multiple files + _formParamsValue.forEach(file => request.attach(key, file)); + } else { + request.field(key, _formParamsValue); + } + } + } + } else if (bodyParam !== null && bodyParam !== undefined) { + if (!request.header['Content-Type']) { + request.type('application/json'); + } + request.send(bodyParam); + } + + var accept = this.jsonPreferredMime(accepts); + if (accept) { + request.accept(accept); + } + + if (returnType === 'Blob') { + request.responseType('blob'); + } else if (returnType === 'String') { + request.responseType('string'); + } + + // Attach previously saved cookies, if enabled + if (this.enableCookies){ + if (typeof window === 'undefined') { + this.agent._attachCookies(request); + } + else { + request.withCredentials(); + } + } + + return new Promise((resolve, reject) => { + request.end((error, response) => { + if (error) { + var err = {}; + if (response) { + err.status = response.status; + err.statusText = response.statusText; + err.body = response.body; + err.response = response; + } + err.error = error; + + reject(err); + } else { + try { + var data = this.deserialize(response, returnType); + if (this.enableCookies && typeof window === 'undefined'){ + this.agent._saveCookies(response); + } + + resolve({data, response}); + } catch (err) { + reject(err); + } + } + }); + }); + + } + + /** + * Parses an ISO-8601 string representation or epoch representation of a date value. + * @param {String} str The date value as a string. + * @returns {Date} The parsed date object. + */ + static parseDate(str) { + if (isNaN(str)) { + return new Date(str.replace(/(\d)(T)(\d)/i, '$1 $3')); + } + return new Date(+str); + } + + /** + * Converts a value to the specified type. + * @param {(String|Object)} data The data to convert, as a string or object. + * @param {(String|Array.|Object.|Function)} type The type to return. Pass a string for simple types + * or the constructor function for a complex type. Pass an array containing the type name to return an array of that type. To + * return an object, pass an object with one property whose name is the key type and whose value is the corresponding value type: + * all properties on data will be converted to this type. + * @returns An instance of the specified type or null or undefined if data is null or undefined. + */ + static convertToType(data, type) { + if (data === null || data === undefined) + return data + + switch (type) { + case 'Boolean': + return Boolean(data); + case 'Integer': + return parseInt(data, 10); + case 'Number': + return parseFloat(data); + case 'String': + return String(data); + case 'Date': + return ApiClient.parseDate(String(data)); + case 'Blob': + return data; + default: + if (type === Object) { + // generic object, return directly + return data; + } else if (typeof type.constructFromObject === 'function') { + // for model type like User and enum class + return type.constructFromObject(data); + } else if (Array.isArray(type)) { + // for array type like: ['String'] + var itemType = type[0]; + + return data.map((item) => { + return ApiClient.convertToType(item, itemType); + }); + } else if (typeof type === 'object') { + // for plain object type like: {'String': 'Integer'} + var keyType, valueType; + for (var k in type) { + if (type.hasOwnProperty(k)) { + keyType = k; + valueType = type[k]; + break; + } + } + + var result = {}; + for (var k in data) { + if (data.hasOwnProperty(k)) { + var key = ApiClient.convertToType(k, keyType); + var value = ApiClient.convertToType(data[k], valueType); + result[key] = value; + } + } + + return result; + } else { + // for unknown type, return the data directly + return data; + } + } + } + + /** + * Gets an array of host settings + * @returns An array of host settings + */ + hostSettings() { + return [ + { + 'url': "https://api.vrchat.cloud/api/1", + 'description': "No description provided", + } + ]; + } + + getBasePathFromSettings(index, variables={}) { + var servers = this.hostSettings(); + + // check array index out of bound + if (index < 0 || index >= servers.length) { + throw new Error("Invalid index " + index + " when selecting the host settings. Must be less than " + servers.length); + } + + var server = servers[index]; + var url = server['url']; + + // go through variable and assign a value + for (var variable_name in server['variables']) { + if (variable_name in variables) { + let variable = server['variables'][variable_name]; + if ( !('enum_values' in variable) || variable['enum_values'].includes(variables[variable_name]) ) { + url = url.replace("{" + variable_name + "}", variables[variable_name]); + } else { + throw new Error("The variable `" + variable_name + "` in the host URL has invalid value " + variables[variable_name] + ". Must be " + server['variables'][variable_name]['enum_values'] + "."); + } + } else { + // use default value + url = url.replace("{" + variable_name + "}", server['variables'][variable_name]['default_value']) + } + } + return url; + } + + /** + * Constructs a new map or array model from REST data. + * @param data {Object|Array} The REST data. + * @param obj {Object|Array} The target object or array. + */ + static constructFromObject(data, obj, itemType) { + if (Array.isArray(data)) { + for (var i = 0; i < data.length; i++) { + if (data.hasOwnProperty(i)) + obj[i] = ApiClient.convertToType(data[i], itemType); + } + } else { + for (var k in data) { + if (data.hasOwnProperty(k)) + obj[k] = ApiClient.convertToType(data[k], itemType); + } + } + }; +} + +/** + * Enumeration of collection format separator strategies. + * @enum {String} + * @readonly + */ +ApiClient.CollectionFormatEnum = { + /** + * Comma-separated values. Value: csv + * @const + */ + CSV: ',', + + /** + * Space-separated values. Value: ssv + * @const + */ + SSV: ' ', + + /** + * Tab-separated values. Value: tsv + * @const + */ + TSV: '\t', + + /** + * Pipe(|)-separated values. Value: pipes + * @const + */ + PIPES: '|', + + /** + * Native array. Value: multi + * @const + */ + MULTI: 'multi' +}; + +/** +* The default API client implementation. +* @type {module:ApiClient} +*/ +ApiClient.instance = new ApiClient(); +export default ApiClient; diff --git a/src/api/AuthenticationApi.js b/src/api/AuthenticationApi.js new file mode 100644 index 0000000..9b25d8e --- /dev/null +++ b/src/api/AuthenticationApi.js @@ -0,0 +1,307 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + + +import ApiClient from "../ApiClient"; +import CurrentUser from '../model/CurrentUser'; +import InlineObject from '../model/InlineObject'; +import InlineObject1 from '../model/InlineObject1'; +import InlineResponse200 from '../model/InlineResponse200'; +import InlineResponse2001 from '../model/InlineResponse2001'; +import InlineResponse401 from '../model/InlineResponse401'; +import Success from '../model/Success'; + +/** +* Authentication service. +* @module api/AuthenticationApi +* @version 1.0.0 +*/ +export default class AuthenticationApi { + + /** + * Constructs a new AuthenticationApi. + * @alias module:api/AuthenticationApi + * @class + * @param {module:ApiClient} [apiClient] Optional API client implementation to use, + * default to {@link module:ApiClient#instance} if unspecified. + */ + constructor(apiClient) { + this.apiClient = apiClient || ApiClient.instance; + } + + + + /** + * Delete User + * Deletes the account with given ID. Normal users only have permission to delete their own account. Account deletion is 14 days from this request, and will be cancelled if you do an authenticated request with the account afterwards. **VRC+ NOTE:** Despite the 14-days cooldown, any VRC+ subscription will be cancelled **immediately**. **METHOD NOTE:** Despite this being a Delete action, the method type required is PUT. + * @param {String} userId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/CurrentUser} and HTTP response + */ + deleteUserByIdWithHttpInfo(userId) { + let postBody = null; + // verify the required parameter 'userId' is set + if (userId === undefined || userId === null) { + throw new Error("Missing the required parameter 'userId' when calling deleteUserById"); + } + + let pathParams = { + 'userId': userId + }; + let queryParams = { + }; + let headerParams = { + }; + let formParams = { + }; + + let authNames = ['apiKeyCookie', 'authCookie']; + let contentTypes = []; + let accepts = ['application/json']; + let returnType = CurrentUser; + return this.apiClient.callApi( + '/user/{userId}/delete', 'PUT', + pathParams, queryParams, headerParams, formParams, postBody, + authNames, contentTypes, accepts, returnType, null + ); + } + + /** + * Delete User + * Deletes the account with given ID. Normal users only have permission to delete their own account. Account deletion is 14 days from this request, and will be cancelled if you do an authenticated request with the account afterwards. **VRC+ NOTE:** Despite the 14-days cooldown, any VRC+ subscription will be cancelled **immediately**. **METHOD NOTE:** Despite this being a Delete action, the method type required is PUT. + * @param {String} userId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/CurrentUser} + */ + deleteUserById(userId) { + return this.deleteUserByIdWithHttpInfo(userId) + .then(function(response_and_data) { + return response_and_data.data; + }); + } + + + /** + * Login and/or Get Current User Info + * Login and/or Get user data from your VRChat account. If `Authorization` header is present then a new login session will be generated, and a new `auth` cookie is returned. **WARNING: Session Limit:** Each authentication with login credentials counts as a separate session, out of which you have a limited amount. Make sure to save and reuse the `auth` cookie whenever you can, and avoid sending the Authorization header unless strictly neccesary. While the exact number of simultaneous open sessions is secret, expect to **very fast** run into the rate-limit and be temporarily blocked from making new sessions until the old ones expire. + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/CurrentUser} and HTTP response + */ + getCurrentUserWithHttpInfo() { + let postBody = null; + + let pathParams = { + }; + let queryParams = { + }; + let headerParams = { + }; + let formParams = { + }; + + let authNames = ['authCookie', 'authHeader', 'twoFactorAuthCookie']; + let contentTypes = []; + let accepts = ['application/json']; + let returnType = CurrentUser; + return this.apiClient.callApi( + '/auth/user', 'GET', + pathParams, queryParams, headerParams, formParams, postBody, + authNames, contentTypes, accepts, returnType, null + ); + } + + /** + * Login and/or Get Current User Info + * Login and/or Get user data from your VRChat account. If `Authorization` header is present then a new login session will be generated, and a new `auth` cookie is returned. **WARNING: Session Limit:** Each authentication with login credentials counts as a separate session, out of which you have a limited amount. Make sure to save and reuse the `auth` cookie whenever you can, and avoid sending the Authorization header unless strictly neccesary. While the exact number of simultaneous open sessions is secret, expect to **very fast** run into the rate-limit and be temporarily blocked from making new sessions until the old ones expire. + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/CurrentUser} + */ + getCurrentUser() { + return this.getCurrentUserWithHttpInfo() + .then(function(response_and_data) { + return response_and_data.data; + }); + } + + + /** + * Logout + * Invalidates the auth cookie. + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/Success} and HTTP response + */ + logoutWithHttpInfo() { + let postBody = null; + + let pathParams = { + }; + let queryParams = { + }; + let headerParams = { + }; + let formParams = { + }; + + let authNames = ['apiKeyCookie', 'authCookie']; + let contentTypes = []; + let accepts = ['application/json']; + let returnType = Success; + return this.apiClient.callApi( + '/logout', 'PUT', + pathParams, queryParams, headerParams, formParams, postBody, + authNames, contentTypes, accepts, returnType, null + ); + } + + /** + * Logout + * Invalidates the auth cookie. + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/Success} + */ + logout() { + return this.logoutWithHttpInfo() + .then(function(response_and_data) { + return response_and_data.data; + }); + } + + + /** + * Verify 2FA code + * Finishes the login sequence with a normal 2FA-generated code for accounts with 2FA-protection enabled. + * @param {Object} opts Optional parameters + * @param {module:model/InlineObject} opts.inlineObject + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/InlineResponse2001} and HTTP response + */ + verify2FAWithHttpInfo(opts) { + opts = opts || {}; + let postBody = opts['inlineObject']; + + let pathParams = { + }; + let queryParams = { + }; + let headerParams = { + }; + let formParams = { + }; + + let authNames = ['authCookie']; + let contentTypes = ['application/json']; + let accepts = ['application/json']; + let returnType = InlineResponse2001; + return this.apiClient.callApi( + '/auth/twofactorauth/totp/verify', 'POST', + pathParams, queryParams, headerParams, formParams, postBody, + authNames, contentTypes, accepts, returnType, null + ); + } + + /** + * Verify 2FA code + * Finishes the login sequence with a normal 2FA-generated code for accounts with 2FA-protection enabled. + * @param {Object} opts Optional parameters + * @param {module:model/InlineObject} opts.inlineObject + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/InlineResponse2001} + */ + verify2FA(opts) { + return this.verify2FAWithHttpInfo(opts) + .then(function(response_and_data) { + return response_and_data.data; + }); + } + + + /** + * Verify Auth Token + * Verify whether the currently provided Auth Token is valid. + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/InlineResponse200} and HTTP response + */ + verifyAuthTokenWithHttpInfo() { + let postBody = null; + + let pathParams = { + }; + let queryParams = { + }; + let headerParams = { + }; + let formParams = { + }; + + let authNames = ['apiKeyCookie', 'authCookie']; + let contentTypes = []; + let accepts = ['application/json']; + let returnType = InlineResponse200; + return this.apiClient.callApi( + '/auth', 'GET', + pathParams, queryParams, headerParams, formParams, postBody, + authNames, contentTypes, accepts, returnType, null + ); + } + + /** + * Verify Auth Token + * Verify whether the currently provided Auth Token is valid. + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/InlineResponse200} + */ + verifyAuthToken() { + return this.verifyAuthTokenWithHttpInfo() + .then(function(response_and_data) { + return response_and_data.data; + }); + } + + + /** + * Verify 2FA code with Recovery code + * Finishes the login sequence with an OTP (One Time Password) recovery code for accounts with 2FA-protection enabled. + * @param {Object} opts Optional parameters + * @param {module:model/InlineObject1} opts.inlineObject1 + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/InlineResponse2001} and HTTP response + */ + verifyRecoveryCodeWithHttpInfo(opts) { + opts = opts || {}; + let postBody = opts['inlineObject1']; + + let pathParams = { + }; + let queryParams = { + }; + let headerParams = { + }; + let formParams = { + }; + + let authNames = ['authCookie']; + let contentTypes = ['application/json']; + let accepts = ['application/json']; + let returnType = InlineResponse2001; + return this.apiClient.callApi( + '/auth/twofactorauth/otp/verify', 'POST', + pathParams, queryParams, headerParams, formParams, postBody, + authNames, contentTypes, accepts, returnType, null + ); + } + + /** + * Verify 2FA code with Recovery code + * Finishes the login sequence with an OTP (One Time Password) recovery code for accounts with 2FA-protection enabled. + * @param {Object} opts Optional parameters + * @param {module:model/InlineObject1} opts.inlineObject1 + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/InlineResponse2001} + */ + verifyRecoveryCode(opts) { + return this.verifyRecoveryCodeWithHttpInfo(opts) + .then(function(response_and_data) { + return response_and_data.data; + }); + } + + +} diff --git a/src/api/FilesApi.js b/src/api/FilesApi.js new file mode 100644 index 0000000..12683ca --- /dev/null +++ b/src/api/FilesApi.js @@ -0,0 +1,597 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + + +import ApiClient from "../ApiClient"; +import Error from '../model/Error'; +import InlineObject3 from '../model/InlineObject3'; +import InlineObject4 from '../model/InlineObject4'; +import InlineResponse2004 from '../model/InlineResponse2004'; +import InlineResponse2005 from '../model/InlineResponse2005'; +import Success from '../model/Success'; + +/** +* Files service. +* @module api/FilesApi +* @version 1.0.0 +*/ +export default class FilesApi { + + /** + * Constructs a new FilesApi. + * @alias module:api/FilesApi + * @class + * @param {module:ApiClient} [apiClient] Optional API client implementation to use, + * default to {@link module:ApiClient#instance} if unspecified. + */ + constructor(apiClient) { + this.apiClient = apiClient || ApiClient.instance; + } + + + + /** + * Create File + * Creates a new File object + * @param {Object} opts Optional parameters + * @param {module:model/InlineObject3} opts.inlineObject3 + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link File} and HTTP response + */ + createFileWithHttpInfo(opts) { + opts = opts || {}; + let postBody = opts['inlineObject3']; + + let pathParams = { + }; + let queryParams = { + }; + let headerParams = { + }; + let formParams = { + }; + + let authNames = ['apiKeyCookie', 'authCookie']; + let contentTypes = ['application/json']; + let accepts = ['application/json']; + let returnType = File; + return this.apiClient.callApi( + '/file', 'POST', + pathParams, queryParams, headerParams, formParams, postBody, + authNames, contentTypes, accepts, returnType, null + ); + } + + /** + * Create File + * Creates a new File object + * @param {Object} opts Optional parameters + * @param {module:model/InlineObject3} opts.inlineObject3 + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link File} + */ + createFile(opts) { + return this.createFileWithHttpInfo(opts) + .then(function(response_and_data) { + return response_and_data.data; + }); + } + + + /** + * Create File Version + * Creates a new FileVersion. Once a Version has been created, proceed to the `/file/{fileId}/{versionId}/file/start` endpoint to start a file upload. + * @param {String} fileId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link File} and HTTP response + */ + createFileVersionWithHttpInfo(fileId) { + let postBody = null; + // verify the required parameter 'fileId' is set + if (fileId === undefined || fileId === null) { + throw new Error("Missing the required parameter 'fileId' when calling createFileVersion"); + } + + let pathParams = { + 'fileId': fileId + }; + let queryParams = { + }; + let headerParams = { + }; + let formParams = { + }; + + let authNames = ['apiKeyCookie', 'authCookie']; + let contentTypes = []; + let accepts = ['application/json']; + let returnType = File; + return this.apiClient.callApi( + '/file/{fileId}', 'POST', + pathParams, queryParams, headerParams, formParams, postBody, + authNames, contentTypes, accepts, returnType, null + ); + } + + /** + * Create File Version + * Creates a new FileVersion. Once a Version has been created, proceed to the `/file/{fileId}/{versionId}/file/start` endpoint to start a file upload. + * @param {String} fileId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link File} + */ + createFileVersion(fileId) { + return this.createFileVersionWithHttpInfo(fileId) + .then(function(response_and_data) { + return response_and_data.data; + }); + } + + + /** + * Delete File + * Deletes a File object. + * @param {String} fileId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/Success} and HTTP response + */ + deleteFileWithHttpInfo(fileId) { + let postBody = null; + // verify the required parameter 'fileId' is set + if (fileId === undefined || fileId === null) { + throw new Error("Missing the required parameter 'fileId' when calling deleteFile"); + } + + let pathParams = { + 'fileId': fileId + }; + let queryParams = { + }; + let headerParams = { + }; + let formParams = { + }; + + let authNames = ['apiKeyCookie', 'authCookie']; + let contentTypes = []; + let accepts = ['application/json']; + let returnType = Success; + return this.apiClient.callApi( + '/file/{fileId}', 'DELETE', + pathParams, queryParams, headerParams, formParams, postBody, + authNames, contentTypes, accepts, returnType, null + ); + } + + /** + * Delete File + * Deletes a File object. + * @param {String} fileId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/Success} + */ + deleteFile(fileId) { + return this.deleteFileWithHttpInfo(fileId) + .then(function(response_and_data) { + return response_and_data.data; + }); + } + + + /** + * Delete File Version + * Delete a specific version of a file. You can only delete the latest version. + * @param {String} fileId + * @param {Number} versionId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link File} and HTTP response + */ + deleteFileVersionWithHttpInfo(fileId, versionId) { + let postBody = null; + // verify the required parameter 'fileId' is set + if (fileId === undefined || fileId === null) { + throw new Error("Missing the required parameter 'fileId' when calling deleteFileVersion"); + } + // verify the required parameter 'versionId' is set + if (versionId === undefined || versionId === null) { + throw new Error("Missing the required parameter 'versionId' when calling deleteFileVersion"); + } + + let pathParams = { + 'fileId': fileId, + 'versionId': versionId + }; + let queryParams = { + }; + let headerParams = { + }; + let formParams = { + }; + + let authNames = ['apiKeyCookie', 'authCookie']; + let contentTypes = []; + let accepts = ['application/json']; + let returnType = File; + return this.apiClient.callApi( + '/file/{fileId}/{versionId}', 'DELETE', + pathParams, queryParams, headerParams, formParams, postBody, + authNames, contentTypes, accepts, returnType, null + ); + } + + /** + * Delete File Version + * Delete a specific version of a file. You can only delete the latest version. + * @param {String} fileId + * @param {Number} versionId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link File} + */ + deleteFileVersion(fileId, versionId) { + return this.deleteFileVersionWithHttpInfo(fileId, versionId) + .then(function(response_and_data) { + return response_and_data.data; + }); + } + + + /** + * Download File Version + * Downloads the file with the provided version number. **Version Note:** Version 0 is always when the file was created. The real data is usually always located in version 1 and up. **Extension Note:** Files are not guaranteed to have a file extensions. UnityPackage files tends to have it, images through this endpoint do not. You are responsible for appending file extension from the `extension` field when neccesary. + * @param {String} fileId + * @param {Number} versionId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing HTTP response + */ + downloadFileVersionWithHttpInfo(fileId, versionId) { + let postBody = null; + // verify the required parameter 'fileId' is set + if (fileId === undefined || fileId === null) { + throw new Error("Missing the required parameter 'fileId' when calling downloadFileVersion"); + } + // verify the required parameter 'versionId' is set + if (versionId === undefined || versionId === null) { + throw new Error("Missing the required parameter 'versionId' when calling downloadFileVersion"); + } + + let pathParams = { + 'fileId': fileId, + 'versionId': versionId + }; + let queryParams = { + }; + let headerParams = { + }; + let formParams = { + }; + + let authNames = ['apiKeyCookie', 'authCookie']; + let contentTypes = []; + let accepts = []; + let returnType = null; + return this.apiClient.callApi( + '/file/{fileId}/{versionId}', 'GET', + pathParams, queryParams, headerParams, formParams, postBody, + authNames, contentTypes, accepts, returnType, null + ); + } + + /** + * Download File Version + * Downloads the file with the provided version number. **Version Note:** Version 0 is always when the file was created. The real data is usually always located in version 1 and up. **Extension Note:** Files are not guaranteed to have a file extensions. UnityPackage files tends to have it, images through this endpoint do not. You are responsible for appending file extension from the `extension` field when neccesary. + * @param {String} fileId + * @param {Number} versionId + * @return {Promise} a {@link https://www.promisejs.org/|Promise} + */ + downloadFileVersion(fileId, versionId) { + return this.downloadFileVersionWithHttpInfo(fileId, versionId) + .then(function(response_and_data) { + return response_and_data.data; + }); + } + + + /** + * Finish FileData Upload + * Finish an upload of a FileData. This will mark it as \"complete\". After uploading the `file` for Avatars and Worlds you then have to upload a `signature` file. + * @param {String} fileId + * @param {Number} versionId + * @param {module:model/String} fileType + * @param {Object} opts Optional parameters + * @param {module:model/InlineObject4} opts.inlineObject4 + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link File} and HTTP response + */ + finishFileDataUploadWithHttpInfo(fileId, versionId, fileType, opts) { + opts = opts || {}; + let postBody = opts['inlineObject4']; + // verify the required parameter 'fileId' is set + if (fileId === undefined || fileId === null) { + throw new Error("Missing the required parameter 'fileId' when calling finishFileDataUpload"); + } + // verify the required parameter 'versionId' is set + if (versionId === undefined || versionId === null) { + throw new Error("Missing the required parameter 'versionId' when calling finishFileDataUpload"); + } + // verify the required parameter 'fileType' is set + if (fileType === undefined || fileType === null) { + throw new Error("Missing the required parameter 'fileType' when calling finishFileDataUpload"); + } + + let pathParams = { + 'fileId': fileId, + 'versionId': versionId, + 'fileType': fileType + }; + let queryParams = { + }; + let headerParams = { + }; + let formParams = { + }; + + let authNames = ['apiKeyCookie', 'authCookie']; + let contentTypes = ['application/json']; + let accepts = ['application/json']; + let returnType = File; + return this.apiClient.callApi( + '/file/{fileId}/{versionId}/{fileType}/finish', 'PUT', + pathParams, queryParams, headerParams, formParams, postBody, + authNames, contentTypes, accepts, returnType, null + ); + } + + /** + * Finish FileData Upload + * Finish an upload of a FileData. This will mark it as \"complete\". After uploading the `file` for Avatars and Worlds you then have to upload a `signature` file. + * @param {String} fileId + * @param {Number} versionId + * @param {module:model/String} fileType + * @param {Object} opts Optional parameters + * @param {module:model/InlineObject4} opts.inlineObject4 + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link File} + */ + finishFileDataUpload(fileId, versionId, fileType, opts) { + return this.finishFileDataUploadWithHttpInfo(fileId, versionId, fileType, opts) + .then(function(response_and_data) { + return response_and_data.data; + }); + } + + + /** + * Show File + * Shows general information about the \"File\" object. Each File can have several \"Version\"'s, and each Version can have multiple real files or \"Data\" blobs. + * @param {String} fileId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link File} and HTTP response + */ + getFileWithHttpInfo(fileId) { + let postBody = null; + // verify the required parameter 'fileId' is set + if (fileId === undefined || fileId === null) { + throw new Error("Missing the required parameter 'fileId' when calling getFile"); + } + + let pathParams = { + 'fileId': fileId + }; + let queryParams = { + }; + let headerParams = { + }; + let formParams = { + }; + + let authNames = ['apiKeyCookie', 'authCookie']; + let contentTypes = []; + let accepts = ['application/json']; + let returnType = File; + return this.apiClient.callApi( + '/file/{fileId}', 'GET', + pathParams, queryParams, headerParams, formParams, postBody, + authNames, contentTypes, accepts, returnType, null + ); + } + + /** + * Show File + * Shows general information about the \"File\" object. Each File can have several \"Version\"'s, and each Version can have multiple real files or \"Data\" blobs. + * @param {String} fileId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link File} + */ + getFile(fileId) { + return this.getFileWithHttpInfo(fileId) + .then(function(response_and_data) { + return response_and_data.data; + }); + } + + + /** + * Check FileData Upload Status + * Retrieves the upload status for file upload. Can currently only be accessed when `status` is `waiting`. Trying to access it on a file version already uploaded currently times out. + * @param {String} fileId + * @param {Number} versionId + * @param {module:model/String} fileType + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/InlineResponse2004} and HTTP response + */ + getFileDataUploadStatusWithHttpInfo(fileId, versionId, fileType) { + let postBody = null; + // verify the required parameter 'fileId' is set + if (fileId === undefined || fileId === null) { + throw new Error("Missing the required parameter 'fileId' when calling getFileDataUploadStatus"); + } + // verify the required parameter 'versionId' is set + if (versionId === undefined || versionId === null) { + throw new Error("Missing the required parameter 'versionId' when calling getFileDataUploadStatus"); + } + // verify the required parameter 'fileType' is set + if (fileType === undefined || fileType === null) { + throw new Error("Missing the required parameter 'fileType' when calling getFileDataUploadStatus"); + } + + let pathParams = { + 'fileId': fileId, + 'versionId': versionId, + 'fileType': fileType + }; + let queryParams = { + }; + let headerParams = { + }; + let formParams = { + }; + + let authNames = ['apiKeyCookie', 'authCookie']; + let contentTypes = []; + let accepts = ['application/json']; + let returnType = InlineResponse2004; + return this.apiClient.callApi( + '/file/{fileId}/{versionId}/{fileType}/status', 'GET', + pathParams, queryParams, headerParams, formParams, postBody, + authNames, contentTypes, accepts, returnType, null + ); + } + + /** + * Check FileData Upload Status + * Retrieves the upload status for file upload. Can currently only be accessed when `status` is `waiting`. Trying to access it on a file version already uploaded currently times out. + * @param {String} fileId + * @param {Number} versionId + * @param {module:model/String} fileType + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/InlineResponse2004} + */ + getFileDataUploadStatus(fileId, versionId, fileType) { + return this.getFileDataUploadStatusWithHttpInfo(fileId, versionId, fileType) + .then(function(response_and_data) { + return response_and_data.data; + }); + } + + + /** + * List Files + * Returns a list of files + * @param {Object} opts Optional parameters + * @param {String} opts.tag Tag, for example \"icon\" or \"gallery\", not included by default. + * @param {String} opts.userId UserID, will always generate a 500 permission error. + * @param {Number} opts.n The number of objects to return. (default to 60) + * @param {Number} opts.offset A zero-based offset from the default object sorting from where search results start. + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link Array.} and HTTP response + */ + getFilesWithHttpInfo(opts) { + opts = opts || {}; + let postBody = null; + + let pathParams = { + }; + let queryParams = { + 'tag': opts['tag'], + 'userId': opts['userId'], + 'n': opts['n'], + 'offset': opts['offset'] + }; + let headerParams = { + }; + let formParams = { + }; + + let authNames = ['apiKeyCookie', 'authCookie']; + let contentTypes = []; + let accepts = ['application/json']; + let returnType = [File]; + return this.apiClient.callApi( + '/files', 'GET', + pathParams, queryParams, headerParams, formParams, postBody, + authNames, contentTypes, accepts, returnType, null + ); + } + + /** + * List Files + * Returns a list of files + * @param {Object} opts Optional parameters + * @param {String} opts.tag Tag, for example \"icon\" or \"gallery\", not included by default. + * @param {String} opts.userId UserID, will always generate a 500 permission error. + * @param {Number} opts.n The number of objects to return. (default to 60) + * @param {Number} opts.offset A zero-based offset from the default object sorting from where search results start. + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link Array.} + */ + getFiles(opts) { + return this.getFilesWithHttpInfo(opts) + .then(function(response_and_data) { + return response_and_data.data; + }); + } + + + /** + * Start FileData Upload + * Starts an upload of a specific FilePart. This endpoint will return an AWS URL which you can PUT data to. You need to call this and receive a new AWS API URL for each `partNumber`. Please see AWS's REST documentation on \"PUT Object to S3\" on how to upload. Once all parts has been uploaded, proceed to `/finish` endpoint. **Note:** `nextPartNumber` seems like it is always ignored. Despite it returning 0, first partNumber is always 1. + * @param {String} fileId + * @param {Number} versionId + * @param {module:model/String} fileType + * @param {Number} partNumber + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/InlineResponse2005} and HTTP response + */ + startFileDataUploadWithHttpInfo(fileId, versionId, fileType, partNumber) { + let postBody = null; + // verify the required parameter 'fileId' is set + if (fileId === undefined || fileId === null) { + throw new Error("Missing the required parameter 'fileId' when calling startFileDataUpload"); + } + // verify the required parameter 'versionId' is set + if (versionId === undefined || versionId === null) { + throw new Error("Missing the required parameter 'versionId' when calling startFileDataUpload"); + } + // verify the required parameter 'fileType' is set + if (fileType === undefined || fileType === null) { + throw new Error("Missing the required parameter 'fileType' when calling startFileDataUpload"); + } + // verify the required parameter 'partNumber' is set + if (partNumber === undefined || partNumber === null) { + throw new Error("Missing the required parameter 'partNumber' when calling startFileDataUpload"); + } + + let pathParams = { + 'fileId': fileId, + 'versionId': versionId, + 'fileType': fileType + }; + let queryParams = { + 'partNumber': partNumber + }; + let headerParams = { + }; + let formParams = { + }; + + let authNames = ['apiKeyCookie', 'authCookie']; + let contentTypes = []; + let accepts = ['application/json']; + let returnType = InlineResponse2005; + return this.apiClient.callApi( + '/file/{fileId}/{versionId}/{fileType}/start', 'PUT', + pathParams, queryParams, headerParams, formParams, postBody, + authNames, contentTypes, accepts, returnType, null + ); + } + + /** + * Start FileData Upload + * Starts an upload of a specific FilePart. This endpoint will return an AWS URL which you can PUT data to. You need to call this and receive a new AWS API URL for each `partNumber`. Please see AWS's REST documentation on \"PUT Object to S3\" on how to upload. Once all parts has been uploaded, proceed to `/finish` endpoint. **Note:** `nextPartNumber` seems like it is always ignored. Despite it returning 0, first partNumber is always 1. + * @param {String} fileId + * @param {Number} versionId + * @param {module:model/String} fileType + * @param {Number} partNumber + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/InlineResponse2005} + */ + startFileDataUpload(fileId, versionId, fileType, partNumber) { + return this.startFileDataUploadWithHttpInfo(fileId, versionId, fileType, partNumber) + .then(function(response_and_data) { + return response_and_data.data; + }); + } + + +} diff --git a/src/api/FriendsApi.js b/src/api/FriendsApi.js new file mode 100644 index 0000000..02b9d0e --- /dev/null +++ b/src/api/FriendsApi.js @@ -0,0 +1,288 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + + +import ApiClient from "../ApiClient"; +import Error from '../model/Error'; +import InlineResponse2003 from '../model/InlineResponse2003'; +import InlineResponse401 from '../model/InlineResponse401'; +import LimitedUser from '../model/LimitedUser'; +import Notification from '../model/Notification'; +import Success from '../model/Success'; + +/** +* Friends service. +* @module api/FriendsApi +* @version 1.0.0 +*/ +export default class FriendsApi { + + /** + * Constructs a new FriendsApi. + * @alias module:api/FriendsApi + * @class + * @param {module:ApiClient} [apiClient] Optional API client implementation to use, + * default to {@link module:ApiClient#instance} if unspecified. + */ + constructor(apiClient) { + this.apiClient = apiClient || ApiClient.instance; + } + + + + /** + * Delete Friend Request + * Deletes an outgoing pending friend request to another user. To delete an incoming friend request, use the `deleteNotification` endpoint instead. + * @param {String} userId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/Success} and HTTP response + */ + deleteFriendRequestWithHttpInfo(userId) { + let postBody = null; + // verify the required parameter 'userId' is set + if (userId === undefined || userId === null) { + throw new Error("Missing the required parameter 'userId' when calling deleteFriendRequest"); + } + + let pathParams = { + 'userId': userId + }; + let queryParams = { + }; + let headerParams = { + }; + let formParams = { + }; + + let authNames = ['apiKeyCookie', 'authCookie']; + let contentTypes = []; + let accepts = ['application/json']; + let returnType = Success; + return this.apiClient.callApi( + '/user/{userId}/friendRequest', 'DELETE', + pathParams, queryParams, headerParams, formParams, postBody, + authNames, contentTypes, accepts, returnType, null + ); + } + + /** + * Delete Friend Request + * Deletes an outgoing pending friend request to another user. To delete an incoming friend request, use the `deleteNotification` endpoint instead. + * @param {String} userId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/Success} + */ + deleteFriendRequest(userId) { + return this.deleteFriendRequestWithHttpInfo(userId) + .then(function(response_and_data) { + return response_and_data.data; + }); + } + + + /** + * Send Friend Request + * Send a friend request to another user. + * @param {String} userId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/Notification} and HTTP response + */ + friendWithHttpInfo(userId) { + let postBody = null; + // verify the required parameter 'userId' is set + if (userId === undefined || userId === null) { + throw new Error("Missing the required parameter 'userId' when calling friend"); + } + + let pathParams = { + 'userId': userId + }; + let queryParams = { + }; + let headerParams = { + }; + let formParams = { + }; + + let authNames = ['apiKeyCookie', 'authCookie']; + let contentTypes = []; + let accepts = ['application/json']; + let returnType = Notification; + return this.apiClient.callApi( + '/user/{userId}/friendRequest', 'POST', + pathParams, queryParams, headerParams, formParams, postBody, + authNames, contentTypes, accepts, returnType, null + ); + } + + /** + * Send Friend Request + * Send a friend request to another user. + * @param {String} userId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/Notification} + */ + friend(userId) { + return this.friendWithHttpInfo(userId) + .then(function(response_and_data) { + return response_and_data.data; + }); + } + + + /** + * Check Friend Status + * Retrieve if the user is currently a friend with a given user, if they have an outgoing friend request, and if they have an incoming friend request. The proper way to receive and accept friend request is by checking if the user has an incoming `Notification` of type `friendRequest`, and then accepting that notification. + * @param {String} userId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/InlineResponse2003} and HTTP response + */ + getFriendStatusWithHttpInfo(userId) { + let postBody = null; + // verify the required parameter 'userId' is set + if (userId === undefined || userId === null) { + throw new Error("Missing the required parameter 'userId' when calling getFriendStatus"); + } + + let pathParams = { + 'userId': userId + }; + let queryParams = { + }; + let headerParams = { + }; + let formParams = { + }; + + let authNames = ['apiKeyCookie', 'authCookie']; + let contentTypes = []; + let accepts = ['application/json']; + let returnType = InlineResponse2003; + return this.apiClient.callApi( + '/user/{userId}/friendStatus', 'GET', + pathParams, queryParams, headerParams, formParams, postBody, + authNames, contentTypes, accepts, returnType, null + ); + } + + /** + * Check Friend Status + * Retrieve if the user is currently a friend with a given user, if they have an outgoing friend request, and if they have an incoming friend request. The proper way to receive and accept friend request is by checking if the user has an incoming `Notification` of type `friendRequest`, and then accepting that notification. + * @param {String} userId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/InlineResponse2003} + */ + getFriendStatus(userId) { + return this.getFriendStatusWithHttpInfo(userId) + .then(function(response_and_data) { + return response_and_data.data; + }); + } + + + /** + * List Friends + * List information about friends. + * @param {Object} opts Optional parameters + * @param {Number} opts.offset A zero-based offset from the default object sorting from where search results start. + * @param {Number} opts.n The number of objects to return. (default to 60) + * @param {Boolean} opts.offline Returns *only* offline users if true, returns only online and active users if false + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link Array.} and HTTP response + */ + getFriendsWithHttpInfo(opts) { + opts = opts || {}; + let postBody = null; + + let pathParams = { + }; + let queryParams = { + 'offset': opts['offset'], + 'n': opts['n'], + 'offline': opts['offline'] + }; + let headerParams = { + }; + let formParams = { + }; + + let authNames = ['apiKeyCookie', 'authCookie']; + let contentTypes = []; + let accepts = ['application/json']; + let returnType = [LimitedUser]; + return this.apiClient.callApi( + '/auth/user/friends', 'GET', + pathParams, queryParams, headerParams, formParams, postBody, + authNames, contentTypes, accepts, returnType, null + ); + } + + /** + * List Friends + * List information about friends. + * @param {Object} opts Optional parameters + * @param {Number} opts.offset A zero-based offset from the default object sorting from where search results start. + * @param {Number} opts.n The number of objects to return. (default to 60) + * @param {Boolean} opts.offline Returns *only* offline users if true, returns only online and active users if false + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link Array.} + */ + getFriends(opts) { + return this.getFriendsWithHttpInfo(opts) + .then(function(response_and_data) { + return response_and_data.data; + }); + } + + + /** + * Unfriend + * Unfriend a user by ID. + * @param {String} userId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/Success} and HTTP response + */ + unfriendWithHttpInfo(userId) { + let postBody = null; + // verify the required parameter 'userId' is set + if (userId === undefined || userId === null) { + throw new Error("Missing the required parameter 'userId' when calling unfriend"); + } + + let pathParams = { + 'userId': userId + }; + let queryParams = { + }; + let headerParams = { + }; + let formParams = { + }; + + let authNames = ['apiKeyCookie', 'authCookie']; + let contentTypes = []; + let accepts = ['application/json']; + let returnType = Success; + return this.apiClient.callApi( + '/auth/user/friends/{userId}', 'DELETE', + pathParams, queryParams, headerParams, formParams, postBody, + authNames, contentTypes, accepts, returnType, null + ); + } + + /** + * Unfriend + * Unfriend a user by ID. + * @param {String} userId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/Success} + */ + unfriend(userId) { + return this.unfriendWithHttpInfo(userId) + .then(function(response_and_data) { + return response_and_data.data; + }); + } + + +} diff --git a/src/api/NotificationsApi.js b/src/api/NotificationsApi.js new file mode 100644 index 0000000..bcc7546 --- /dev/null +++ b/src/api/NotificationsApi.js @@ -0,0 +1,288 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + + +import ApiClient from "../ApiClient"; +import Error from '../model/Error'; +import InlineResponse401 from '../model/InlineResponse401'; +import Notification from '../model/Notification'; +import Success from '../model/Success'; + +/** +* Notifications service. +* @module api/NotificationsApi +* @version 1.0.0 +*/ +export default class NotificationsApi { + + /** + * Constructs a new NotificationsApi. + * @alias module:api/NotificationsApi + * @class + * @param {module:ApiClient} [apiClient] Optional API client implementation to use, + * default to {@link module:ApiClient#instance} if unspecified. + */ + constructor(apiClient) { + this.apiClient = apiClient || ApiClient.instance; + } + + + + /** + * Accept Friend Request + * Accept a friend request by notification `frq_` ID. Friend requests can be found using the NotificationsAPI `getNotifications` by filtering of type `friendRequest`. + * @param {String} notificationId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/Success} and HTTP response + */ + acceptFriendRequestWithHttpInfo(notificationId) { + let postBody = null; + // verify the required parameter 'notificationId' is set + if (notificationId === undefined || notificationId === null) { + throw new Error("Missing the required parameter 'notificationId' when calling acceptFriendRequest"); + } + + let pathParams = { + 'notificationId': notificationId + }; + let queryParams = { + }; + let headerParams = { + }; + let formParams = { + }; + + let authNames = ['apiKeyCookie', 'authCookie']; + let contentTypes = []; + let accepts = ['application/json']; + let returnType = Success; + return this.apiClient.callApi( + '/auth/user/notifications/{notificationId}/accept', 'PUT', + pathParams, queryParams, headerParams, formParams, postBody, + authNames, contentTypes, accepts, returnType, null + ); + } + + /** + * Accept Friend Request + * Accept a friend request by notification `frq_` ID. Friend requests can be found using the NotificationsAPI `getNotifications` by filtering of type `friendRequest`. + * @param {String} notificationId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/Success} + */ + acceptFriendRequest(notificationId) { + return this.acceptFriendRequestWithHttpInfo(notificationId) + .then(function(response_and_data) { + return response_and_data.data; + }); + } + + + /** + * Clear All Notifications + * Clear **all** notifications. + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/Success} and HTTP response + */ + clearNotificationsWithHttpInfo() { + let postBody = null; + + let pathParams = { + }; + let queryParams = { + }; + let headerParams = { + }; + let formParams = { + }; + + let authNames = ['apiKeyCookie', 'authCookie']; + let contentTypes = []; + let accepts = ['application/json']; + let returnType = Success; + return this.apiClient.callApi( + '/auth/user/notifications/clear', 'PUT', + pathParams, queryParams, headerParams, formParams, postBody, + authNames, contentTypes, accepts, returnType, null + ); + } + + /** + * Clear All Notifications + * Clear **all** notifications. + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/Success} + */ + clearNotifications() { + return this.clearNotificationsWithHttpInfo() + .then(function(response_and_data) { + return response_and_data.data; + }); + } + + + /** + * Delete Notification + * Delete a notification. + * @param {String} notificationId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/Notification} and HTTP response + */ + deleteNotificationWithHttpInfo(notificationId) { + let postBody = null; + // verify the required parameter 'notificationId' is set + if (notificationId === undefined || notificationId === null) { + throw new Error("Missing the required parameter 'notificationId' when calling deleteNotification"); + } + + let pathParams = { + 'notificationId': notificationId + }; + let queryParams = { + }; + let headerParams = { + }; + let formParams = { + }; + + let authNames = ['apiKeyCookie', 'authCookie']; + let contentTypes = []; + let accepts = ['application/json']; + let returnType = Notification; + return this.apiClient.callApi( + '/auth/user/notifications/{notificationId}/hide', 'PUT', + pathParams, queryParams, headerParams, formParams, postBody, + authNames, contentTypes, accepts, returnType, null + ); + } + + /** + * Delete Notification + * Delete a notification. + * @param {String} notificationId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/Notification} + */ + deleteNotification(notificationId) { + return this.deleteNotificationWithHttpInfo(notificationId) + .then(function(response_and_data) { + return response_and_data.data; + }); + } + + + /** + * List Notifications + * Retrieve all of the current user's notifications. + * @param {Object} opts Optional parameters + * @param {String} opts.type Only send notifications of this type (can use `all` for all). + * @param {Boolean} opts.sent Return notifications sent by the user. Must be false or omitted. + * @param {Boolean} opts.hidden Whether to return hidden or non-hidden notifications. True only allowed on type `friendRequest`. + * @param {String} opts.after Only return notifications sent after this Date. Ignored if type is `friendRequest`. + * @param {Number} opts.n The number of objects to return. (default to 60) + * @param {Number} opts.offset A zero-based offset from the default object sorting from where search results start. + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link Array.} and HTTP response + */ + getNotificationsWithHttpInfo(opts) { + opts = opts || {}; + let postBody = null; + + let pathParams = { + }; + let queryParams = { + 'type': opts['type'], + 'sent': opts['sent'], + 'hidden': opts['hidden'], + 'after': opts['after'], + 'n': opts['n'], + 'offset': opts['offset'] + }; + let headerParams = { + }; + let formParams = { + }; + + let authNames = ['apiKeyCookie', 'authCookie']; + let contentTypes = []; + let accepts = ['application/json']; + let returnType = [Notification]; + return this.apiClient.callApi( + '/auth/user/notifications', 'GET', + pathParams, queryParams, headerParams, formParams, postBody, + authNames, contentTypes, accepts, returnType, null + ); + } + + /** + * List Notifications + * Retrieve all of the current user's notifications. + * @param {Object} opts Optional parameters + * @param {String} opts.type Only send notifications of this type (can use `all` for all). + * @param {Boolean} opts.sent Return notifications sent by the user. Must be false or omitted. + * @param {Boolean} opts.hidden Whether to return hidden or non-hidden notifications. True only allowed on type `friendRequest`. + * @param {String} opts.after Only return notifications sent after this Date. Ignored if type is `friendRequest`. + * @param {Number} opts.n The number of objects to return. (default to 60) + * @param {Number} opts.offset A zero-based offset from the default object sorting from where search results start. + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link Array.} + */ + getNotifications(opts) { + return this.getNotificationsWithHttpInfo(opts) + .then(function(response_and_data) { + return response_and_data.data; + }); + } + + + /** + * Mark As Read + * Mark a notification as seen. + * @param {String} notificationId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/Notification} and HTTP response + */ + markNotificationAsReadWithHttpInfo(notificationId) { + let postBody = null; + // verify the required parameter 'notificationId' is set + if (notificationId === undefined || notificationId === null) { + throw new Error("Missing the required parameter 'notificationId' when calling markNotificationAsRead"); + } + + let pathParams = { + 'notificationId': notificationId + }; + let queryParams = { + }; + let headerParams = { + }; + let formParams = { + }; + + let authNames = ['apiKeyCookie', 'authCookie']; + let contentTypes = []; + let accepts = ['application/json']; + let returnType = Notification; + return this.apiClient.callApi( + '/auth/user/notifications/{notificationId}/see', 'PUT', + pathParams, queryParams, headerParams, formParams, postBody, + authNames, contentTypes, accepts, returnType, null + ); + } + + /** + * Mark As Read + * Mark a notification as seen. + * @param {String} notificationId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/Notification} + */ + markNotificationAsRead(notificationId) { + return this.markNotificationAsReadWithHttpInfo(notificationId) + .then(function(response_and_data) { + return response_and_data.data; + }); + } + + +} diff --git a/src/api/SystemApi.js b/src/api/SystemApi.js new file mode 100644 index 0000000..6a3631b --- /dev/null +++ b/src/api/SystemApi.js @@ -0,0 +1,203 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + + +import ApiClient from "../ApiClient"; +import Config from '../model/Config'; +import InlineResponse2002 from '../model/InlineResponse2002'; + +/** +* System service. +* @module api/SystemApi +* @version 1.0.0 +*/ +export default class SystemApi { + + /** + * Constructs a new SystemApi. + * @alias module:api/SystemApi + * @class + * @param {module:ApiClient} [apiClient] Optional API client implementation to use, + * default to {@link module:ApiClient#instance} if unspecified. + */ + constructor(apiClient) { + this.apiClient = apiClient || ApiClient.instance; + } + + + + /** + * Fetch API Config + * API config contains configuration that the clients needs to work properly. Currently the most important value here is `clientApiKey` which is used for all other API endpoints. + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/Config} and HTTP response + */ + getConfigWithHttpInfo() { + let postBody = null; + + let pathParams = { + }; + let queryParams = { + }; + let headerParams = { + }; + let formParams = { + }; + + let authNames = []; + let contentTypes = []; + let accepts = ['application/json']; + let returnType = Config; + return this.apiClient.callApi( + '/config', 'GET', + pathParams, queryParams, headerParams, formParams, postBody, + authNames, contentTypes, accepts, returnType, null + ); + } + + /** + * Fetch API Config + * API config contains configuration that the clients needs to work properly. Currently the most important value here is `clientApiKey` which is used for all other API endpoints. + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/Config} + */ + getConfig() { + return this.getConfigWithHttpInfo() + .then(function(response_and_data) { + return response_and_data.data; + }); + } + + + /** + * Current Online Users + * Returns in plain format the number of currently online users. **NOTE:** The response type is not of JSON, but is an integer in plain ASCII format. + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link Number} and HTTP response + */ + getCurrentOnlineUsersWithHttpInfo() { + let postBody = null; + + let pathParams = { + }; + let queryParams = { + }; + let headerParams = { + }; + let formParams = { + }; + + let authNames = []; + let contentTypes = []; + let accepts = ['text/plain']; + let returnType = 'Number'; + return this.apiClient.callApi( + '/visits', 'GET', + pathParams, queryParams, headerParams, formParams, postBody, + authNames, contentTypes, accepts, returnType, null + ); + } + + /** + * Current Online Users + * Returns in plain format the number of currently online users. **NOTE:** The response type is not of JSON, but is an integer in plain ASCII format. + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link Number} + */ + getCurrentOnlineUsers() { + return this.getCurrentOnlineUsersWithHttpInfo() + .then(function(response_and_data) { + return response_and_data.data; + }); + } + + + /** + * Check API Health + * Gets the overall health status, the server name, and the current build version tag of the API. + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/InlineResponse2002} and HTTP response + */ + getHealthWithHttpInfo() { + let postBody = null; + + let pathParams = { + }; + let queryParams = { + }; + let headerParams = { + }; + let formParams = { + }; + + let authNames = []; + let contentTypes = []; + let accepts = ['application/json']; + let returnType = InlineResponse2002; + return this.apiClient.callApi( + '/health', 'GET', + pathParams, queryParams, headerParams, formParams, postBody, + authNames, contentTypes, accepts, returnType, null + ); + } + + /** + * Check API Health + * Gets the overall health status, the server name, and the current build version tag of the API. + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/InlineResponse2002} + */ + getHealth() { + return this.getHealthWithHttpInfo() + .then(function(response_and_data) { + return response_and_data.data; + }); + } + + + /** + * Current System Time + * Returns in plain format the current time of the API server. **NOTE:** The response type is not of JSON, but is a string in plain ASCII format. + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link Date} and HTTP response + */ + getSystemTimeWithHttpInfo() { + let postBody = null; + + let pathParams = { + }; + let queryParams = { + }; + let headerParams = { + }; + let formParams = { + }; + + let authNames = []; + let contentTypes = []; + let accepts = ['text/plain']; + let returnType = 'Date'; + return this.apiClient.callApi( + '/time', 'GET', + pathParams, queryParams, headerParams, formParams, postBody, + authNames, contentTypes, accepts, returnType, null + ); + } + + /** + * Current System Time + * Returns in plain format the current time of the API server. **NOTE:** The response type is not of JSON, but is a string in plain ASCII format. + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link Date} + */ + getSystemTime() { + return this.getSystemTimeWithHttpInfo() + .then(function(response_and_data) { + return response_and_data.data; + }); + } + + +} diff --git a/src/api/UsersApi.js b/src/api/UsersApi.js new file mode 100644 index 0000000..0f25fe5 --- /dev/null +++ b/src/api/UsersApi.js @@ -0,0 +1,307 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + + +import ApiClient from "../ApiClient"; +import CurrentUser from '../model/CurrentUser'; +import InlineObject2 from '../model/InlineObject2'; +import InlineResponse401 from '../model/InlineResponse401'; +import LimitedUser from '../model/LimitedUser'; +import User from '../model/User'; + +/** +* Users service. +* @module api/UsersApi +* @version 1.0.0 +*/ +export default class UsersApi { + + /** + * Constructs a new UsersApi. + * @alias module:api/UsersApi + * @class + * @param {module:ApiClient} [apiClient] Optional API client implementation to use, + * default to {@link module:ApiClient#instance} if unspecified. + */ + constructor(apiClient) { + this.apiClient = apiClient || ApiClient.instance; + } + + + + /** + * Get User by ID + * Get public user information about a specific user using their ID. + * @param {String} userId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/User} and HTTP response + */ + getUserWithHttpInfo(userId) { + let postBody = null; + // verify the required parameter 'userId' is set + if (userId === undefined || userId === null) { + throw new Error("Missing the required parameter 'userId' when calling getUser"); + } + + let pathParams = { + 'userId': userId + }; + let queryParams = { + }; + let headerParams = { + }; + let formParams = { + }; + + let authNames = ['apiKeyCookie', 'authCookie']; + let contentTypes = []; + let accepts = ['application/json']; + let returnType = User; + return this.apiClient.callApi( + '/users/{userId}', 'GET', + pathParams, queryParams, headerParams, formParams, postBody, + authNames, contentTypes, accepts, returnType, null + ); + } + + /** + * Get User by ID + * Get public user information about a specific user using their ID. + * @param {String} userId + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/User} + */ + getUser(userId) { + return this.getUserWithHttpInfo(userId) + .then(function(response_and_data) { + return response_and_data.data; + }); + } + + + /** + * Get User by Username + * Get public user information about a specific user using their name. + * @param {String} username + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/User} and HTTP response + */ + getUserByNameWithHttpInfo(username) { + let postBody = null; + // verify the required parameter 'username' is set + if (username === undefined || username === null) { + throw new Error("Missing the required parameter 'username' when calling getUserByName"); + } + + let pathParams = { + 'username': username + }; + let queryParams = { + }; + let headerParams = { + }; + let formParams = { + }; + + let authNames = ['apiKeyCookie', 'authCookie']; + let contentTypes = []; + let accepts = ['application/json']; + let returnType = User; + return this.apiClient.callApi( + '/users/{username}/name', 'GET', + pathParams, queryParams, headerParams, formParams, postBody, + authNames, contentTypes, accepts, returnType, null + ); + } + + /** + * Get User by Username + * Get public user information about a specific user using their name. + * @param {String} username + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/User} + */ + getUserByName(username) { + return this.getUserByNameWithHttpInfo(username) + .then(function(response_and_data) { + return response_and_data.data; + }); + } + + + /** + * Search Active Users + * Search and list any Active users by text query. **Has been locked down and now always respond with \"Invalid Admin Credentials\".** + * @param {String} search Username to search for + * @param {Object} opts Optional parameters + * @param {String} opts.developerType Active user by developer type, none for normal users and internal for moderators + * @param {Number} opts.offset A zero-based offset from the default object sorting from where search results start. + * @param {Number} opts.n The number of objects to return. (default to 60) + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link Array.} and HTTP response + */ + searchActiveUsersWithHttpInfo(search, opts) { + opts = opts || {}; + let postBody = null; + // verify the required parameter 'search' is set + if (search === undefined || search === null) { + throw new Error("Missing the required parameter 'search' when calling searchActiveUsers"); + } + + let pathParams = { + }; + let queryParams = { + 'search': search, + 'developerType': opts['developerType'], + 'offset': opts['offset'], + 'n': opts['n'] + }; + let headerParams = { + }; + let formParams = { + }; + + let authNames = ['apiKeyCookie', 'authCookie']; + let contentTypes = []; + let accepts = ['application/json']; + let returnType = [LimitedUser]; + return this.apiClient.callApi( + '/users/active', 'GET', + pathParams, queryParams, headerParams, formParams, postBody, + authNames, contentTypes, accepts, returnType, null + ); + } + + /** + * Search Active Users + * Search and list any Active users by text query. **Has been locked down and now always respond with \"Invalid Admin Credentials\".** + * @param {String} search Username to search for + * @param {Object} opts Optional parameters + * @param {String} opts.developerType Active user by developer type, none for normal users and internal for moderators + * @param {Number} opts.offset A zero-based offset from the default object sorting from where search results start. + * @param {Number} opts.n The number of objects to return. (default to 60) + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link Array.} + */ + searchActiveUsers(search, opts) { + return this.searchActiveUsersWithHttpInfo(search, opts) + .then(function(response_and_data) { + return response_and_data.data; + }); + } + + + /** + * Search All Users + * Search and list any users by text query + * @param {Object} opts Optional parameters + * @param {String} opts.search Searches by `displayName`. Will return empty array if search query is empty or missing. + * @param {String} opts.developerType Active user by developer type, none for normal users and internal for moderators + * @param {Number} opts.n The number of objects to return. (default to 60) + * @param {Number} opts.offset A zero-based offset from the default object sorting from where search results start. + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link Array.} and HTTP response + */ + searchUsersWithHttpInfo(opts) { + opts = opts || {}; + let postBody = null; + + let pathParams = { + }; + let queryParams = { + 'search': opts['search'], + 'developerType': opts['developerType'], + 'n': opts['n'], + 'offset': opts['offset'] + }; + let headerParams = { + }; + let formParams = { + }; + + let authNames = ['apiKeyCookie', 'authCookie']; + let contentTypes = []; + let accepts = ['application/json']; + let returnType = [LimitedUser]; + return this.apiClient.callApi( + '/users', 'GET', + pathParams, queryParams, headerParams, formParams, postBody, + authNames, contentTypes, accepts, returnType, null + ); + } + + /** + * Search All Users + * Search and list any users by text query + * @param {Object} opts Optional parameters + * @param {String} opts.search Searches by `displayName`. Will return empty array if search query is empty or missing. + * @param {String} opts.developerType Active user by developer type, none for normal users and internal for moderators + * @param {Number} opts.n The number of objects to return. (default to 60) + * @param {Number} opts.offset A zero-based offset from the default object sorting from where search results start. + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link Array.} + */ + searchUsers(opts) { + return this.searchUsersWithHttpInfo(opts) + .then(function(response_and_data) { + return response_and_data.data; + }); + } + + + /** + * Update User Info + * Update a users information such as the email and birthday. + * @param {String} userId + * @param {Object} opts Optional parameters + * @param {module:model/InlineObject2} opts.inlineObject2 + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/CurrentUser} and HTTP response + */ + updateUserWithHttpInfo(userId, opts) { + opts = opts || {}; + let postBody = opts['inlineObject2']; + // verify the required parameter 'userId' is set + if (userId === undefined || userId === null) { + throw new Error("Missing the required parameter 'userId' when calling updateUser"); + } + + let pathParams = { + 'userId': userId + }; + let queryParams = { + }; + let headerParams = { + }; + let formParams = { + }; + + let authNames = ['apiKeyCookie', 'authCookie']; + let contentTypes = ['application/json']; + let accepts = ['application/json']; + let returnType = CurrentUser; + return this.apiClient.callApi( + '/users/{userId}', 'PUT', + pathParams, queryParams, headerParams, formParams, postBody, + authNames, contentTypes, accepts, returnType, null + ); + } + + /** + * Update User Info + * Update a users information such as the email and birthday. + * @param {String} userId + * @param {Object} opts Optional parameters + * @param {module:model/InlineObject2} opts.inlineObject2 + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/CurrentUser} + */ + updateUser(userId, opts) { + return this.updateUserWithHttpInfo(userId, opts) + .then(function(response_and_data) { + return response_and_data.data; + }); + } + + +} diff --git a/src/api/WorldsApi.js b/src/api/WorldsApi.js new file mode 100644 index 0000000..e788ba8 --- /dev/null +++ b/src/api/WorldsApi.js @@ -0,0 +1,131 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + + +import ApiClient from "../ApiClient"; +import InlineResponse401 from '../model/InlineResponse401'; +import LimitedWorld from '../model/LimitedWorld'; + +/** +* Worlds service. +* @module api/WorldsApi +* @version 1.0.0 +*/ +export default class WorldsApi { + + /** + * Constructs a new WorldsApi. + * @alias module:api/WorldsApi + * @class + * @param {module:ApiClient} [apiClient] Optional API client implementation to use, + * default to {@link module:ApiClient#instance} if unspecified. + */ + constructor(apiClient) { + this.apiClient = apiClient || ApiClient.instance; + } + + + + /** + * Search all worlds + * Search and list any worlds by text query + * @param {Object} opts Optional parameters + * @param {Boolean} opts.featured is the world featured + * @param {module:model/String} opts.sort (default to 'order') + * @param {String} opts.user Set to `me` for searching own worlds + * @param {String} opts.userId Filter by creator id, use `me` for only worlds owned by current user + * @param {Number} opts.n The number of objects to return. (default to 60) + * @param {module:model/String} opts.order (default to 'descending') + * @param {Number} opts.offset A zero-based offset from the default object sorting from where search results start. + * @param {String} opts.search Searches by `name`. Will return empty array if search query is empty or missing. + * @param {Array.} opts.tag Filter by Tag + * @param {Array.} opts.notag Tags to exclude + * @param {module:model/String} opts.releaseStatus (default to 'hidden') + * @param {String} opts.maxUnityVersion Current unity version the game is using + * @param {String} opts.minUnityVersion The min unity version the world support + * @param {String} opts.maxAssetVersion Current asset version the game is using + * @param {String} opts.minAssetVersion The min asset version the world support + * @param {String} opts.platform The platform the world supports (usually standalonewindows) + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link Array.} and HTTP response + */ + searchWorldsWithHttpInfo(opts) { + opts = opts || {}; + let postBody = null; + + let pathParams = { + }; + let queryParams = { + 'featured': opts['featured'], + 'sort': opts['sort'], + 'user': opts['user'], + 'userId': opts['userId'], + 'n': opts['n'], + 'order': opts['order'], + 'offset': opts['offset'], + 'search': opts['search'], + 'tag': this.apiClient.buildCollectionParam(opts['tag'], 'multi'), + 'notag': this.apiClient.buildCollectionParam(opts['notag'], 'multi'), + 'releaseStatus': opts['releaseStatus'], + 'maxUnityVersion': opts['maxUnityVersion'], + 'minUnityVersion': opts['minUnityVersion'], + 'maxAssetVersion': opts['maxAssetVersion'], + 'minAssetVersion': opts['minAssetVersion'], + 'platform': opts['platform'] + }; + let headerParams = { + }; + let formParams = { + }; + + let authNames = ['apiKeyCookie', 'authCookie']; + let contentTypes = []; + let accepts = ['application/json']; + let returnType = [LimitedWorld]; + return this.apiClient.callApi( + '/worlds', 'GET', + pathParams, queryParams, headerParams, formParams, postBody, + authNames, contentTypes, accepts, returnType, null + ); + } + + /** + * Search all worlds + * Search and list any worlds by text query + * @param {Object} opts Optional parameters + * @param {Boolean} opts.featured is the world featured + * @param {module:model/String} opts.sort (default to 'order') + * @param {String} opts.user Set to `me` for searching own worlds + * @param {String} opts.userId Filter by creator id, use `me` for only worlds owned by current user + * @param {Number} opts.n The number of objects to return. (default to 60) + * @param {module:model/String} opts.order (default to 'descending') + * @param {Number} opts.offset A zero-based offset from the default object sorting from where search results start. + * @param {String} opts.search Searches by `name`. Will return empty array if search query is empty or missing. + * @param {Array.} opts.tag Filter by Tag + * @param {Array.} opts.notag Tags to exclude + * @param {module:model/String} opts.releaseStatus (default to 'hidden') + * @param {String} opts.maxUnityVersion Current unity version the game is using + * @param {String} opts.minUnityVersion The min unity version the world support + * @param {String} opts.maxAssetVersion Current asset version the game is using + * @param {String} opts.minAssetVersion The min asset version the world support + * @param {String} opts.platform The platform the world supports (usually standalonewindows) + * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link Array.} + */ + searchWorlds(opts) { + return this.searchWorldsWithHttpInfo(opts) + .then(function(response_and_data) { + return response_and_data.data; + }); + } + + +} diff --git a/src/index.js b/src/index.js new file mode 100644 index 0000000..abc7bec --- /dev/null +++ b/src/index.js @@ -0,0 +1,356 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + + +import ApiClient from './ApiClient'; +import Config from './model/Config'; +import ConfigAnnouncements from './model/ConfigAnnouncements'; +import ConfigDownloadUrls from './model/ConfigDownloadUrls'; +import ConfigDynamicWorldRows from './model/ConfigDynamicWorldRows'; +import ConfigEvents from './model/ConfigEvents'; +import CurrentUser from './model/CurrentUser'; +import DeploymentGroup from './model/DeploymentGroup'; +import DeveloperType from './model/DeveloperType'; +import Error from './model/Error'; +import File from './model/File'; +import FileData from './model/FileData'; +import FileStatus from './model/FileStatus'; +import FileVersion from './model/FileVersion'; +import InlineObject from './model/InlineObject'; +import InlineObject1 from './model/InlineObject1'; +import InlineObject2 from './model/InlineObject2'; +import InlineObject3 from './model/InlineObject3'; +import InlineObject4 from './model/InlineObject4'; +import InlineResponse200 from './model/InlineResponse200'; +import InlineResponse2001 from './model/InlineResponse2001'; +import InlineResponse2002 from './model/InlineResponse2002'; +import InlineResponse2003 from './model/InlineResponse2003'; +import InlineResponse2004 from './model/InlineResponse2004'; +import InlineResponse2005 from './model/InlineResponse2005'; +import InlineResponse401 from './model/InlineResponse401'; +import LimitedUser from './model/LimitedUser'; +import LimitedWorld from './model/LimitedWorld'; +import MIMEType from './model/MIMEType'; +import Notification from './model/Notification'; +import NotificationType from './model/NotificationType'; +import ReleaseStatus from './model/ReleaseStatus'; +import Response from './model/Response'; +import Success from './model/Success'; +import User from './model/User'; +import UserState from './model/UserState'; +import UserStatus from './model/UserStatus'; +import AuthenticationApi from './api/AuthenticationApi'; +import FilesApi from './api/FilesApi'; +import FriendsApi from './api/FriendsApi'; +import NotificationsApi from './api/NotificationsApi'; +import SystemApi from './api/SystemApi'; +import UsersApi from './api/UsersApi'; +import WorldsApi from './api/WorldsApi'; + + +/** +* _VRChat_API_Banner_https__raw_githubusercontent_com_vrchatapi_vrchatapi_github_io_master_assets_apibanner_png_VRChat_API_DocumentationThis_project_is_an__OPEN_Open_Source_Project_https__openopensource_orgIndividuals_making_significant_and_valuable_contributions_are_givencommit_access_to_the_project_to_contribute_as_they_see_fit__This_projectis_more_like_an_open_wiki_than_a_standard_guarded_open_source_project__DisclaimerThis_is_the_official_response_of_the_VRChat_Team__from_Tupper_more_specifically_on_the_usage_of_the_VRChat_API__Use_of_the_API_using_applications_other_than_the_approved_methods__website_VRChat_application_are_not_officially_supported__You_may_use_the_API_for_your_own_application_but_keep_these_guidelines_in_mind__We_do_not_provide_documentation_or_support_for_the_API___Do_not_make_queries_to_the_API_more_than_once_per_60_seconds___Abuse_of_the_API_may_result_in_account_termination___Access_to_API_endpoints_may_break_at_any_given_time_with_no_warning_As_stated_this_documentation_was_not_created_with_the_help_of_the_official_VRChat_team__Therefore_this_documentation_is_not_an_official_documentation_of_the_VRChat_API_and_may_not_be_always_up_to_date_with_the_latest_versions__If_you_find_that_a_page_or_endpoint_is_not_longer_valid_please_create_an_issue_and_tell_us_so_we_can_fix_it__Get_in_touch_with_us_https__discord_gg_qjZE9C9fkBvrchat_api_https__discord_gg_qjZE9C9fkB.
+* The index module provides access to constructors for all the classes which comprise the public API. +*

+* An AMD (recommended!) or CommonJS application will generally do something equivalent to the following: +*

+* var vrchatapi = require('index'); // See note below*.
+* var xxxSvc = new vrchatapi.XxxApi(); // Allocate the API class we're going to use.
+* var yyyModel = new vrchatapi.Yyy(); // Construct a model instance.
+* yyyModel.someProperty = 'someValue';
+* ...
+* var zzz = xxxSvc.doSomething(yyyModel); // Invoke the service.
+* ...
+* 
+* *NOTE: For a top-level AMD script, use require(['index'], function(){...}) +* and put the application logic within the callback function. +*

+*

+* A non-AMD browser application (discouraged) might do something like this: +*

+* var xxxSvc = new vrchatapi.XxxApi(); // Allocate the API class we're going to use.
+* var yyy = new vrchatapi.Yyy(); // Construct a model instance.
+* yyyModel.someProperty = 'someValue';
+* ...
+* var zzz = xxxSvc.doSomething(yyyModel); // Invoke the service.
+* ...
+* 
+*

+* @module index +* @version 1.0.0 +*/ +export { + /** + * The ApiClient constructor. + * @property {module:ApiClient} + */ + ApiClient, + + /** + * The Config model constructor. + * @property {module:model/Config} + */ + Config, + + /** + * The ConfigAnnouncements model constructor. + * @property {module:model/ConfigAnnouncements} + */ + ConfigAnnouncements, + + /** + * The ConfigDownloadUrls model constructor. + * @property {module:model/ConfigDownloadUrls} + */ + ConfigDownloadUrls, + + /** + * The ConfigDynamicWorldRows model constructor. + * @property {module:model/ConfigDynamicWorldRows} + */ + ConfigDynamicWorldRows, + + /** + * The ConfigEvents model constructor. + * @property {module:model/ConfigEvents} + */ + ConfigEvents, + + /** + * The CurrentUser model constructor. + * @property {module:model/CurrentUser} + */ + CurrentUser, + + /** + * The DeploymentGroup model constructor. + * @property {module:model/DeploymentGroup} + */ + DeploymentGroup, + + /** + * The DeveloperType model constructor. + * @property {module:model/DeveloperType} + */ + DeveloperType, + + /** + * The Error model constructor. + * @property {module:model/Error} + */ + Error, + + /** + * The File model constructor. + * @property {module:model/File} + */ + File, + + /** + * The FileData model constructor. + * @property {module:model/FileData} + */ + FileData, + + /** + * The FileStatus model constructor. + * @property {module:model/FileStatus} + */ + FileStatus, + + /** + * The FileVersion model constructor. + * @property {module:model/FileVersion} + */ + FileVersion, + + /** + * The InlineObject model constructor. + * @property {module:model/InlineObject} + */ + InlineObject, + + /** + * The InlineObject1 model constructor. + * @property {module:model/InlineObject1} + */ + InlineObject1, + + /** + * The InlineObject2 model constructor. + * @property {module:model/InlineObject2} + */ + InlineObject2, + + /** + * The InlineObject3 model constructor. + * @property {module:model/InlineObject3} + */ + InlineObject3, + + /** + * The InlineObject4 model constructor. + * @property {module:model/InlineObject4} + */ + InlineObject4, + + /** + * The InlineResponse200 model constructor. + * @property {module:model/InlineResponse200} + */ + InlineResponse200, + + /** + * The InlineResponse2001 model constructor. + * @property {module:model/InlineResponse2001} + */ + InlineResponse2001, + + /** + * The InlineResponse2002 model constructor. + * @property {module:model/InlineResponse2002} + */ + InlineResponse2002, + + /** + * The InlineResponse2003 model constructor. + * @property {module:model/InlineResponse2003} + */ + InlineResponse2003, + + /** + * The InlineResponse2004 model constructor. + * @property {module:model/InlineResponse2004} + */ + InlineResponse2004, + + /** + * The InlineResponse2005 model constructor. + * @property {module:model/InlineResponse2005} + */ + InlineResponse2005, + + /** + * The InlineResponse401 model constructor. + * @property {module:model/InlineResponse401} + */ + InlineResponse401, + + /** + * The LimitedUser model constructor. + * @property {module:model/LimitedUser} + */ + LimitedUser, + + /** + * The LimitedWorld model constructor. + * @property {module:model/LimitedWorld} + */ + LimitedWorld, + + /** + * The MIMEType model constructor. + * @property {module:model/MIMEType} + */ + MIMEType, + + /** + * The Notification model constructor. + * @property {module:model/Notification} + */ + Notification, + + /** + * The NotificationType model constructor. + * @property {module:model/NotificationType} + */ + NotificationType, + + /** + * The ReleaseStatus model constructor. + * @property {module:model/ReleaseStatus} + */ + ReleaseStatus, + + /** + * The Response model constructor. + * @property {module:model/Response} + */ + Response, + + /** + * The Success model constructor. + * @property {module:model/Success} + */ + Success, + + /** + * The User model constructor. + * @property {module:model/User} + */ + User, + + /** + * The UserState model constructor. + * @property {module:model/UserState} + */ + UserState, + + /** + * The UserStatus model constructor. + * @property {module:model/UserStatus} + */ + UserStatus, + + /** + * The AuthenticationApi service constructor. + * @property {module:api/AuthenticationApi} + */ + AuthenticationApi, + + /** + * The FilesApi service constructor. + * @property {module:api/FilesApi} + */ + FilesApi, + + /** + * The FriendsApi service constructor. + * @property {module:api/FriendsApi} + */ + FriendsApi, + + /** + * The NotificationsApi service constructor. + * @property {module:api/NotificationsApi} + */ + NotificationsApi, + + /** + * The SystemApi service constructor. + * @property {module:api/SystemApi} + */ + SystemApi, + + /** + * The UsersApi service constructor. + * @property {module:api/UsersApi} + */ + UsersApi, + + /** + * The WorldsApi service constructor. + * @property {module:api/WorldsApi} + */ + WorldsApi +}; diff --git a/src/model/Config.js b/src/model/Config.js new file mode 100644 index 0000000..bd478fe --- /dev/null +++ b/src/model/Config.js @@ -0,0 +1,889 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +import ApiClient from '../ApiClient'; +import ConfigAnnouncements from './ConfigAnnouncements'; +import ConfigDownloadUrls from './ConfigDownloadUrls'; +import ConfigDynamicWorldRows from './ConfigDynamicWorldRows'; +import ConfigEvents from './ConfigEvents'; +import DeploymentGroup from './DeploymentGroup'; + +/** + * The Config model module. + * @module model/Config + * @version 1.0.0 + */ +class Config { + /** + * Constructs a new Config. + * @alias module:model/Config + * @param address {String} VRChat's office address + * @param announcements {Array.} PSA, Public Announcements + * @param apiKey {String} apiKey to be used for all other requests + * @param appName {String} Game name + * @param buildVersionTag {String} Build tag of the API server + * @param clientApiKey {String} apiKey to be used for all other requests + * @param contactEmail {String} VRChat's contact email + * @param copyrightEmail {String} VRChat's copyright-issues-related email + * @param currentTOSVersion {Number} Current version number of the Terms of Service + * @param defaultAvatar {String} + * @param deploymentGroup {module:model/DeploymentGroup} + * @param devAppVersionStandalone {String} Version number for game development build + * @param devDownloadLinkWindows {String} Developer Download link + * @param devSdkUrl {String} Link to download the development SDK, use downloadUrls instead + * @param devSdkVersion {String} Version of the development SDK + * @param devServerVersionStandalone {String} Version number for server development build + * @param disableAvatarCopying {Boolean} Toggles if copying avatars should be disabled + * @param disableAvatarGating {Boolean} Toggles if avatar gating should be disabled. Avatar gating restricts uploading of avatars to people with the `system_avatar_access` Tag or `admin_avatar_access` Tag + * @param disableCommunityLabs {Boolean} Toggles if the Community Labs should be disabled + * @param disableCommunityLabsPromotion {Boolean} Toggles if promotion out of Community Labs should be disabled + * @param disableEventStream {Boolean} Toggles if Analytics should be disabled (this sreportedly not used in the Client) + * @param disableFeedbackGating {Boolean} Toggles if feedback gating should be disabled. Feedback gating restricts submission of feedback (reporting a World or User) to people with the `system_feedback_access` Tag. + * @param disableRegistration {Boolean} Toggles if new user account registration should be disabled + * @param disableSteamNetworking {Boolean} Toggles if Steam Networking should be disabled. VRChat these days uses Photon Unity Networking (PUN) instead. + * @param disableTwoFactorAuth {Boolean} Toggles if 2FA should be disabled. + * @param disableUdon {Boolean} Toggles if Udon should be universally disabled in-game. + * @param disableUpgradeAccount {Boolean} Toggles if account upgrading \"linking with Steam/Oculus\" should be disabled. + * @param downloadLinkWindows {String} Download link for game on the Oculus Rift website. + * @param downloadUrls {module:model/ConfigDownloadUrls} + * @param dynamicWorldRows {Array.} Array of DynamicWorldRow objects, used by the game to display the list of world rows + * @param events {module:model/ConfigEvents} + * @param gearDemoRoomId {String} Unknown + * @param homepageRedirectTarget {String} Redirect target if you try to open the base API domain in your browser + * @param homeWorldId {String} + * @param hubWorldId {String} + * @param jobsEmail {String} VRChat's job application email + * @param messageOfTheDay {String} MOTD + * @param moderationEmail {String} VRChat's moderation related email + * @param moderationQueryPeriod {Number} Unknown + * @param notAllowedToSelectAvatarInPrivateWorldMessage {String} Used in-game to notify a user they aren't allowed to select avatars in private worlds + * @param plugin {String} Extra [plugin](https://doc.photonengine.com/en-us/server/current/plugins/manual) to run in each instance + * @param releaseAppVersionStandalone {String} Version number for game release build + * @param releaseSdkUrl {String} Link to download the release SDK + * @param releaseSdkVersion {String} Version of the release SDK + * @param releaseServerVersionStandalone {String} Version number for server release build + * @param sdkDeveloperFaqUrl {String} Link to the developer FAQ + * @param sdkDiscordUrl {String} Link to the official VRChat Discord + * @param sdkNotAllowedToPublishMessage {String} Used in the SDK to notify a user they aren't allowed to upload avatars/worlds yet + * @param sdkUnityVersion {String} Unity version supported by the SDK + * @param serverName {String} Server name of the API server currently responding + * @param supportEmail {String} VRChat's support email + * @param timeOutWorldId {String} + * @param tutorialWorldId {String} + * @param updateRateMsMaximum {Number} Unknown + * @param updateRateMsMinimum {Number} Unknown + * @param updateRateMsNormal {Number} Unknown + * @param updateRateMsUdonManual {Number} Unknown + * @param uploadAnalysisPercent {Number} Unknown + * @param urlList {Array.} List of allowed URLs that bypass the \"Allow untrusted URL's\" setting in-game + * @param useReliableUdpForVoice {Boolean} Unknown + * @param userUpdatePeriod {Number} Unknown + * @param userVerificationDelay {Number} Unknown + * @param userVerificationRetry {Number} Unknown + * @param userVerificationTimeout {Number} Unknown + * @param viveWindowsUrl {String} Download link for game on the Steam website. + * @param whiteListedAssetUrls {Array.} List of allowed URLs that are allowed to host avatar assets + * @param worldUpdatePeriod {Number} Unknown + * @param youtubedlHash {String} Currently used youtube-dl.exe hash in SHA-256-delimited format + * @param youtubedlVersion {String} Currently used youtube-dl.exe version + */ + constructor(address, announcements, apiKey, appName, buildVersionTag, clientApiKey, contactEmail, copyrightEmail, currentTOSVersion, defaultAvatar, deploymentGroup, devAppVersionStandalone, devDownloadLinkWindows, devSdkUrl, devSdkVersion, devServerVersionStandalone, disableAvatarCopying, disableAvatarGating, disableCommunityLabs, disableCommunityLabsPromotion, disableEventStream, disableFeedbackGating, disableRegistration, disableSteamNetworking, disableTwoFactorAuth, disableUdon, disableUpgradeAccount, downloadLinkWindows, downloadUrls, dynamicWorldRows, events, gearDemoRoomId, homepageRedirectTarget, homeWorldId, hubWorldId, jobsEmail, messageOfTheDay, moderationEmail, moderationQueryPeriod, notAllowedToSelectAvatarInPrivateWorldMessage, plugin, releaseAppVersionStandalone, releaseSdkUrl, releaseSdkVersion, releaseServerVersionStandalone, sdkDeveloperFaqUrl, sdkDiscordUrl, sdkNotAllowedToPublishMessage, sdkUnityVersion, serverName, supportEmail, timeOutWorldId, tutorialWorldId, updateRateMsMaximum, updateRateMsMinimum, updateRateMsNormal, updateRateMsUdonManual, uploadAnalysisPercent, urlList, useReliableUdpForVoice, userUpdatePeriod, userVerificationDelay, userVerificationRetry, userVerificationTimeout, viveWindowsUrl, whiteListedAssetUrls, worldUpdatePeriod, youtubedlHash, youtubedlVersion) { + + Config.initialize(this, address, announcements, apiKey, appName, buildVersionTag, clientApiKey, contactEmail, copyrightEmail, currentTOSVersion, defaultAvatar, deploymentGroup, devAppVersionStandalone, devDownloadLinkWindows, devSdkUrl, devSdkVersion, devServerVersionStandalone, disableAvatarCopying, disableAvatarGating, disableCommunityLabs, disableCommunityLabsPromotion, disableEventStream, disableFeedbackGating, disableRegistration, disableSteamNetworking, disableTwoFactorAuth, disableUdon, disableUpgradeAccount, downloadLinkWindows, downloadUrls, dynamicWorldRows, events, gearDemoRoomId, homepageRedirectTarget, homeWorldId, hubWorldId, jobsEmail, messageOfTheDay, moderationEmail, moderationQueryPeriod, notAllowedToSelectAvatarInPrivateWorldMessage, plugin, releaseAppVersionStandalone, releaseSdkUrl, releaseSdkVersion, releaseServerVersionStandalone, sdkDeveloperFaqUrl, sdkDiscordUrl, sdkNotAllowedToPublishMessage, sdkUnityVersion, serverName, supportEmail, timeOutWorldId, tutorialWorldId, updateRateMsMaximum, updateRateMsMinimum, updateRateMsNormal, updateRateMsUdonManual, uploadAnalysisPercent, urlList, useReliableUdpForVoice, userUpdatePeriod, userVerificationDelay, userVerificationRetry, userVerificationTimeout, viveWindowsUrl, whiteListedAssetUrls, worldUpdatePeriod, youtubedlHash, youtubedlVersion); + } + + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + static initialize(obj, address, announcements, apiKey, appName, buildVersionTag, clientApiKey, contactEmail, copyrightEmail, currentTOSVersion, defaultAvatar, deploymentGroup, devAppVersionStandalone, devDownloadLinkWindows, devSdkUrl, devSdkVersion, devServerVersionStandalone, disableAvatarCopying, disableAvatarGating, disableCommunityLabs, disableCommunityLabsPromotion, disableEventStream, disableFeedbackGating, disableRegistration, disableSteamNetworking, disableTwoFactorAuth, disableUdon, disableUpgradeAccount, downloadLinkWindows, downloadUrls, dynamicWorldRows, events, gearDemoRoomId, homepageRedirectTarget, homeWorldId, hubWorldId, jobsEmail, messageOfTheDay, moderationEmail, moderationQueryPeriod, notAllowedToSelectAvatarInPrivateWorldMessage, plugin, releaseAppVersionStandalone, releaseSdkUrl, releaseSdkVersion, releaseServerVersionStandalone, sdkDeveloperFaqUrl, sdkDiscordUrl, sdkNotAllowedToPublishMessage, sdkUnityVersion, serverName, supportEmail, timeOutWorldId, tutorialWorldId, updateRateMsMaximum, updateRateMsMinimum, updateRateMsNormal, updateRateMsUdonManual, uploadAnalysisPercent, urlList, useReliableUdpForVoice, userUpdatePeriod, userVerificationDelay, userVerificationRetry, userVerificationTimeout, viveWindowsUrl, whiteListedAssetUrls, worldUpdatePeriod, youtubedlHash, youtubedlVersion) { + obj['address'] = address; + obj['announcements'] = announcements; + obj['apiKey'] = apiKey; + obj['appName'] = appName || 'VrChat'; + obj['buildVersionTag'] = buildVersionTag; + obj['clientApiKey'] = clientApiKey; + obj['contactEmail'] = contactEmail; + obj['copyrightEmail'] = copyrightEmail; + obj['currentTOSVersion'] = currentTOSVersion; + obj['defaultAvatar'] = defaultAvatar; + obj['deploymentGroup'] = deploymentGroup; + obj['devAppVersionStandalone'] = devAppVersionStandalone; + obj['devDownloadLinkWindows'] = devDownloadLinkWindows; + obj['devSdkUrl'] = devSdkUrl; + obj['devSdkVersion'] = devSdkVersion; + obj['devServerVersionStandalone'] = devServerVersionStandalone; + obj['disableAvatarCopying'] = disableAvatarCopying || false; + obj['disableAvatarGating'] = disableAvatarGating || false; + obj['disableCommunityLabs'] = disableCommunityLabs || false; + obj['disableCommunityLabsPromotion'] = disableCommunityLabsPromotion || false; + obj['disableEventStream'] = disableEventStream || false; + obj['disableFeedbackGating'] = disableFeedbackGating || false; + obj['disableRegistration'] = disableRegistration || false; + obj['disableSteamNetworking'] = disableSteamNetworking || true; + obj['disableTwoFactorAuth'] = disableTwoFactorAuth || false; + obj['disableUdon'] = disableUdon || false; + obj['disableUpgradeAccount'] = disableUpgradeAccount || false; + obj['downloadLinkWindows'] = downloadLinkWindows; + obj['downloadUrls'] = downloadUrls; + obj['dynamicWorldRows'] = dynamicWorldRows; + obj['events'] = events; + obj['gearDemoRoomId'] = gearDemoRoomId; + obj['homepageRedirectTarget'] = homepageRedirectTarget || 'https://hello.vrchat.com'; + obj['homeWorldId'] = homeWorldId; + obj['hubWorldId'] = hubWorldId; + obj['jobsEmail'] = jobsEmail; + obj['messageOfTheDay'] = messageOfTheDay; + obj['moderationEmail'] = moderationEmail; + obj['moderationQueryPeriod'] = moderationQueryPeriod; + obj['notAllowedToSelectAvatarInPrivateWorldMessage'] = notAllowedToSelectAvatarInPrivateWorldMessage; + obj['plugin'] = plugin; + obj['releaseAppVersionStandalone'] = releaseAppVersionStandalone; + obj['releaseSdkUrl'] = releaseSdkUrl; + obj['releaseSdkVersion'] = releaseSdkVersion; + obj['releaseServerVersionStandalone'] = releaseServerVersionStandalone; + obj['sdkDeveloperFaqUrl'] = sdkDeveloperFaqUrl; + obj['sdkDiscordUrl'] = sdkDiscordUrl; + obj['sdkNotAllowedToPublishMessage'] = sdkNotAllowedToPublishMessage; + obj['sdkUnityVersion'] = sdkUnityVersion; + obj['serverName'] = serverName; + obj['supportEmail'] = supportEmail; + obj['timeOutWorldId'] = timeOutWorldId; + obj['tutorialWorldId'] = tutorialWorldId; + obj['updateRateMsMaximum'] = updateRateMsMaximum; + obj['updateRateMsMinimum'] = updateRateMsMinimum; + obj['updateRateMsNormal'] = updateRateMsNormal; + obj['updateRateMsUdonManual'] = updateRateMsUdonManual; + obj['uploadAnalysisPercent'] = uploadAnalysisPercent; + obj['urlList'] = urlList; + obj['useReliableUdpForVoice'] = useReliableUdpForVoice || false; + obj['userUpdatePeriod'] = userUpdatePeriod; + obj['userVerificationDelay'] = userVerificationDelay; + obj['userVerificationRetry'] = userVerificationRetry; + obj['userVerificationTimeout'] = userVerificationTimeout; + obj['viveWindowsUrl'] = viveWindowsUrl; + obj['whiteListedAssetUrls'] = whiteListedAssetUrls; + obj['worldUpdatePeriod'] = worldUpdatePeriod; + obj['youtubedl-hash'] = youtubedlHash; + obj['youtubedl-version'] = youtubedlVersion; + } + + /** + * Constructs a Config from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/Config} obj Optional instance to populate. + * @return {module:model/Config} The populated Config instance. + */ + static constructFromObject(data, obj) { + if (data) { + obj = obj || new Config(); + + if (data.hasOwnProperty('address')) { + obj['address'] = ApiClient.convertToType(data['address'], 'String'); + } + if (data.hasOwnProperty('announcements')) { + obj['announcements'] = ApiClient.convertToType(data['announcements'], [ConfigAnnouncements]); + } + if (data.hasOwnProperty('apiKey')) { + obj['apiKey'] = ApiClient.convertToType(data['apiKey'], 'String'); + } + if (data.hasOwnProperty('appName')) { + obj['appName'] = ApiClient.convertToType(data['appName'], 'String'); + } + if (data.hasOwnProperty('buildVersionTag')) { + obj['buildVersionTag'] = ApiClient.convertToType(data['buildVersionTag'], 'String'); + } + if (data.hasOwnProperty('clientApiKey')) { + obj['clientApiKey'] = ApiClient.convertToType(data['clientApiKey'], 'String'); + } + if (data.hasOwnProperty('clientBPSCeiling')) { + obj['clientBPSCeiling'] = ApiClient.convertToType(data['clientBPSCeiling'], 'Number'); + } + if (data.hasOwnProperty('clientDisconnectTimeout')) { + obj['clientDisconnectTimeout'] = ApiClient.convertToType(data['clientDisconnectTimeout'], 'Number'); + } + if (data.hasOwnProperty('clientReservedPlayerBPS')) { + obj['clientReservedPlayerBPS'] = ApiClient.convertToType(data['clientReservedPlayerBPS'], 'Number'); + } + if (data.hasOwnProperty('clientSentCountAllowance')) { + obj['clientSentCountAllowance'] = ApiClient.convertToType(data['clientSentCountAllowance'], 'Number'); + } + if (data.hasOwnProperty('contactEmail')) { + obj['contactEmail'] = ApiClient.convertToType(data['contactEmail'], 'String'); + } + if (data.hasOwnProperty('copyrightEmail')) { + obj['copyrightEmail'] = ApiClient.convertToType(data['copyrightEmail'], 'String'); + } + if (data.hasOwnProperty('currentTOSVersion')) { + obj['currentTOSVersion'] = ApiClient.convertToType(data['currentTOSVersion'], 'Number'); + } + if (data.hasOwnProperty('defaultAvatar')) { + obj['defaultAvatar'] = ApiClient.convertToType(data['defaultAvatar'], 'String'); + } + if (data.hasOwnProperty('deploymentGroup')) { + obj['deploymentGroup'] = DeploymentGroup.constructFromObject(data['deploymentGroup']); + } + if (data.hasOwnProperty('devAppVersionStandalone')) { + obj['devAppVersionStandalone'] = ApiClient.convertToType(data['devAppVersionStandalone'], 'String'); + } + if (data.hasOwnProperty('devDownloadLinkWindows')) { + obj['devDownloadLinkWindows'] = ApiClient.convertToType(data['devDownloadLinkWindows'], 'String'); + } + if (data.hasOwnProperty('devSdkUrl')) { + obj['devSdkUrl'] = ApiClient.convertToType(data['devSdkUrl'], 'String'); + } + if (data.hasOwnProperty('devSdkVersion')) { + obj['devSdkVersion'] = ApiClient.convertToType(data['devSdkVersion'], 'String'); + } + if (data.hasOwnProperty('devServerVersionStandalone')) { + obj['devServerVersionStandalone'] = ApiClient.convertToType(data['devServerVersionStandalone'], 'String'); + } + if (data.hasOwnProperty('disableAvatarCopying')) { + obj['disableAvatarCopying'] = ApiClient.convertToType(data['disableAvatarCopying'], 'Boolean'); + } + if (data.hasOwnProperty('disableAvatarGating')) { + obj['disableAvatarGating'] = ApiClient.convertToType(data['disableAvatarGating'], 'Boolean'); + } + if (data.hasOwnProperty('disableCommunityLabs')) { + obj['disableCommunityLabs'] = ApiClient.convertToType(data['disableCommunityLabs'], 'Boolean'); + } + if (data.hasOwnProperty('disableCommunityLabsPromotion')) { + obj['disableCommunityLabsPromotion'] = ApiClient.convertToType(data['disableCommunityLabsPromotion'], 'Boolean'); + } + if (data.hasOwnProperty('disableEmail')) { + obj['disableEmail'] = ApiClient.convertToType(data['disableEmail'], 'Boolean'); + } + if (data.hasOwnProperty('disableEventStream')) { + obj['disableEventStream'] = ApiClient.convertToType(data['disableEventStream'], 'Boolean'); + } + if (data.hasOwnProperty('disableFeedbackGating')) { + obj['disableFeedbackGating'] = ApiClient.convertToType(data['disableFeedbackGating'], 'Boolean'); + } + if (data.hasOwnProperty('disableHello')) { + obj['disableHello'] = ApiClient.convertToType(data['disableHello'], 'Boolean'); + } + if (data.hasOwnProperty('disableRegistration')) { + obj['disableRegistration'] = ApiClient.convertToType(data['disableRegistration'], 'Boolean'); + } + if (data.hasOwnProperty('disableSteamNetworking')) { + obj['disableSteamNetworking'] = ApiClient.convertToType(data['disableSteamNetworking'], 'Boolean'); + } + if (data.hasOwnProperty('disableTwoFactorAuth')) { + obj['disableTwoFactorAuth'] = ApiClient.convertToType(data['disableTwoFactorAuth'], 'Boolean'); + } + if (data.hasOwnProperty('disableUdon')) { + obj['disableUdon'] = ApiClient.convertToType(data['disableUdon'], 'Boolean'); + } + if (data.hasOwnProperty('disableUpgradeAccount')) { + obj['disableUpgradeAccount'] = ApiClient.convertToType(data['disableUpgradeAccount'], 'Boolean'); + } + if (data.hasOwnProperty('downloadLinkWindows')) { + obj['downloadLinkWindows'] = ApiClient.convertToType(data['downloadLinkWindows'], 'String'); + } + if (data.hasOwnProperty('downloadUrls')) { + obj['downloadUrls'] = ConfigDownloadUrls.constructFromObject(data['downloadUrls']); + } + if (data.hasOwnProperty('dynamicWorldRows')) { + obj['dynamicWorldRows'] = ApiClient.convertToType(data['dynamicWorldRows'], [ConfigDynamicWorldRows]); + } + if (data.hasOwnProperty('events')) { + obj['events'] = ConfigEvents.constructFromObject(data['events']); + } + if (data.hasOwnProperty('gearDemoRoomId')) { + obj['gearDemoRoomId'] = ApiClient.convertToType(data['gearDemoRoomId'], 'String'); + } + if (data.hasOwnProperty('homepageRedirectTarget')) { + obj['homepageRedirectTarget'] = ApiClient.convertToType(data['homepageRedirectTarget'], 'String'); + } + if (data.hasOwnProperty('homeWorldId')) { + obj['homeWorldId'] = ApiClient.convertToType(data['homeWorldId'], 'String'); + } + if (data.hasOwnProperty('hubWorldId')) { + obj['hubWorldId'] = ApiClient.convertToType(data['hubWorldId'], 'String'); + } + if (data.hasOwnProperty('jobsEmail')) { + obj['jobsEmail'] = ApiClient.convertToType(data['jobsEmail'], 'String'); + } + if (data.hasOwnProperty('messageOfTheDay')) { + obj['messageOfTheDay'] = ApiClient.convertToType(data['messageOfTheDay'], 'String'); + } + if (data.hasOwnProperty('moderationEmail')) { + obj['moderationEmail'] = ApiClient.convertToType(data['moderationEmail'], 'String'); + } + if (data.hasOwnProperty('moderationQueryPeriod')) { + obj['moderationQueryPeriod'] = ApiClient.convertToType(data['moderationQueryPeriod'], 'Number'); + } + if (data.hasOwnProperty('notAllowedToSelectAvatarInPrivateWorldMessage')) { + obj['notAllowedToSelectAvatarInPrivateWorldMessage'] = ApiClient.convertToType(data['notAllowedToSelectAvatarInPrivateWorldMessage'], 'String'); + } + if (data.hasOwnProperty('plugin')) { + obj['plugin'] = ApiClient.convertToType(data['plugin'], 'String'); + } + if (data.hasOwnProperty('releaseAppVersionStandalone')) { + obj['releaseAppVersionStandalone'] = ApiClient.convertToType(data['releaseAppVersionStandalone'], 'String'); + } + if (data.hasOwnProperty('releaseSdkUrl')) { + obj['releaseSdkUrl'] = ApiClient.convertToType(data['releaseSdkUrl'], 'String'); + } + if (data.hasOwnProperty('releaseSdkVersion')) { + obj['releaseSdkVersion'] = ApiClient.convertToType(data['releaseSdkVersion'], 'String'); + } + if (data.hasOwnProperty('releaseServerVersionStandalone')) { + obj['releaseServerVersionStandalone'] = ApiClient.convertToType(data['releaseServerVersionStandalone'], 'String'); + } + if (data.hasOwnProperty('sdkDeveloperFaqUrl')) { + obj['sdkDeveloperFaqUrl'] = ApiClient.convertToType(data['sdkDeveloperFaqUrl'], 'String'); + } + if (data.hasOwnProperty('sdkDiscordUrl')) { + obj['sdkDiscordUrl'] = ApiClient.convertToType(data['sdkDiscordUrl'], 'String'); + } + if (data.hasOwnProperty('sdkNotAllowedToPublishMessage')) { + obj['sdkNotAllowedToPublishMessage'] = ApiClient.convertToType(data['sdkNotAllowedToPublishMessage'], 'String'); + } + if (data.hasOwnProperty('sdkUnityVersion')) { + obj['sdkUnityVersion'] = ApiClient.convertToType(data['sdkUnityVersion'], 'String'); + } + if (data.hasOwnProperty('serverName')) { + obj['serverName'] = ApiClient.convertToType(data['serverName'], 'String'); + } + if (data.hasOwnProperty('supportEmail')) { + obj['supportEmail'] = ApiClient.convertToType(data['supportEmail'], 'String'); + } + if (data.hasOwnProperty('timeOutWorldId')) { + obj['timeOutWorldId'] = ApiClient.convertToType(data['timeOutWorldId'], 'String'); + } + if (data.hasOwnProperty('tutorialWorldId')) { + obj['tutorialWorldId'] = ApiClient.convertToType(data['tutorialWorldId'], 'String'); + } + if (data.hasOwnProperty('updateRateMsMaximum')) { + obj['updateRateMsMaximum'] = ApiClient.convertToType(data['updateRateMsMaximum'], 'Number'); + } + if (data.hasOwnProperty('updateRateMsMinimum')) { + obj['updateRateMsMinimum'] = ApiClient.convertToType(data['updateRateMsMinimum'], 'Number'); + } + if (data.hasOwnProperty('updateRateMsNormal')) { + obj['updateRateMsNormal'] = ApiClient.convertToType(data['updateRateMsNormal'], 'Number'); + } + if (data.hasOwnProperty('updateRateMsUdonManual')) { + obj['updateRateMsUdonManual'] = ApiClient.convertToType(data['updateRateMsUdonManual'], 'Number'); + } + if (data.hasOwnProperty('uploadAnalysisPercent')) { + obj['uploadAnalysisPercent'] = ApiClient.convertToType(data['uploadAnalysisPercent'], 'Number'); + } + if (data.hasOwnProperty('urlList')) { + obj['urlList'] = ApiClient.convertToType(data['urlList'], ['String']); + } + if (data.hasOwnProperty('useReliableUdpForVoice')) { + obj['useReliableUdpForVoice'] = ApiClient.convertToType(data['useReliableUdpForVoice'], 'Boolean'); + } + if (data.hasOwnProperty('userUpdatePeriod')) { + obj['userUpdatePeriod'] = ApiClient.convertToType(data['userUpdatePeriod'], 'Number'); + } + if (data.hasOwnProperty('userVerificationDelay')) { + obj['userVerificationDelay'] = ApiClient.convertToType(data['userVerificationDelay'], 'Number'); + } + if (data.hasOwnProperty('userVerificationRetry')) { + obj['userVerificationRetry'] = ApiClient.convertToType(data['userVerificationRetry'], 'Number'); + } + if (data.hasOwnProperty('userVerificationTimeout')) { + obj['userVerificationTimeout'] = ApiClient.convertToType(data['userVerificationTimeout'], 'Number'); + } + if (data.hasOwnProperty('viveWindowsUrl')) { + obj['viveWindowsUrl'] = ApiClient.convertToType(data['viveWindowsUrl'], 'String'); + } + if (data.hasOwnProperty('whiteListedAssetUrls')) { + obj['whiteListedAssetUrls'] = ApiClient.convertToType(data['whiteListedAssetUrls'], ['String']); + } + if (data.hasOwnProperty('worldUpdatePeriod')) { + obj['worldUpdatePeriod'] = ApiClient.convertToType(data['worldUpdatePeriod'], 'Number'); + } + if (data.hasOwnProperty('youtubedl-hash')) { + obj['youtubedl-hash'] = ApiClient.convertToType(data['youtubedl-hash'], 'String'); + } + if (data.hasOwnProperty('youtubedl-version')) { + obj['youtubedl-version'] = ApiClient.convertToType(data['youtubedl-version'], 'String'); + } + } + return obj; + } + + +} + +/** + * VRChat's office address + * @member {String} address + */ +Config.prototype['address'] = undefined; + +/** + * PSA, Public Announcements + * @member {Array.} announcements + */ +Config.prototype['announcements'] = undefined; + +/** + * apiKey to be used for all other requests + * @member {String} apiKey + */ +Config.prototype['apiKey'] = undefined; + +/** + * Game name + * @member {String} appName + * @default 'VrChat' + */ +Config.prototype['appName'] = 'VrChat'; + +/** + * Build tag of the API server + * @member {String} buildVersionTag + */ +Config.prototype['buildVersionTag'] = undefined; + +/** + * apiKey to be used for all other requests + * @member {String} clientApiKey + */ +Config.prototype['clientApiKey'] = undefined; + +/** + * Unknown + * @member {Number} clientBPSCeiling + */ +Config.prototype['clientBPSCeiling'] = undefined; + +/** + * Unknown + * @member {Number} clientDisconnectTimeout + */ +Config.prototype['clientDisconnectTimeout'] = undefined; + +/** + * Unknown + * @member {Number} clientReservedPlayerBPS + */ +Config.prototype['clientReservedPlayerBPS'] = undefined; + +/** + * Unknown + * @member {Number} clientSentCountAllowance + */ +Config.prototype['clientSentCountAllowance'] = undefined; + +/** + * VRChat's contact email + * @member {String} contactEmail + */ +Config.prototype['contactEmail'] = undefined; + +/** + * VRChat's copyright-issues-related email + * @member {String} copyrightEmail + */ +Config.prototype['copyrightEmail'] = undefined; + +/** + * Current version number of the Terms of Service + * @member {Number} currentTOSVersion + */ +Config.prototype['currentTOSVersion'] = undefined; + +/** + * @member {String} defaultAvatar + */ +Config.prototype['defaultAvatar'] = undefined; + +/** + * @member {module:model/DeploymentGroup} deploymentGroup + */ +Config.prototype['deploymentGroup'] = undefined; + +/** + * Version number for game development build + * @member {String} devAppVersionStandalone + */ +Config.prototype['devAppVersionStandalone'] = undefined; + +/** + * Developer Download link + * @member {String} devDownloadLinkWindows + */ +Config.prototype['devDownloadLinkWindows'] = undefined; + +/** + * Link to download the development SDK, use downloadUrls instead + * @member {String} devSdkUrl + */ +Config.prototype['devSdkUrl'] = undefined; + +/** + * Version of the development SDK + * @member {String} devSdkVersion + */ +Config.prototype['devSdkVersion'] = undefined; + +/** + * Version number for server development build + * @member {String} devServerVersionStandalone + */ +Config.prototype['devServerVersionStandalone'] = undefined; + +/** + * Toggles if copying avatars should be disabled + * @member {Boolean} disableAvatarCopying + * @default false + */ +Config.prototype['disableAvatarCopying'] = false; + +/** + * Toggles if avatar gating should be disabled. Avatar gating restricts uploading of avatars to people with the `system_avatar_access` Tag or `admin_avatar_access` Tag + * @member {Boolean} disableAvatarGating + * @default false + */ +Config.prototype['disableAvatarGating'] = false; + +/** + * Toggles if the Community Labs should be disabled + * @member {Boolean} disableCommunityLabs + * @default false + */ +Config.prototype['disableCommunityLabs'] = false; + +/** + * Toggles if promotion out of Community Labs should be disabled + * @member {Boolean} disableCommunityLabsPromotion + * @default false + */ +Config.prototype['disableCommunityLabsPromotion'] = false; + +/** + * Unknown + * @member {Boolean} disableEmail + * @default false + */ +Config.prototype['disableEmail'] = false; + +/** + * Toggles if Analytics should be disabled (this sreportedly not used in the Client) + * @member {Boolean} disableEventStream + * @default false + */ +Config.prototype['disableEventStream'] = false; + +/** + * Toggles if feedback gating should be disabled. Feedback gating restricts submission of feedback (reporting a World or User) to people with the `system_feedback_access` Tag. + * @member {Boolean} disableFeedbackGating + * @default false + */ +Config.prototype['disableFeedbackGating'] = false; + +/** + * Unknown + * @member {Boolean} disableHello + * @default false + */ +Config.prototype['disableHello'] = false; + +/** + * Toggles if new user account registration should be disabled + * @member {Boolean} disableRegistration + * @default false + */ +Config.prototype['disableRegistration'] = false; + +/** + * Toggles if Steam Networking should be disabled. VRChat these days uses Photon Unity Networking (PUN) instead. + * @member {Boolean} disableSteamNetworking + * @default true + */ +Config.prototype['disableSteamNetworking'] = true; + +/** + * Toggles if 2FA should be disabled. + * @member {Boolean} disableTwoFactorAuth + * @default false + */ +Config.prototype['disableTwoFactorAuth'] = false; + +/** + * Toggles if Udon should be universally disabled in-game. + * @member {Boolean} disableUdon + * @default false + */ +Config.prototype['disableUdon'] = false; + +/** + * Toggles if account upgrading \"linking with Steam/Oculus\" should be disabled. + * @member {Boolean} disableUpgradeAccount + * @default false + */ +Config.prototype['disableUpgradeAccount'] = false; + +/** + * Download link for game on the Oculus Rift website. + * @member {String} downloadLinkWindows + */ +Config.prototype['downloadLinkWindows'] = undefined; + +/** + * @member {module:model/ConfigDownloadUrls} downloadUrls + */ +Config.prototype['downloadUrls'] = undefined; + +/** + * Array of DynamicWorldRow objects, used by the game to display the list of world rows + * @member {Array.} dynamicWorldRows + */ +Config.prototype['dynamicWorldRows'] = undefined; + +/** + * @member {module:model/ConfigEvents} events + */ +Config.prototype['events'] = undefined; + +/** + * Unknown + * @member {String} gearDemoRoomId + */ +Config.prototype['gearDemoRoomId'] = undefined; + +/** + * Redirect target if you try to open the base API domain in your browser + * @member {String} homepageRedirectTarget + * @default 'https://hello.vrchat.com' + */ +Config.prototype['homepageRedirectTarget'] = 'https://hello.vrchat.com'; + +/** + * @member {String} homeWorldId + */ +Config.prototype['homeWorldId'] = undefined; + +/** + * @member {String} hubWorldId + */ +Config.prototype['hubWorldId'] = undefined; + +/** + * VRChat's job application email + * @member {String} jobsEmail + */ +Config.prototype['jobsEmail'] = undefined; + +/** + * MOTD + * @member {String} messageOfTheDay + */ +Config.prototype['messageOfTheDay'] = undefined; + +/** + * VRChat's moderation related email + * @member {String} moderationEmail + */ +Config.prototype['moderationEmail'] = undefined; + +/** + * Unknown + * @member {Number} moderationQueryPeriod + */ +Config.prototype['moderationQueryPeriod'] = undefined; + +/** + * Used in-game to notify a user they aren't allowed to select avatars in private worlds + * @member {String} notAllowedToSelectAvatarInPrivateWorldMessage + */ +Config.prototype['notAllowedToSelectAvatarInPrivateWorldMessage'] = undefined; + +/** + * Extra [plugin](https://doc.photonengine.com/en-us/server/current/plugins/manual) to run in each instance + * @member {String} plugin + */ +Config.prototype['plugin'] = undefined; + +/** + * Version number for game release build + * @member {String} releaseAppVersionStandalone + */ +Config.prototype['releaseAppVersionStandalone'] = undefined; + +/** + * Link to download the release SDK + * @member {String} releaseSdkUrl + */ +Config.prototype['releaseSdkUrl'] = undefined; + +/** + * Version of the release SDK + * @member {String} releaseSdkVersion + */ +Config.prototype['releaseSdkVersion'] = undefined; + +/** + * Version number for server release build + * @member {String} releaseServerVersionStandalone + */ +Config.prototype['releaseServerVersionStandalone'] = undefined; + +/** + * Link to the developer FAQ + * @member {String} sdkDeveloperFaqUrl + */ +Config.prototype['sdkDeveloperFaqUrl'] = undefined; + +/** + * Link to the official VRChat Discord + * @member {String} sdkDiscordUrl + */ +Config.prototype['sdkDiscordUrl'] = undefined; + +/** + * Used in the SDK to notify a user they aren't allowed to upload avatars/worlds yet + * @member {String} sdkNotAllowedToPublishMessage + */ +Config.prototype['sdkNotAllowedToPublishMessage'] = undefined; + +/** + * Unity version supported by the SDK + * @member {String} sdkUnityVersion + */ +Config.prototype['sdkUnityVersion'] = undefined; + +/** + * Server name of the API server currently responding + * @member {String} serverName + */ +Config.prototype['serverName'] = undefined; + +/** + * VRChat's support email + * @member {String} supportEmail + */ +Config.prototype['supportEmail'] = undefined; + +/** + * @member {String} timeOutWorldId + */ +Config.prototype['timeOutWorldId'] = undefined; + +/** + * @member {String} tutorialWorldId + */ +Config.prototype['tutorialWorldId'] = undefined; + +/** + * Unknown + * @member {Number} updateRateMsMaximum + */ +Config.prototype['updateRateMsMaximum'] = undefined; + +/** + * Unknown + * @member {Number} updateRateMsMinimum + */ +Config.prototype['updateRateMsMinimum'] = undefined; + +/** + * Unknown + * @member {Number} updateRateMsNormal + */ +Config.prototype['updateRateMsNormal'] = undefined; + +/** + * Unknown + * @member {Number} updateRateMsUdonManual + */ +Config.prototype['updateRateMsUdonManual'] = undefined; + +/** + * Unknown + * @member {Number} uploadAnalysisPercent + */ +Config.prototype['uploadAnalysisPercent'] = undefined; + +/** + * List of allowed URLs that bypass the \"Allow untrusted URL's\" setting in-game + * @member {Array.} urlList + */ +Config.prototype['urlList'] = undefined; + +/** + * Unknown + * @member {Boolean} useReliableUdpForVoice + * @default false + */ +Config.prototype['useReliableUdpForVoice'] = false; + +/** + * Unknown + * @member {Number} userUpdatePeriod + */ +Config.prototype['userUpdatePeriod'] = undefined; + +/** + * Unknown + * @member {Number} userVerificationDelay + */ +Config.prototype['userVerificationDelay'] = undefined; + +/** + * Unknown + * @member {Number} userVerificationRetry + */ +Config.prototype['userVerificationRetry'] = undefined; + +/** + * Unknown + * @member {Number} userVerificationTimeout + */ +Config.prototype['userVerificationTimeout'] = undefined; + +/** + * Download link for game on the Steam website. + * @member {String} viveWindowsUrl + */ +Config.prototype['viveWindowsUrl'] = undefined; + +/** + * List of allowed URLs that are allowed to host avatar assets + * @member {Array.} whiteListedAssetUrls + */ +Config.prototype['whiteListedAssetUrls'] = undefined; + +/** + * Unknown + * @member {Number} worldUpdatePeriod + */ +Config.prototype['worldUpdatePeriod'] = undefined; + +/** + * Currently used youtube-dl.exe hash in SHA-256-delimited format + * @member {String} youtubedl-hash + */ +Config.prototype['youtubedl-hash'] = undefined; + +/** + * Currently used youtube-dl.exe version + * @member {String} youtubedl-version + */ +Config.prototype['youtubedl-version'] = undefined; + + + + + + +export default Config; + diff --git a/src/model/ConfigAnnouncements.js b/src/model/ConfigAnnouncements.js new file mode 100644 index 0000000..824c14f --- /dev/null +++ b/src/model/ConfigAnnouncements.js @@ -0,0 +1,86 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +import ApiClient from '../ApiClient'; + +/** + * The ConfigAnnouncements model module. + * @module model/ConfigAnnouncements + * @version 1.0.0 + */ +class ConfigAnnouncements { + /** + * Constructs a new ConfigAnnouncements. + * Public Announcement + * @alias module:model/ConfigAnnouncements + * @param name {String} Announcement name + * @param text {String} Announcement text + */ + constructor(name, text) { + + ConfigAnnouncements.initialize(this, name, text); + } + + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + static initialize(obj, name, text) { + obj['name'] = name; + obj['text'] = text; + } + + /** + * Constructs a ConfigAnnouncements from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/ConfigAnnouncements} obj Optional instance to populate. + * @return {module:model/ConfigAnnouncements} The populated ConfigAnnouncements instance. + */ + static constructFromObject(data, obj) { + if (data) { + obj = obj || new ConfigAnnouncements(); + + if (data.hasOwnProperty('name')) { + obj['name'] = ApiClient.convertToType(data['name'], 'String'); + } + if (data.hasOwnProperty('text')) { + obj['text'] = ApiClient.convertToType(data['text'], 'String'); + } + } + return obj; + } + + +} + +/** + * Announcement name + * @member {String} name + */ +ConfigAnnouncements.prototype['name'] = undefined; + +/** + * Announcement text + * @member {String} text + */ +ConfigAnnouncements.prototype['text'] = undefined; + + + + + + +export default ConfigAnnouncements; + diff --git a/src/model/ConfigDownloadUrls.js b/src/model/ConfigDownloadUrls.js new file mode 100644 index 0000000..52a10ed --- /dev/null +++ b/src/model/ConfigDownloadUrls.js @@ -0,0 +1,97 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +import ApiClient from '../ApiClient'; + +/** + * The ConfigDownloadUrls model module. + * @module model/ConfigDownloadUrls + * @version 1.0.0 + */ +class ConfigDownloadUrls { + /** + * Constructs a new ConfigDownloadUrls. + * Download links for various development assets + * @alias module:model/ConfigDownloadUrls + * @param sdk2 {String} Download link for legacy SDK2 + * @param sdk3Avatars {String} Download link for SDK3 for Avatars + * @param sdk3Worlds {String} Download link for SDK3 for Worlds + */ + constructor(sdk2, sdk3Avatars, sdk3Worlds) { + + ConfigDownloadUrls.initialize(this, sdk2, sdk3Avatars, sdk3Worlds); + } + + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + static initialize(obj, sdk2, sdk3Avatars, sdk3Worlds) { + obj['sdk2'] = sdk2; + obj['sdk3-avatars'] = sdk3Avatars; + obj['sdk3-worlds'] = sdk3Worlds; + } + + /** + * Constructs a ConfigDownloadUrls from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/ConfigDownloadUrls} obj Optional instance to populate. + * @return {module:model/ConfigDownloadUrls} The populated ConfigDownloadUrls instance. + */ + static constructFromObject(data, obj) { + if (data) { + obj = obj || new ConfigDownloadUrls(); + + if (data.hasOwnProperty('sdk2')) { + obj['sdk2'] = ApiClient.convertToType(data['sdk2'], 'String'); + } + if (data.hasOwnProperty('sdk3-avatars')) { + obj['sdk3-avatars'] = ApiClient.convertToType(data['sdk3-avatars'], 'String'); + } + if (data.hasOwnProperty('sdk3-worlds')) { + obj['sdk3-worlds'] = ApiClient.convertToType(data['sdk3-worlds'], 'String'); + } + } + return obj; + } + + +} + +/** + * Download link for legacy SDK2 + * @member {String} sdk2 + */ +ConfigDownloadUrls.prototype['sdk2'] = undefined; + +/** + * Download link for SDK3 for Avatars + * @member {String} sdk3-avatars + */ +ConfigDownloadUrls.prototype['sdk3-avatars'] = undefined; + +/** + * Download link for SDK3 for Worlds + * @member {String} sdk3-worlds + */ +ConfigDownloadUrls.prototype['sdk3-worlds'] = undefined; + + + + + + +export default ConfigDownloadUrls; + diff --git a/src/model/ConfigDynamicWorldRows.js b/src/model/ConfigDynamicWorldRows.js new file mode 100644 index 0000000..8a67050 --- /dev/null +++ b/src/model/ConfigDynamicWorldRows.js @@ -0,0 +1,132 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +import ApiClient from '../ApiClient'; + +/** + * The ConfigDynamicWorldRows model module. + * @module model/ConfigDynamicWorldRows + * @version 1.0.0 + */ +class ConfigDynamicWorldRows { + /** + * Constructs a new ConfigDynamicWorldRows. + * @alias module:model/ConfigDynamicWorldRows + * @param index {Number} + * @param name {String} + * @param platform {String} + * @param sortHeading {String} + * @param sortOrder {String} + * @param sortOwnership {String} + */ + constructor(index, name, platform, sortHeading, sortOrder, sortOwnership) { + + ConfigDynamicWorldRows.initialize(this, index, name, platform, sortHeading, sortOrder, sortOwnership); + } + + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + static initialize(obj, index, name, platform, sortHeading, sortOrder, sortOwnership) { + obj['index'] = index; + obj['name'] = name; + obj['platform'] = platform; + obj['sortHeading'] = sortHeading; + obj['sortOrder'] = sortOrder; + obj['sortOwnership'] = sortOwnership; + } + + /** + * Constructs a ConfigDynamicWorldRows from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/ConfigDynamicWorldRows} obj Optional instance to populate. + * @return {module:model/ConfigDynamicWorldRows} The populated ConfigDynamicWorldRows instance. + */ + static constructFromObject(data, obj) { + if (data) { + obj = obj || new ConfigDynamicWorldRows(); + + if (data.hasOwnProperty('index')) { + obj['index'] = ApiClient.convertToType(data['index'], 'Number'); + } + if (data.hasOwnProperty('name')) { + obj['name'] = ApiClient.convertToType(data['name'], 'String'); + } + if (data.hasOwnProperty('platform')) { + obj['platform'] = ApiClient.convertToType(data['platform'], 'String'); + } + if (data.hasOwnProperty('sortHeading')) { + obj['sortHeading'] = ApiClient.convertToType(data['sortHeading'], 'String'); + } + if (data.hasOwnProperty('sortOrder')) { + obj['sortOrder'] = ApiClient.convertToType(data['sortOrder'], 'String'); + } + if (data.hasOwnProperty('sortOwnership')) { + obj['sortOwnership'] = ApiClient.convertToType(data['sortOwnership'], 'String'); + } + if (data.hasOwnProperty('tag')) { + obj['tag'] = ApiClient.convertToType(data['tag'], 'String'); + } + } + return obj; + } + + +} + +/** + * @member {Number} index + */ +ConfigDynamicWorldRows.prototype['index'] = undefined; + +/** + * @member {String} name + */ +ConfigDynamicWorldRows.prototype['name'] = undefined; + +/** + * @member {String} platform + */ +ConfigDynamicWorldRows.prototype['platform'] = undefined; + +/** + * @member {String} sortHeading + */ +ConfigDynamicWorldRows.prototype['sortHeading'] = undefined; + +/** + * @member {String} sortOrder + */ +ConfigDynamicWorldRows.prototype['sortOrder'] = undefined; + +/** + * @member {String} sortOwnership + */ +ConfigDynamicWorldRows.prototype['sortOwnership'] = undefined; + +/** + * Tag to filter worlds for this row + * @member {String} tag + */ +ConfigDynamicWorldRows.prototype['tag'] = undefined; + + + + + + +export default ConfigDynamicWorldRows; + diff --git a/src/model/ConfigEvents.js b/src/model/ConfigEvents.js new file mode 100644 index 0000000..bccc202 --- /dev/null +++ b/src/model/ConfigEvents.js @@ -0,0 +1,173 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +import ApiClient from '../ApiClient'; + +/** + * The ConfigEvents model module. + * @module model/ConfigEvents + * @version 1.0.0 + */ +class ConfigEvents { + /** + * Constructs a new ConfigEvents. + * @alias module:model/ConfigEvents + * @param distanceClose {Number} Unknown + * @param distanceFactor {Number} Unknown + * @param distanceFar {Number} Unknown + * @param groupDistance {Number} Unknown + * @param maximumBunchSize {Number} Unknown + * @param notVisibleFactor {Number} Unknown + * @param playerOrderBucketSize {Number} Unknown + * @param playerOrderFactor {Number} Unknown + * @param slowUpdateFactorThreshold {Number} Unknown + * @param viewSegmentLength {Number} Unknown + */ + constructor(distanceClose, distanceFactor, distanceFar, groupDistance, maximumBunchSize, notVisibleFactor, playerOrderBucketSize, playerOrderFactor, slowUpdateFactorThreshold, viewSegmentLength) { + + ConfigEvents.initialize(this, distanceClose, distanceFactor, distanceFar, groupDistance, maximumBunchSize, notVisibleFactor, playerOrderBucketSize, playerOrderFactor, slowUpdateFactorThreshold, viewSegmentLength); + } + + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + static initialize(obj, distanceClose, distanceFactor, distanceFar, groupDistance, maximumBunchSize, notVisibleFactor, playerOrderBucketSize, playerOrderFactor, slowUpdateFactorThreshold, viewSegmentLength) { + obj['distanceClose'] = distanceClose; + obj['distanceFactor'] = distanceFactor; + obj['distanceFar'] = distanceFar; + obj['groupDistance'] = groupDistance; + obj['maximumBunchSize'] = maximumBunchSize; + obj['notVisibleFactor'] = notVisibleFactor; + obj['playerOrderBucketSize'] = playerOrderBucketSize; + obj['playerOrderFactor'] = playerOrderFactor; + obj['slowUpdateFactorThreshold'] = slowUpdateFactorThreshold; + obj['viewSegmentLength'] = viewSegmentLength; + } + + /** + * Constructs a ConfigEvents from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/ConfigEvents} obj Optional instance to populate. + * @return {module:model/ConfigEvents} The populated ConfigEvents instance. + */ + static constructFromObject(data, obj) { + if (data) { + obj = obj || new ConfigEvents(); + + if (data.hasOwnProperty('distanceClose')) { + obj['distanceClose'] = ApiClient.convertToType(data['distanceClose'], 'Number'); + } + if (data.hasOwnProperty('distanceFactor')) { + obj['distanceFactor'] = ApiClient.convertToType(data['distanceFactor'], 'Number'); + } + if (data.hasOwnProperty('distanceFar')) { + obj['distanceFar'] = ApiClient.convertToType(data['distanceFar'], 'Number'); + } + if (data.hasOwnProperty('groupDistance')) { + obj['groupDistance'] = ApiClient.convertToType(data['groupDistance'], 'Number'); + } + if (data.hasOwnProperty('maximumBunchSize')) { + obj['maximumBunchSize'] = ApiClient.convertToType(data['maximumBunchSize'], 'Number'); + } + if (data.hasOwnProperty('notVisibleFactor')) { + obj['notVisibleFactor'] = ApiClient.convertToType(data['notVisibleFactor'], 'Number'); + } + if (data.hasOwnProperty('playerOrderBucketSize')) { + obj['playerOrderBucketSize'] = ApiClient.convertToType(data['playerOrderBucketSize'], 'Number'); + } + if (data.hasOwnProperty('playerOrderFactor')) { + obj['playerOrderFactor'] = ApiClient.convertToType(data['playerOrderFactor'], 'Number'); + } + if (data.hasOwnProperty('slowUpdateFactorThreshold')) { + obj['slowUpdateFactorThreshold'] = ApiClient.convertToType(data['slowUpdateFactorThreshold'], 'Number'); + } + if (data.hasOwnProperty('viewSegmentLength')) { + obj['viewSegmentLength'] = ApiClient.convertToType(data['viewSegmentLength'], 'Number'); + } + } + return obj; + } + + +} + +/** + * Unknown + * @member {Number} distanceClose + */ +ConfigEvents.prototype['distanceClose'] = undefined; + +/** + * Unknown + * @member {Number} distanceFactor + */ +ConfigEvents.prototype['distanceFactor'] = undefined; + +/** + * Unknown + * @member {Number} distanceFar + */ +ConfigEvents.prototype['distanceFar'] = undefined; + +/** + * Unknown + * @member {Number} groupDistance + */ +ConfigEvents.prototype['groupDistance'] = undefined; + +/** + * Unknown + * @member {Number} maximumBunchSize + */ +ConfigEvents.prototype['maximumBunchSize'] = undefined; + +/** + * Unknown + * @member {Number} notVisibleFactor + */ +ConfigEvents.prototype['notVisibleFactor'] = undefined; + +/** + * Unknown + * @member {Number} playerOrderBucketSize + */ +ConfigEvents.prototype['playerOrderBucketSize'] = undefined; + +/** + * Unknown + * @member {Number} playerOrderFactor + */ +ConfigEvents.prototype['playerOrderFactor'] = undefined; + +/** + * Unknown + * @member {Number} slowUpdateFactorThreshold + */ +ConfigEvents.prototype['slowUpdateFactorThreshold'] = undefined; + +/** + * Unknown + * @member {Number} viewSegmentLength + */ +ConfigEvents.prototype['viewSegmentLength'] = undefined; + + + + + + +export default ConfigEvents; + diff --git a/src/model/CurrentUser.js b/src/model/CurrentUser.js new file mode 100644 index 0000000..2434cf0 --- /dev/null +++ b/src/model/CurrentUser.js @@ -0,0 +1,525 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +import ApiClient from '../ApiClient'; +import DeveloperType from './DeveloperType'; +import UserState from './UserState'; +import UserStatus from './UserStatus'; + +/** + * The CurrentUser model module. + * @module model/CurrentUser + * @version 1.0.0 + */ +class CurrentUser { + /** + * Constructs a new CurrentUser. + * @alias module:model/CurrentUser + * @param id {String} + * @param username {String} + * @param displayName {String} + * @param userIcon {String} + * @param bio {String} + * @param bioLinks {Array.} + * @param profilePicOverride {String} + * @param statusDescription {String} + * @param pastDisplayNames {Array.} + * @param hasEmail {Boolean} + * @param hasPendingEmail {Boolean} + * @param obfuscatedEmail {String} + * @param obfuscatedPendingEmail {String} + * @param emailVerified {Boolean} + * @param hasBirthday {Boolean} + * @param unsubscribe {Boolean} + * @param statusHistory {Array.} + * @param statusFirstTime {Boolean} + * @param friends {Array.} + * @param friendGroupNames {Array.} + * @param currentAvatarImageUrl {String} + * @param currentAvatarThumbnailImageUrl {String} + * @param fallbackAvatar {String} + * @param currentAvatar {String} + * @param currentAvatarAssetUrl {String} + * @param acceptedTOSVersion {Number} + * @param steamId {String} + * @param steamDetails {Object} + * @param oculusId {String} + * @param hasLoggedInFromClient {Boolean} + * @param homeLocation {String} + * @param twoFactorAuthEnabled {Boolean} + * @param state {module:model/UserState} + * @param tags {Array.} + * @param developerType {module:model/DeveloperType} + * @param lastLogin {Date} + * @param lastPlatform {String} + * @param allowAvatarCopying {Boolean} + * @param status {module:model/UserStatus} + * @param dateJoined {Date} + * @param isFriend {Boolean} + * @param friendKey {String} + * @param onlineFriends {Array.} + * @param activeFriends {Array.} + * @param offlineFriends {Array.} + */ + constructor(id, username, displayName, userIcon, bio, bioLinks, profilePicOverride, statusDescription, pastDisplayNames, hasEmail, hasPendingEmail, obfuscatedEmail, obfuscatedPendingEmail, emailVerified, hasBirthday, unsubscribe, statusHistory, statusFirstTime, friends, friendGroupNames, currentAvatarImageUrl, currentAvatarThumbnailImageUrl, fallbackAvatar, currentAvatar, currentAvatarAssetUrl, acceptedTOSVersion, steamId, steamDetails, oculusId, hasLoggedInFromClient, homeLocation, twoFactorAuthEnabled, state, tags, developerType, lastLogin, lastPlatform, allowAvatarCopying, status, dateJoined, isFriend, friendKey, onlineFriends, activeFriends, offlineFriends) { + + CurrentUser.initialize(this, id, username, displayName, userIcon, bio, bioLinks, profilePicOverride, statusDescription, pastDisplayNames, hasEmail, hasPendingEmail, obfuscatedEmail, obfuscatedPendingEmail, emailVerified, hasBirthday, unsubscribe, statusHistory, statusFirstTime, friends, friendGroupNames, currentAvatarImageUrl, currentAvatarThumbnailImageUrl, fallbackAvatar, currentAvatar, currentAvatarAssetUrl, acceptedTOSVersion, steamId, steamDetails, oculusId, hasLoggedInFromClient, homeLocation, twoFactorAuthEnabled, state, tags, developerType, lastLogin, lastPlatform, allowAvatarCopying, status, dateJoined, isFriend, friendKey, onlineFriends, activeFriends, offlineFriends); + } + + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + static initialize(obj, id, username, displayName, userIcon, bio, bioLinks, profilePicOverride, statusDescription, pastDisplayNames, hasEmail, hasPendingEmail, obfuscatedEmail, obfuscatedPendingEmail, emailVerified, hasBirthday, unsubscribe, statusHistory, statusFirstTime, friends, friendGroupNames, currentAvatarImageUrl, currentAvatarThumbnailImageUrl, fallbackAvatar, currentAvatar, currentAvatarAssetUrl, acceptedTOSVersion, steamId, steamDetails, oculusId, hasLoggedInFromClient, homeLocation, twoFactorAuthEnabled, state, tags, developerType, lastLogin, lastPlatform, allowAvatarCopying, status, dateJoined, isFriend, friendKey, onlineFriends, activeFriends, offlineFriends) { + obj['id'] = id; + obj['username'] = username; + obj['displayName'] = displayName; + obj['userIcon'] = userIcon; + obj['bio'] = bio; + obj['bioLinks'] = bioLinks; + obj['profilePicOverride'] = profilePicOverride; + obj['statusDescription'] = statusDescription; + obj['pastDisplayNames'] = pastDisplayNames; + obj['hasEmail'] = hasEmail; + obj['hasPendingEmail'] = hasPendingEmail; + obj['obfuscatedEmail'] = obfuscatedEmail; + obj['obfuscatedPendingEmail'] = obfuscatedPendingEmail; + obj['emailVerified'] = emailVerified; + obj['hasBirthday'] = hasBirthday; + obj['unsubscribe'] = unsubscribe; + obj['statusHistory'] = statusHistory; + obj['statusFirstTime'] = statusFirstTime; + obj['friends'] = friends; + obj['friendGroupNames'] = friendGroupNames; + obj['currentAvatarImageUrl'] = currentAvatarImageUrl; + obj['currentAvatarThumbnailImageUrl'] = currentAvatarThumbnailImageUrl; + obj['fallbackAvatar'] = fallbackAvatar; + obj['currentAvatar'] = currentAvatar; + obj['currentAvatarAssetUrl'] = currentAvatarAssetUrl; + obj['acceptedTOSVersion'] = acceptedTOSVersion; + obj['steamId'] = steamId; + obj['steamDetails'] = steamDetails; + obj['oculusId'] = oculusId; + obj['hasLoggedInFromClient'] = hasLoggedInFromClient; + obj['homeLocation'] = homeLocation; + obj['twoFactorAuthEnabled'] = twoFactorAuthEnabled; + obj['state'] = state; + obj['tags'] = tags; + obj['developerType'] = developerType; + obj['last_login'] = lastLogin; + obj['last_platform'] = lastPlatform; + obj['allowAvatarCopying'] = allowAvatarCopying; + obj['status'] = status; + obj['date_joined'] = dateJoined; + obj['isFriend'] = isFriend || false; + obj['friendKey'] = friendKey; + obj['onlineFriends'] = onlineFriends; + obj['activeFriends'] = activeFriends; + obj['offlineFriends'] = offlineFriends; + } + + /** + * Constructs a CurrentUser from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/CurrentUser} obj Optional instance to populate. + * @return {module:model/CurrentUser} The populated CurrentUser instance. + */ + static constructFromObject(data, obj) { + if (data) { + obj = obj || new CurrentUser(); + + if (data.hasOwnProperty('id')) { + obj['id'] = ApiClient.convertToType(data['id'], 'String'); + } + if (data.hasOwnProperty('username')) { + obj['username'] = ApiClient.convertToType(data['username'], 'String'); + } + if (data.hasOwnProperty('displayName')) { + obj['displayName'] = ApiClient.convertToType(data['displayName'], 'String'); + } + if (data.hasOwnProperty('userIcon')) { + obj['userIcon'] = ApiClient.convertToType(data['userIcon'], 'String'); + } + if (data.hasOwnProperty('bio')) { + obj['bio'] = ApiClient.convertToType(data['bio'], 'String'); + } + if (data.hasOwnProperty('bioLinks')) { + obj['bioLinks'] = ApiClient.convertToType(data['bioLinks'], ['String']); + } + if (data.hasOwnProperty('profilePicOverride')) { + obj['profilePicOverride'] = ApiClient.convertToType(data['profilePicOverride'], 'String'); + } + if (data.hasOwnProperty('statusDescription')) { + obj['statusDescription'] = ApiClient.convertToType(data['statusDescription'], 'String'); + } + if (data.hasOwnProperty('pastDisplayNames')) { + obj['pastDisplayNames'] = ApiClient.convertToType(data['pastDisplayNames'], ['String']); + } + if (data.hasOwnProperty('hasEmail')) { + obj['hasEmail'] = ApiClient.convertToType(data['hasEmail'], 'Boolean'); + } + if (data.hasOwnProperty('hasPendingEmail')) { + obj['hasPendingEmail'] = ApiClient.convertToType(data['hasPendingEmail'], 'Boolean'); + } + if (data.hasOwnProperty('obfuscatedEmail')) { + obj['obfuscatedEmail'] = ApiClient.convertToType(data['obfuscatedEmail'], 'String'); + } + if (data.hasOwnProperty('obfuscatedPendingEmail')) { + obj['obfuscatedPendingEmail'] = ApiClient.convertToType(data['obfuscatedPendingEmail'], 'String'); + } + if (data.hasOwnProperty('emailVerified')) { + obj['emailVerified'] = ApiClient.convertToType(data['emailVerified'], 'Boolean'); + } + if (data.hasOwnProperty('hasBirthday')) { + obj['hasBirthday'] = ApiClient.convertToType(data['hasBirthday'], 'Boolean'); + } + if (data.hasOwnProperty('unsubscribe')) { + obj['unsubscribe'] = ApiClient.convertToType(data['unsubscribe'], 'Boolean'); + } + if (data.hasOwnProperty('statusHistory')) { + obj['statusHistory'] = ApiClient.convertToType(data['statusHistory'], ['String']); + } + if (data.hasOwnProperty('statusFirstTime')) { + obj['statusFirstTime'] = ApiClient.convertToType(data['statusFirstTime'], 'Boolean'); + } + if (data.hasOwnProperty('friends')) { + obj['friends'] = ApiClient.convertToType(data['friends'], ['String']); + } + if (data.hasOwnProperty('friendGroupNames')) { + obj['friendGroupNames'] = ApiClient.convertToType(data['friendGroupNames'], ['String']); + } + if (data.hasOwnProperty('currentAvatarImageUrl')) { + obj['currentAvatarImageUrl'] = ApiClient.convertToType(data['currentAvatarImageUrl'], 'String'); + } + if (data.hasOwnProperty('currentAvatarThumbnailImageUrl')) { + obj['currentAvatarThumbnailImageUrl'] = ApiClient.convertToType(data['currentAvatarThumbnailImageUrl'], 'String'); + } + if (data.hasOwnProperty('fallbackAvatar')) { + obj['fallbackAvatar'] = ApiClient.convertToType(data['fallbackAvatar'], 'String'); + } + if (data.hasOwnProperty('currentAvatar')) { + obj['currentAvatar'] = ApiClient.convertToType(data['currentAvatar'], 'String'); + } + if (data.hasOwnProperty('currentAvatarAssetUrl')) { + obj['currentAvatarAssetUrl'] = ApiClient.convertToType(data['currentAvatarAssetUrl'], 'String'); + } + if (data.hasOwnProperty('accountDeletionDate')) { + obj['accountDeletionDate'] = ApiClient.convertToType(data['accountDeletionDate'], 'Date'); + } + if (data.hasOwnProperty('acceptedTOSVersion')) { + obj['acceptedTOSVersion'] = ApiClient.convertToType(data['acceptedTOSVersion'], 'Number'); + } + if (data.hasOwnProperty('steamId')) { + obj['steamId'] = ApiClient.convertToType(data['steamId'], 'String'); + } + if (data.hasOwnProperty('steamDetails')) { + obj['steamDetails'] = ApiClient.convertToType(data['steamDetails'], Object); + } + if (data.hasOwnProperty('oculusId')) { + obj['oculusId'] = ApiClient.convertToType(data['oculusId'], 'String'); + } + if (data.hasOwnProperty('hasLoggedInFromClient')) { + obj['hasLoggedInFromClient'] = ApiClient.convertToType(data['hasLoggedInFromClient'], 'Boolean'); + } + if (data.hasOwnProperty('homeLocation')) { + obj['homeLocation'] = ApiClient.convertToType(data['homeLocation'], 'String'); + } + if (data.hasOwnProperty('twoFactorAuthEnabled')) { + obj['twoFactorAuthEnabled'] = ApiClient.convertToType(data['twoFactorAuthEnabled'], 'Boolean'); + } + if (data.hasOwnProperty('state')) { + obj['state'] = UserState.constructFromObject(data['state']); + } + if (data.hasOwnProperty('tags')) { + obj['tags'] = ApiClient.convertToType(data['tags'], ['String']); + } + if (data.hasOwnProperty('developerType')) { + obj['developerType'] = DeveloperType.constructFromObject(data['developerType']); + } + if (data.hasOwnProperty('last_login')) { + obj['last_login'] = ApiClient.convertToType(data['last_login'], 'Date'); + } + if (data.hasOwnProperty('last_platform')) { + obj['last_platform'] = ApiClient.convertToType(data['last_platform'], 'String'); + } + if (data.hasOwnProperty('allowAvatarCopying')) { + obj['allowAvatarCopying'] = ApiClient.convertToType(data['allowAvatarCopying'], 'Boolean'); + } + if (data.hasOwnProperty('status')) { + obj['status'] = UserStatus.constructFromObject(data['status']); + } + if (data.hasOwnProperty('date_joined')) { + obj['date_joined'] = ApiClient.convertToType(data['date_joined'], 'Date'); + } + if (data.hasOwnProperty('isFriend')) { + obj['isFriend'] = ApiClient.convertToType(data['isFriend'], 'Boolean'); + } + if (data.hasOwnProperty('friendKey')) { + obj['friendKey'] = ApiClient.convertToType(data['friendKey'], 'String'); + } + if (data.hasOwnProperty('onlineFriends')) { + obj['onlineFriends'] = ApiClient.convertToType(data['onlineFriends'], ['String']); + } + if (data.hasOwnProperty('activeFriends')) { + obj['activeFriends'] = ApiClient.convertToType(data['activeFriends'], ['String']); + } + if (data.hasOwnProperty('offlineFriends')) { + obj['offlineFriends'] = ApiClient.convertToType(data['offlineFriends'], ['String']); + } + } + return obj; + } + + +} + +/** + * @member {String} id + */ +CurrentUser.prototype['id'] = undefined; + +/** + * @member {String} username + */ +CurrentUser.prototype['username'] = undefined; + +/** + * @member {String} displayName + */ +CurrentUser.prototype['displayName'] = undefined; + +/** + * @member {String} userIcon + */ +CurrentUser.prototype['userIcon'] = undefined; + +/** + * @member {String} bio + */ +CurrentUser.prototype['bio'] = undefined; + +/** + * @member {Array.} bioLinks + */ +CurrentUser.prototype['bioLinks'] = undefined; + +/** + * @member {String} profilePicOverride + */ +CurrentUser.prototype['profilePicOverride'] = undefined; + +/** + * @member {String} statusDescription + */ +CurrentUser.prototype['statusDescription'] = undefined; + +/** + * @member {Array.} pastDisplayNames + */ +CurrentUser.prototype['pastDisplayNames'] = undefined; + +/** + * @member {Boolean} hasEmail + */ +CurrentUser.prototype['hasEmail'] = undefined; + +/** + * @member {Boolean} hasPendingEmail + */ +CurrentUser.prototype['hasPendingEmail'] = undefined; + +/** + * @member {String} obfuscatedEmail + */ +CurrentUser.prototype['obfuscatedEmail'] = undefined; + +/** + * @member {String} obfuscatedPendingEmail + */ +CurrentUser.prototype['obfuscatedPendingEmail'] = undefined; + +/** + * @member {Boolean} emailVerified + */ +CurrentUser.prototype['emailVerified'] = undefined; + +/** + * @member {Boolean} hasBirthday + */ +CurrentUser.prototype['hasBirthday'] = undefined; + +/** + * @member {Boolean} unsubscribe + */ +CurrentUser.prototype['unsubscribe'] = undefined; + +/** + * @member {Array.} statusHistory + */ +CurrentUser.prototype['statusHistory'] = undefined; + +/** + * @member {Boolean} statusFirstTime + */ +CurrentUser.prototype['statusFirstTime'] = undefined; + +/** + * @member {Array.} friends + */ +CurrentUser.prototype['friends'] = undefined; + +/** + * @member {Array.} friendGroupNames + */ +CurrentUser.prototype['friendGroupNames'] = undefined; + +/** + * @member {String} currentAvatarImageUrl + */ +CurrentUser.prototype['currentAvatarImageUrl'] = undefined; + +/** + * @member {String} currentAvatarThumbnailImageUrl + */ +CurrentUser.prototype['currentAvatarThumbnailImageUrl'] = undefined; + +/** + * @member {String} fallbackAvatar + */ +CurrentUser.prototype['fallbackAvatar'] = undefined; + +/** + * @member {String} currentAvatar + */ +CurrentUser.prototype['currentAvatar'] = undefined; + +/** + * @member {String} currentAvatarAssetUrl + */ +CurrentUser.prototype['currentAvatarAssetUrl'] = undefined; + +/** + * @member {Date} accountDeletionDate + */ +CurrentUser.prototype['accountDeletionDate'] = undefined; + +/** + * @member {Number} acceptedTOSVersion + */ +CurrentUser.prototype['acceptedTOSVersion'] = undefined; + +/** + * @member {String} steamId + */ +CurrentUser.prototype['steamId'] = undefined; + +/** + * @member {Object} steamDetails + */ +CurrentUser.prototype['steamDetails'] = undefined; + +/** + * @member {String} oculusId + */ +CurrentUser.prototype['oculusId'] = undefined; + +/** + * @member {Boolean} hasLoggedInFromClient + */ +CurrentUser.prototype['hasLoggedInFromClient'] = undefined; + +/** + * @member {String} homeLocation + */ +CurrentUser.prototype['homeLocation'] = undefined; + +/** + * @member {Boolean} twoFactorAuthEnabled + */ +CurrentUser.prototype['twoFactorAuthEnabled'] = undefined; + +/** + * @member {module:model/UserState} state + */ +CurrentUser.prototype['state'] = undefined; + +/** + * @member {Array.} tags + */ +CurrentUser.prototype['tags'] = undefined; + +/** + * @member {module:model/DeveloperType} developerType + */ +CurrentUser.prototype['developerType'] = undefined; + +/** + * @member {Date} last_login + */ +CurrentUser.prototype['last_login'] = undefined; + +/** + * @member {String} last_platform + */ +CurrentUser.prototype['last_platform'] = undefined; + +/** + * @member {Boolean} allowAvatarCopying + */ +CurrentUser.prototype['allowAvatarCopying'] = undefined; + +/** + * @member {module:model/UserStatus} status + */ +CurrentUser.prototype['status'] = undefined; + +/** + * @member {Date} date_joined + */ +CurrentUser.prototype['date_joined'] = undefined; + +/** + * @member {Boolean} isFriend + * @default false + */ +CurrentUser.prototype['isFriend'] = false; + +/** + * @member {String} friendKey + */ +CurrentUser.prototype['friendKey'] = undefined; + +/** + * @member {Array.} onlineFriends + */ +CurrentUser.prototype['onlineFriends'] = undefined; + +/** + * @member {Array.} activeFriends + */ +CurrentUser.prototype['activeFriends'] = undefined; + +/** + * @member {Array.} offlineFriends + */ +CurrentUser.prototype['offlineFriends'] = undefined; + + + + + + +export default CurrentUser; + diff --git a/src/model/DeploymentGroup.js b/src/model/DeploymentGroup.js new file mode 100644 index 0000000..0b9f7d4 --- /dev/null +++ b/src/model/DeploymentGroup.js @@ -0,0 +1,60 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +import ApiClient from '../ApiClient'; +/** +* Enum class DeploymentGroup. +* @enum {} +* @readonly +*/ +export default class DeploymentGroup { + + /** + * value: "blue" + * @const + */ + "blue" = "blue"; + + + /** + * value: "green" + * @const + */ + "green" = "green"; + + + /** + * value: "grape" + * @const + */ + "grape" = "grape"; + + + /** + * value: "cherry" + * @const + */ + "cherry" = "cherry"; + + + + /** + * Returns a DeploymentGroup enum value from a Javascript object name. + * @param {Object} data The plain JavaScript object containing the name of the enum value. + * @return {module:model/DeploymentGroup} The enum DeploymentGroup value. + */ + static constructFromObject(object) { + return object; + } +} + diff --git a/src/model/DeveloperType.js b/src/model/DeveloperType.js new file mode 100644 index 0000000..af0ff35 --- /dev/null +++ b/src/model/DeveloperType.js @@ -0,0 +1,60 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +import ApiClient from '../ApiClient'; +/** +* Enum class DeveloperType. +* @enum {} +* @readonly +*/ +export default class DeveloperType { + + /** + * value: "none" + * @const + */ + "none" = "none"; + + + /** + * value: "trusted" + * @const + */ + "trusted" = "trusted"; + + + /** + * value: "internal" + * @const + */ + "internal" = "internal"; + + + /** + * value: "moderator" + * @const + */ + "moderator" = "moderator"; + + + + /** + * Returns a DeveloperType enum value from a Javascript object name. + * @param {Object} data The plain JavaScript object containing the name of the enum value. + * @return {module:model/DeveloperType} The enum DeveloperType value. + */ + static constructFromObject(object) { + return object; + } +} + diff --git a/src/model/Error.js b/src/model/Error.js new file mode 100644 index 0000000..b4609d7 --- /dev/null +++ b/src/model/Error.js @@ -0,0 +1,72 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +import ApiClient from '../ApiClient'; +import Response from './Response'; + +/** + * The Error model module. + * @module model/Error + * @version 1.0.0 + */ +class Error { + /** + * Constructs a new Error. + * @alias module:model/Error + */ + constructor() { + + Error.initialize(this); + } + + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + static initialize(obj) { + } + + /** + * Constructs a Error from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/Error} obj Optional instance to populate. + * @return {module:model/Error} The populated Error instance. + */ + static constructFromObject(data, obj) { + if (data) { + obj = obj || new Error(); + + if (data.hasOwnProperty('error')) { + obj['error'] = Response.constructFromObject(data['error']); + } + } + return obj; + } + + +} + +/** + * @member {module:model/Response} error + */ +Error.prototype['error'] = undefined; + + + + + + +export default Error; + diff --git a/src/model/File.js b/src/model/File.js new file mode 100644 index 0000000..0c86a9b --- /dev/null +++ b/src/model/File.js @@ -0,0 +1,137 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +import ApiClient from '../ApiClient'; +import FileVersion from './FileVersion'; +import MIMEType from './MIMEType'; + +/** + * The File model module. + * @module model/File + * @version 1.0.0 + */ +class File { + /** + * Constructs a new File. + * + * @alias module:model/File + * @param id {String} + * @param name {String} + * @param ownerId {String} + * @param mimeType {module:model/MIMEType} + * @param extension {String} + * @param tags {Array.} + * @param versions {Array.} + */ + constructor(id, name, ownerId, mimeType, extension, tags, versions) { + + File.initialize(this, id, name, ownerId, mimeType, extension, tags, versions); + } + + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + static initialize(obj, id, name, ownerId, mimeType, extension, tags, versions) { + obj['id'] = id; + obj['name'] = name; + obj['ownerId'] = ownerId; + obj['mimeType'] = mimeType; + obj['extension'] = extension; + obj['tags'] = tags; + obj['versions'] = versions; + } + + /** + * Constructs a File from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/File} obj Optional instance to populate. + * @return {module:model/File} The populated File instance. + */ + static constructFromObject(data, obj) { + if (data) { + obj = obj || new File(); + + if (data.hasOwnProperty('id')) { + obj['id'] = ApiClient.convertToType(data['id'], 'String'); + } + if (data.hasOwnProperty('name')) { + obj['name'] = ApiClient.convertToType(data['name'], 'String'); + } + if (data.hasOwnProperty('ownerId')) { + obj['ownerId'] = ApiClient.convertToType(data['ownerId'], 'String'); + } + if (data.hasOwnProperty('mimeType')) { + obj['mimeType'] = MIMEType.constructFromObject(data['mimeType']); + } + if (data.hasOwnProperty('extension')) { + obj['extension'] = ApiClient.convertToType(data['extension'], 'String'); + } + if (data.hasOwnProperty('tags')) { + obj['tags'] = ApiClient.convertToType(data['tags'], ['String']); + } + if (data.hasOwnProperty('versions')) { + obj['versions'] = ApiClient.convertToType(data['versions'], [FileVersion]); + } + } + return obj; + } + + +} + +/** + * @member {String} id + */ +File.prototype['id'] = undefined; + +/** + * + * @member {String} name + */ +File.prototype['name'] = undefined; + +/** + * @member {String} ownerId + */ +File.prototype['ownerId'] = undefined; + +/** + * @member {module:model/MIMEType} mimeType + */ +File.prototype['mimeType'] = undefined; + +/** + * @member {String} extension + */ +File.prototype['extension'] = undefined; + +/** + * @member {Array.} tags + */ +File.prototype['tags'] = undefined; + +/** + * @member {Array.} versions + */ +File.prototype['versions'] = undefined; + + + + + + +export default File; + diff --git a/src/model/FileData.js b/src/model/FileData.js new file mode 100644 index 0000000..35ceb0d --- /dev/null +++ b/src/model/FileData.js @@ -0,0 +1,163 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +import ApiClient from '../ApiClient'; +import FileStatus from './FileStatus'; + +/** + * The FileData model module. + * @module model/FileData + * @version 1.0.0 + */ +class FileData { + /** + * Constructs a new FileData. + * + * @alias module:model/FileData + * @param fileName {String} + * @param url {String} + * @param md5 {String} + * @param sizeInBytes {Number} + * @param status {module:model/FileStatus} + * @param category {module:model/FileData.CategoryEnum} + * @param uploadId {String} + */ + constructor(fileName, url, md5, sizeInBytes, status, category, uploadId) { + + FileData.initialize(this, fileName, url, md5, sizeInBytes, status, category, uploadId); + } + + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + static initialize(obj, fileName, url, md5, sizeInBytes, status, category, uploadId) { + obj['fileName'] = fileName; + obj['url'] = url; + obj['md5'] = md5; + obj['sizeInBytes'] = sizeInBytes; + obj['status'] = status; + obj['category'] = category; + obj['uploadId'] = uploadId || ''; + } + + /** + * Constructs a FileData from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/FileData} obj Optional instance to populate. + * @return {module:model/FileData} The populated FileData instance. + */ + static constructFromObject(data, obj) { + if (data) { + obj = obj || new FileData(); + + if (data.hasOwnProperty('fileName')) { + obj['fileName'] = ApiClient.convertToType(data['fileName'], 'String'); + } + if (data.hasOwnProperty('url')) { + obj['url'] = ApiClient.convertToType(data['url'], 'String'); + } + if (data.hasOwnProperty('md5')) { + obj['md5'] = ApiClient.convertToType(data['md5'], 'String'); + } + if (data.hasOwnProperty('sizeInBytes')) { + obj['sizeInBytes'] = ApiClient.convertToType(data['sizeInBytes'], 'Number'); + } + if (data.hasOwnProperty('status')) { + obj['status'] = FileStatus.constructFromObject(data['status']); + } + if (data.hasOwnProperty('category')) { + obj['category'] = ApiClient.convertToType(data['category'], 'String'); + } + if (data.hasOwnProperty('uploadId')) { + obj['uploadId'] = ApiClient.convertToType(data['uploadId'], 'String'); + } + } + return obj; + } + + +} + +/** + * @member {String} fileName + */ +FileData.prototype['fileName'] = undefined; + +/** + * @member {String} url + */ +FileData.prototype['url'] = undefined; + +/** + * @member {String} md5 + */ +FileData.prototype['md5'] = undefined; + +/** + * @member {Number} sizeInBytes + */ +FileData.prototype['sizeInBytes'] = undefined; + +/** + * @member {module:model/FileStatus} status + */ +FileData.prototype['status'] = undefined; + +/** + * @member {module:model/FileData.CategoryEnum} category + */ +FileData.prototype['category'] = undefined; + +/** + * @member {String} uploadId + * @default '' + */ +FileData.prototype['uploadId'] = ''; + + + + + +/** + * Allowed values for the category property. + * @enum {String} + * @readonly + */ +FileData['CategoryEnum'] = { + + /** + * value: "multipart" + * @const + */ + "multipart": "multipart", + + /** + * value: "queued" + * @const + */ + "queued": "queued", + + /** + * value: "simple" + * @const + */ + "simple": "simple" +}; + + + +export default FileData; + diff --git a/src/model/FileStatus.js b/src/model/FileStatus.js new file mode 100644 index 0000000..eff1ae1 --- /dev/null +++ b/src/model/FileStatus.js @@ -0,0 +1,53 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +import ApiClient from '../ApiClient'; +/** +* Enum class FileStatus. +* @enum {} +* @readonly +*/ +export default class FileStatus { + + /** + * value: "waiting" + * @const + */ + "waiting" = "waiting"; + + + /** + * value: "complete" + * @const + */ + "complete" = "complete"; + + + /** + * value: "none" + * @const + */ + "none" = "none"; + + + + /** + * Returns a FileStatus enum value from a Javascript object name. + * @param {Object} data The plain JavaScript object containing the name of the enum value. + * @return {module:model/FileStatus} The enum FileStatus value. + */ + static constructFromObject(object) { + return object; + } +} + diff --git a/src/model/FileVersion.js b/src/model/FileVersion.js new file mode 100644 index 0000000..9d4b352 --- /dev/null +++ b/src/model/FileVersion.js @@ -0,0 +1,132 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +import ApiClient from '../ApiClient'; +import FileData from './FileData'; +import FileStatus from './FileStatus'; + +/** + * The FileVersion model module. + * @module model/FileVersion + * @version 1.0.0 + */ +class FileVersion { + /** + * Constructs a new FileVersion. + * + * @alias module:model/FileVersion + * @param version {Number} Incremental version counter, can only be increased. + * @param status {module:model/FileStatus} + * @param createdAt {Date} + */ + constructor(version, status, createdAt) { + + FileVersion.initialize(this, version, status, createdAt); + } + + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + static initialize(obj, version, status, createdAt) { + obj['version'] = version || 0; + obj['status'] = status; + obj['created_at'] = createdAt; + } + + /** + * Constructs a FileVersion from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/FileVersion} obj Optional instance to populate. + * @return {module:model/FileVersion} The populated FileVersion instance. + */ + static constructFromObject(data, obj) { + if (data) { + obj = obj || new FileVersion(); + + if (data.hasOwnProperty('version')) { + obj['version'] = ApiClient.convertToType(data['version'], 'Number'); + } + if (data.hasOwnProperty('status')) { + obj['status'] = FileStatus.constructFromObject(data['status']); + } + if (data.hasOwnProperty('created_at')) { + obj['created_at'] = ApiClient.convertToType(data['created_at'], 'Date'); + } + if (data.hasOwnProperty('file')) { + obj['file'] = FileData.constructFromObject(data['file']); + } + if (data.hasOwnProperty('delta')) { + obj['delta'] = FileData.constructFromObject(data['delta']); + } + if (data.hasOwnProperty('signature')) { + obj['signature'] = FileData.constructFromObject(data['signature']); + } + if (data.hasOwnProperty('deleted')) { + obj['deleted'] = ApiClient.convertToType(data['deleted'], 'Boolean'); + } + } + return obj; + } + + +} + +/** + * Incremental version counter, can only be increased. + * @member {Number} version + * @default 0 + */ +FileVersion.prototype['version'] = 0; + +/** + * @member {module:model/FileStatus} status + */ +FileVersion.prototype['status'] = undefined; + +/** + * @member {Date} created_at + */ +FileVersion.prototype['created_at'] = undefined; + +/** + * @member {module:model/FileData} file + */ +FileVersion.prototype['file'] = undefined; + +/** + * @member {module:model/FileData} delta + */ +FileVersion.prototype['delta'] = undefined; + +/** + * @member {module:model/FileData} signature + */ +FileVersion.prototype['signature'] = undefined; + +/** + * Usually only present if `true` + * @member {Boolean} deleted + * @default true + */ +FileVersion.prototype['deleted'] = true; + + + + + + +export default FileVersion; + diff --git a/src/model/InlineObject.js b/src/model/InlineObject.js new file mode 100644 index 0000000..dd50cb0 --- /dev/null +++ b/src/model/InlineObject.js @@ -0,0 +1,73 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +import ApiClient from '../ApiClient'; + +/** + * The InlineObject model module. + * @module model/InlineObject + * @version 1.0.0 + */ +class InlineObject { + /** + * Constructs a new InlineObject. + * @alias module:model/InlineObject + * @param code {String} + */ + constructor(code) { + + InlineObject.initialize(this, code); + } + + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + static initialize(obj, code) { + obj['code'] = code; + } + + /** + * Constructs a InlineObject from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/InlineObject} obj Optional instance to populate. + * @return {module:model/InlineObject} The populated InlineObject instance. + */ + static constructFromObject(data, obj) { + if (data) { + obj = obj || new InlineObject(); + + if (data.hasOwnProperty('code')) { + obj['code'] = ApiClient.convertToType(data['code'], 'String'); + } + } + return obj; + } + + +} + +/** + * @member {String} code + */ +InlineObject.prototype['code'] = undefined; + + + + + + +export default InlineObject; + diff --git a/src/model/InlineObject1.js b/src/model/InlineObject1.js new file mode 100644 index 0000000..e07462e --- /dev/null +++ b/src/model/InlineObject1.js @@ -0,0 +1,73 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +import ApiClient from '../ApiClient'; + +/** + * The InlineObject1 model module. + * @module model/InlineObject1 + * @version 1.0.0 + */ +class InlineObject1 { + /** + * Constructs a new InlineObject1. + * @alias module:model/InlineObject1 + * @param code {String} + */ + constructor(code) { + + InlineObject1.initialize(this, code); + } + + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + static initialize(obj, code) { + obj['code'] = code; + } + + /** + * Constructs a InlineObject1 from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/InlineObject1} obj Optional instance to populate. + * @return {module:model/InlineObject1} The populated InlineObject1 instance. + */ + static constructFromObject(data, obj) { + if (data) { + obj = obj || new InlineObject1(); + + if (data.hasOwnProperty('code')) { + obj['code'] = ApiClient.convertToType(data['code'], 'String'); + } + } + return obj; + } + + +} + +/** + * @member {String} code + */ +InlineObject1.prototype['code'] = undefined; + + + + + + +export default InlineObject1; + diff --git a/src/model/InlineObject2.js b/src/model/InlineObject2.js new file mode 100644 index 0000000..2942d40 --- /dev/null +++ b/src/model/InlineObject2.js @@ -0,0 +1,137 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +import ApiClient from '../ApiClient'; +import UserStatus from './UserStatus'; + +/** + * The InlineObject2 model module. + * @module model/InlineObject2 + * @version 1.0.0 + */ +class InlineObject2 { + /** + * Constructs a new InlineObject2. + * @alias module:model/InlineObject2 + */ + constructor() { + + InlineObject2.initialize(this); + } + + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + static initialize(obj) { + } + + /** + * Constructs a InlineObject2 from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/InlineObject2} obj Optional instance to populate. + * @return {module:model/InlineObject2} The populated InlineObject2 instance. + */ + static constructFromObject(data, obj) { + if (data) { + obj = obj || new InlineObject2(); + + if (data.hasOwnProperty('email')) { + obj['email'] = ApiClient.convertToType(data['email'], 'String'); + } + if (data.hasOwnProperty('birthday')) { + obj['birthday'] = ApiClient.convertToType(data['birthday'], 'Date'); + } + if (data.hasOwnProperty('acceptedTOSVersion')) { + obj['acceptedTOSVersion'] = ApiClient.convertToType(data['acceptedTOSVersion'], 'Number'); + } + if (data.hasOwnProperty('tags')) { + obj['tags'] = ApiClient.convertToType(data['tags'], ['String']); + } + if (data.hasOwnProperty('status')) { + obj['status'] = UserStatus.constructFromObject(data['status']); + } + if (data.hasOwnProperty('statusDescription')) { + obj['statusDescription'] = ApiClient.convertToType(data['statusDescription'], 'String'); + } + if (data.hasOwnProperty('bio')) { + obj['bio'] = ApiClient.convertToType(data['bio'], 'String'); + } + if (data.hasOwnProperty('bioLinks')) { + obj['bioLinks'] = ApiClient.convertToType(data['bioLinks'], ['String']); + } + if (data.hasOwnProperty('userIcon')) { + obj['userIcon'] = ApiClient.convertToType(data['userIcon'], 'String'); + } + } + return obj; + } + + +} + +/** + * @member {String} email + */ +InlineObject2.prototype['email'] = undefined; + +/** + * @member {Date} birthday + */ +InlineObject2.prototype['birthday'] = undefined; + +/** + * @member {Number} acceptedTOSVersion + */ +InlineObject2.prototype['acceptedTOSVersion'] = undefined; + +/** + * @member {Array.} tags + */ +InlineObject2.prototype['tags'] = undefined; + +/** + * @member {module:model/UserStatus} status + */ +InlineObject2.prototype['status'] = undefined; + +/** + * @member {String} statusDescription + */ +InlineObject2.prototype['statusDescription'] = undefined; + +/** + * @member {String} bio + */ +InlineObject2.prototype['bio'] = undefined; + +/** + * @member {Array.} bioLinks + */ +InlineObject2.prototype['bioLinks'] = undefined; + +/** + * MUST be a valid VRChat /file/ url. + * @member {String} userIcon + */ +InlineObject2.prototype['userIcon'] = undefined; + + + + + + +export default InlineObject2; + diff --git a/src/model/InlineObject3.js b/src/model/InlineObject3.js new file mode 100644 index 0000000..f049967 --- /dev/null +++ b/src/model/InlineObject3.js @@ -0,0 +1,102 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +import ApiClient from '../ApiClient'; +import MIMEType from './MIMEType'; + +/** + * The InlineObject3 model module. + * @module model/InlineObject3 + * @version 1.0.0 + */ +class InlineObject3 { + /** + * Constructs a new InlineObject3. + * @alias module:model/InlineObject3 + * @param name {String} + * @param mimeType {module:model/MIMEType} + * @param extension {String} + */ + constructor(name, mimeType, extension) { + + InlineObject3.initialize(this, name, mimeType, extension); + } + + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + static initialize(obj, name, mimeType, extension) { + obj['name'] = name; + obj['mimeType'] = mimeType; + obj['extension'] = extension; + } + + /** + * Constructs a InlineObject3 from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/InlineObject3} obj Optional instance to populate. + * @return {module:model/InlineObject3} The populated InlineObject3 instance. + */ + static constructFromObject(data, obj) { + if (data) { + obj = obj || new InlineObject3(); + + if (data.hasOwnProperty('name')) { + obj['name'] = ApiClient.convertToType(data['name'], 'String'); + } + if (data.hasOwnProperty('mimeType')) { + obj['mimeType'] = MIMEType.constructFromObject(data['mimeType']); + } + if (data.hasOwnProperty('extension')) { + obj['extension'] = ApiClient.convertToType(data['extension'], 'String'); + } + if (data.hasOwnProperty('tags')) { + obj['tags'] = ApiClient.convertToType(data['tags'], ['String']); + } + } + return obj; + } + + +} + +/** + * @member {String} name + */ +InlineObject3.prototype['name'] = undefined; + +/** + * @member {module:model/MIMEType} mimeType + */ +InlineObject3.prototype['mimeType'] = undefined; + +/** + * @member {String} extension + */ +InlineObject3.prototype['extension'] = undefined; + +/** + * @member {Array.} tags + */ +InlineObject3.prototype['tags'] = undefined; + + + + + + +export default InlineObject3; + diff --git a/src/model/InlineObject4.js b/src/model/InlineObject4.js new file mode 100644 index 0000000..6f7fba4 --- /dev/null +++ b/src/model/InlineObject4.js @@ -0,0 +1,126 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +import ApiClient from '../ApiClient'; + +/** + * The InlineObject4 model module. + * @module model/InlineObject4 + * @version 1.0.0 + */ +class InlineObject4 { + /** + * Constructs a new InlineObject4. + * @alias module:model/InlineObject4 + * @param nextPartNumber {module:model/InlineObject4.NextPartNumberEnum} Always a zero in string form, despite how many parts uploaded. + * @param maxParts {module:model/InlineObject4.MaxPartsEnum} Always a zero in string form, despite how many parts uploaded. + */ + constructor(nextPartNumber, maxParts) { + + InlineObject4.initialize(this, nextPartNumber, maxParts); + } + + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + static initialize(obj, nextPartNumber, maxParts) { + obj['nextPartNumber'] = nextPartNumber || '0'; + obj['maxParts'] = maxParts || '0'; + } + + /** + * Constructs a InlineObject4 from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/InlineObject4} obj Optional instance to populate. + * @return {module:model/InlineObject4} The populated InlineObject4 instance. + */ + static constructFromObject(data, obj) { + if (data) { + obj = obj || new InlineObject4(); + + if (data.hasOwnProperty('etags')) { + obj['etags'] = ApiClient.convertToType(data['etags'], ['String']); + } + if (data.hasOwnProperty('nextPartNumber')) { + obj['nextPartNumber'] = ApiClient.convertToType(data['nextPartNumber'], 'String'); + } + if (data.hasOwnProperty('maxParts')) { + obj['maxParts'] = ApiClient.convertToType(data['maxParts'], 'String'); + } + } + return obj; + } + + +} + +/** + * Array of ETags uploaded. + * @member {Array.} etags + */ +InlineObject4.prototype['etags'] = undefined; + +/** + * Always a zero in string form, despite how many parts uploaded. + * @member {module:model/InlineObject4.NextPartNumberEnum} nextPartNumber + * @default '0' + */ +InlineObject4.prototype['nextPartNumber'] = '0'; + +/** + * Always a zero in string form, despite how many parts uploaded. + * @member {module:model/InlineObject4.MaxPartsEnum} maxParts + * @default '0' + */ +InlineObject4.prototype['maxParts'] = '0'; + + + + + +/** + * Allowed values for the nextPartNumber property. + * @enum {String} + * @readonly + */ +InlineObject4['NextPartNumberEnum'] = { + + /** + * value: "0" + * @const + */ + "0": "0" +}; + + +/** + * Allowed values for the maxParts property. + * @enum {String} + * @readonly + */ +InlineObject4['MaxPartsEnum'] = { + + /** + * value: "0" + * @const + */ + "0": "0" +}; + + + +export default InlineObject4; + diff --git a/src/model/InlineResponse200.js b/src/model/InlineResponse200.js new file mode 100644 index 0000000..e3d2ec8 --- /dev/null +++ b/src/model/InlineResponse200.js @@ -0,0 +1,83 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +import ApiClient from '../ApiClient'; + +/** + * The InlineResponse200 model module. + * @module model/InlineResponse200 + * @version 1.0.0 + */ +class InlineResponse200 { + /** + * Constructs a new InlineResponse200. + * @alias module:model/InlineResponse200 + * @param ok {Boolean} + * @param token {String} + */ + constructor(ok, token) { + + InlineResponse200.initialize(this, ok, token); + } + + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + static initialize(obj, ok, token) { + obj['ok'] = ok; + obj['token'] = token; + } + + /** + * Constructs a InlineResponse200 from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/InlineResponse200} obj Optional instance to populate. + * @return {module:model/InlineResponse200} The populated InlineResponse200 instance. + */ + static constructFromObject(data, obj) { + if (data) { + obj = obj || new InlineResponse200(); + + if (data.hasOwnProperty('ok')) { + obj['ok'] = ApiClient.convertToType(data['ok'], 'Boolean'); + } + if (data.hasOwnProperty('token')) { + obj['token'] = ApiClient.convertToType(data['token'], 'String'); + } + } + return obj; + } + + +} + +/** + * @member {Boolean} ok + */ +InlineResponse200.prototype['ok'] = undefined; + +/** + * @member {String} token + */ +InlineResponse200.prototype['token'] = undefined; + + + + + + +export default InlineResponse200; + diff --git a/src/model/InlineResponse2001.js b/src/model/InlineResponse2001.js new file mode 100644 index 0000000..c75ec2f --- /dev/null +++ b/src/model/InlineResponse2001.js @@ -0,0 +1,73 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +import ApiClient from '../ApiClient'; + +/** + * The InlineResponse2001 model module. + * @module model/InlineResponse2001 + * @version 1.0.0 + */ +class InlineResponse2001 { + /** + * Constructs a new InlineResponse2001. + * @alias module:model/InlineResponse2001 + * @param verified {Boolean} + */ + constructor(verified) { + + InlineResponse2001.initialize(this, verified); + } + + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + static initialize(obj, verified) { + obj['verified'] = verified; + } + + /** + * Constructs a InlineResponse2001 from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/InlineResponse2001} obj Optional instance to populate. + * @return {module:model/InlineResponse2001} The populated InlineResponse2001 instance. + */ + static constructFromObject(data, obj) { + if (data) { + obj = obj || new InlineResponse2001(); + + if (data.hasOwnProperty('verified')) { + obj['verified'] = ApiClient.convertToType(data['verified'], 'Boolean'); + } + } + return obj; + } + + +} + +/** + * @member {Boolean} verified + */ +InlineResponse2001.prototype['verified'] = undefined; + + + + + + +export default InlineResponse2001; + diff --git a/src/model/InlineResponse2002.js b/src/model/InlineResponse2002.js new file mode 100644 index 0000000..a7c9d67 --- /dev/null +++ b/src/model/InlineResponse2002.js @@ -0,0 +1,93 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +import ApiClient from '../ApiClient'; + +/** + * The InlineResponse2002 model module. + * @module model/InlineResponse2002 + * @version 1.0.0 + */ +class InlineResponse2002 { + /** + * Constructs a new InlineResponse2002. + * @alias module:model/InlineResponse2002 + * @param ok {Boolean} + * @param serverName {String} + * @param buildVersionTag {String} + */ + constructor(ok, serverName, buildVersionTag) { + + InlineResponse2002.initialize(this, ok, serverName, buildVersionTag); + } + + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + static initialize(obj, ok, serverName, buildVersionTag) { + obj['ok'] = ok; + obj['serverName'] = serverName; + obj['buildVersionTag'] = buildVersionTag; + } + + /** + * Constructs a InlineResponse2002 from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/InlineResponse2002} obj Optional instance to populate. + * @return {module:model/InlineResponse2002} The populated InlineResponse2002 instance. + */ + static constructFromObject(data, obj) { + if (data) { + obj = obj || new InlineResponse2002(); + + if (data.hasOwnProperty('ok')) { + obj['ok'] = ApiClient.convertToType(data['ok'], 'Boolean'); + } + if (data.hasOwnProperty('serverName')) { + obj['serverName'] = ApiClient.convertToType(data['serverName'], 'String'); + } + if (data.hasOwnProperty('buildVersionTag')) { + obj['buildVersionTag'] = ApiClient.convertToType(data['buildVersionTag'], 'String'); + } + } + return obj; + } + + +} + +/** + * @member {Boolean} ok + */ +InlineResponse2002.prototype['ok'] = undefined; + +/** + * @member {String} serverName + */ +InlineResponse2002.prototype['serverName'] = undefined; + +/** + * @member {String} buildVersionTag + */ +InlineResponse2002.prototype['buildVersionTag'] = undefined; + + + + + + +export default InlineResponse2002; + diff --git a/src/model/InlineResponse2003.js b/src/model/InlineResponse2003.js new file mode 100644 index 0000000..dfadc92 --- /dev/null +++ b/src/model/InlineResponse2003.js @@ -0,0 +1,96 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +import ApiClient from '../ApiClient'; + +/** + * The InlineResponse2003 model module. + * @module model/InlineResponse2003 + * @version 1.0.0 + */ +class InlineResponse2003 { + /** + * Constructs a new InlineResponse2003. + * @alias module:model/InlineResponse2003 + * @param isFriend {Boolean} + * @param outgoingRequest {Boolean} + * @param incomingRequest {Boolean} + */ + constructor(isFriend, outgoingRequest, incomingRequest) { + + InlineResponse2003.initialize(this, isFriend, outgoingRequest, incomingRequest); + } + + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + static initialize(obj, isFriend, outgoingRequest, incomingRequest) { + obj['isFriend'] = isFriend || false; + obj['outgoingRequest'] = outgoingRequest || false; + obj['incomingRequest'] = incomingRequest || false; + } + + /** + * Constructs a InlineResponse2003 from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/InlineResponse2003} obj Optional instance to populate. + * @return {module:model/InlineResponse2003} The populated InlineResponse2003 instance. + */ + static constructFromObject(data, obj) { + if (data) { + obj = obj || new InlineResponse2003(); + + if (data.hasOwnProperty('isFriend')) { + obj['isFriend'] = ApiClient.convertToType(data['isFriend'], 'Boolean'); + } + if (data.hasOwnProperty('outgoingRequest')) { + obj['outgoingRequest'] = ApiClient.convertToType(data['outgoingRequest'], 'Boolean'); + } + if (data.hasOwnProperty('incomingRequest')) { + obj['incomingRequest'] = ApiClient.convertToType(data['incomingRequest'], 'Boolean'); + } + } + return obj; + } + + +} + +/** + * @member {Boolean} isFriend + * @default false + */ +InlineResponse2003.prototype['isFriend'] = false; + +/** + * @member {Boolean} outgoingRequest + * @default false + */ +InlineResponse2003.prototype['outgoingRequest'] = false; + +/** + * @member {Boolean} incomingRequest + * @default false + */ +InlineResponse2003.prototype['incomingRequest'] = false; + + + + + + +export default InlineResponse2003; + diff --git a/src/model/InlineResponse2004.js b/src/model/InlineResponse2004.js new file mode 100644 index 0000000..440b06f --- /dev/null +++ b/src/model/InlineResponse2004.js @@ -0,0 +1,124 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +import ApiClient from '../ApiClient'; + +/** + * The InlineResponse2004 model module. + * @module model/InlineResponse2004 + * @version 1.0.0 + */ +class InlineResponse2004 { + /** + * Constructs a new InlineResponse2004. + * @alias module:model/InlineResponse2004 + * @param uploadId {String} + * @param fileName {String} + * @param nextPartNumber {Number} + * @param maxParts {Number} + * @param parts {Array.} + * @param etags {Array.} Unknown + */ + constructor(uploadId, fileName, nextPartNumber, maxParts, parts, etags) { + + InlineResponse2004.initialize(this, uploadId, fileName, nextPartNumber, maxParts, parts, etags); + } + + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + static initialize(obj, uploadId, fileName, nextPartNumber, maxParts, parts, etags) { + obj['uploadId'] = uploadId; + obj['fileName'] = fileName; + obj['nextPartNumber'] = nextPartNumber; + obj['maxParts'] = maxParts; + obj['parts'] = parts; + obj['etags'] = etags; + } + + /** + * Constructs a InlineResponse2004 from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/InlineResponse2004} obj Optional instance to populate. + * @return {module:model/InlineResponse2004} The populated InlineResponse2004 instance. + */ + static constructFromObject(data, obj) { + if (data) { + obj = obj || new InlineResponse2004(); + + if (data.hasOwnProperty('uploadId')) { + obj['uploadId'] = ApiClient.convertToType(data['uploadId'], 'String'); + } + if (data.hasOwnProperty('fileName')) { + obj['fileName'] = ApiClient.convertToType(data['fileName'], 'String'); + } + if (data.hasOwnProperty('nextPartNumber')) { + obj['nextPartNumber'] = ApiClient.convertToType(data['nextPartNumber'], 'Number'); + } + if (data.hasOwnProperty('maxParts')) { + obj['maxParts'] = ApiClient.convertToType(data['maxParts'], 'Number'); + } + if (data.hasOwnProperty('parts')) { + obj['parts'] = ApiClient.convertToType(data['parts'], [Object]); + } + if (data.hasOwnProperty('etags')) { + obj['etags'] = ApiClient.convertToType(data['etags'], [Object]); + } + } + return obj; + } + + +} + +/** + * @member {String} uploadId + */ +InlineResponse2004.prototype['uploadId'] = undefined; + +/** + * @member {String} fileName + */ +InlineResponse2004.prototype['fileName'] = undefined; + +/** + * @member {Number} nextPartNumber + */ +InlineResponse2004.prototype['nextPartNumber'] = undefined; + +/** + * @member {Number} maxParts + */ +InlineResponse2004.prototype['maxParts'] = undefined; + +/** + * @member {Array.} parts + */ +InlineResponse2004.prototype['parts'] = undefined; + +/** + * Unknown + * @member {Array.} etags + */ +InlineResponse2004.prototype['etags'] = undefined; + + + + + + +export default InlineResponse2004; + diff --git a/src/model/InlineResponse2005.js b/src/model/InlineResponse2005.js new file mode 100644 index 0000000..6641f90 --- /dev/null +++ b/src/model/InlineResponse2005.js @@ -0,0 +1,73 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +import ApiClient from '../ApiClient'; + +/** + * The InlineResponse2005 model module. + * @module model/InlineResponse2005 + * @version 1.0.0 + */ +class InlineResponse2005 { + /** + * Constructs a new InlineResponse2005. + * @alias module:model/InlineResponse2005 + * @param url {String} + */ + constructor(url) { + + InlineResponse2005.initialize(this, url); + } + + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + static initialize(obj, url) { + obj['url'] = url; + } + + /** + * Constructs a InlineResponse2005 from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/InlineResponse2005} obj Optional instance to populate. + * @return {module:model/InlineResponse2005} The populated InlineResponse2005 instance. + */ + static constructFromObject(data, obj) { + if (data) { + obj = obj || new InlineResponse2005(); + + if (data.hasOwnProperty('url')) { + obj['url'] = ApiClient.convertToType(data['url'], 'String'); + } + } + return obj; + } + + +} + +/** + * @member {String} url + */ +InlineResponse2005.prototype['url'] = undefined; + + + + + + +export default InlineResponse2005; + diff --git a/src/model/InlineResponse401.js b/src/model/InlineResponse401.js new file mode 100644 index 0000000..234bed4 --- /dev/null +++ b/src/model/InlineResponse401.js @@ -0,0 +1,74 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +import ApiClient from '../ApiClient'; +import Error from './Error'; + +/** + * The InlineResponse401 model module. + * @module model/InlineResponse401 + * @version 1.0.0 + */ +class InlineResponse401 { + /** + * Constructs a new InlineResponse401. + * @alias module:model/InlineResponse401 + * @param error {module:model/Error} + */ + constructor(error) { + + InlineResponse401.initialize(this, error); + } + + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + static initialize(obj, error) { + obj['error'] = error; + } + + /** + * Constructs a InlineResponse401 from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/InlineResponse401} obj Optional instance to populate. + * @return {module:model/InlineResponse401} The populated InlineResponse401 instance. + */ + static constructFromObject(data, obj) { + if (data) { + obj = obj || new InlineResponse401(); + + if (data.hasOwnProperty('error')) { + obj['error'] = Error.constructFromObject(data['error']); + } + } + return obj; + } + + +} + +/** + * @member {module:model/Error} error + */ +InlineResponse401.prototype['error'] = undefined; + + + + + + +export default InlineResponse401; + diff --git a/src/model/LimitedUser.js b/src/model/LimitedUser.js new file mode 100644 index 0000000..9df309d --- /dev/null +++ b/src/model/LimitedUser.js @@ -0,0 +1,224 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +import ApiClient from '../ApiClient'; +import DeveloperType from './DeveloperType'; +import UserStatus from './UserStatus'; + +/** + * The LimitedUser model module. + * @module model/LimitedUser + * @version 1.0.0 + */ +class LimitedUser { + /** + * Constructs a new LimitedUser. + * @alias module:model/LimitedUser + * @param id {String} + * @param username {String} + * @param displayName {String} + * @param userIcon {String} + * @param profilePicOverride {String} + * @param statusDescription {String} + * @param currentAvatarImageUrl {String} + * @param currentAvatarThumbnailImageUrl {String} + * @param fallbackAvatar {String} + * @param developerType {module:model/DeveloperType} + * @param lastPlatform {String} + * @param status {module:model/UserStatus} + * @param isFriend {Boolean} + * @param location {String} + * @param tags {Array.} Always empty + */ + constructor(id, username, displayName, userIcon, profilePicOverride, statusDescription, currentAvatarImageUrl, currentAvatarThumbnailImageUrl, fallbackAvatar, developerType, lastPlatform, status, isFriend, location, tags) { + + LimitedUser.initialize(this, id, username, displayName, userIcon, profilePicOverride, statusDescription, currentAvatarImageUrl, currentAvatarThumbnailImageUrl, fallbackAvatar, developerType, lastPlatform, status, isFriend, location, tags); + } + + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + static initialize(obj, id, username, displayName, userIcon, profilePicOverride, statusDescription, currentAvatarImageUrl, currentAvatarThumbnailImageUrl, fallbackAvatar, developerType, lastPlatform, status, isFriend, location, tags) { + obj['id'] = id; + obj['username'] = username; + obj['displayName'] = displayName; + obj['userIcon'] = userIcon; + obj['profilePicOverride'] = profilePicOverride; + obj['statusDescription'] = statusDescription; + obj['currentAvatarImageUrl'] = currentAvatarImageUrl; + obj['currentAvatarThumbnailImageUrl'] = currentAvatarThumbnailImageUrl; + obj['fallbackAvatar'] = fallbackAvatar; + obj['developerType'] = developerType; + obj['last_platform'] = lastPlatform; + obj['status'] = status; + obj['isFriend'] = isFriend; + obj['location'] = location; + obj['tags'] = tags; + } + + /** + * Constructs a LimitedUser from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/LimitedUser} obj Optional instance to populate. + * @return {module:model/LimitedUser} The populated LimitedUser instance. + */ + static constructFromObject(data, obj) { + if (data) { + obj = obj || new LimitedUser(); + + if (data.hasOwnProperty('id')) { + obj['id'] = ApiClient.convertToType(data['id'], 'String'); + } + if (data.hasOwnProperty('username')) { + obj['username'] = ApiClient.convertToType(data['username'], 'String'); + } + if (data.hasOwnProperty('displayName')) { + obj['displayName'] = ApiClient.convertToType(data['displayName'], 'String'); + } + if (data.hasOwnProperty('bio')) { + obj['bio'] = ApiClient.convertToType(data['bio'], 'String'); + } + if (data.hasOwnProperty('userIcon')) { + obj['userIcon'] = ApiClient.convertToType(data['userIcon'], 'String'); + } + if (data.hasOwnProperty('profilePicOverride')) { + obj['profilePicOverride'] = ApiClient.convertToType(data['profilePicOverride'], 'String'); + } + if (data.hasOwnProperty('statusDescription')) { + obj['statusDescription'] = ApiClient.convertToType(data['statusDescription'], 'String'); + } + if (data.hasOwnProperty('currentAvatarImageUrl')) { + obj['currentAvatarImageUrl'] = ApiClient.convertToType(data['currentAvatarImageUrl'], 'String'); + } + if (data.hasOwnProperty('currentAvatarThumbnailImageUrl')) { + obj['currentAvatarThumbnailImageUrl'] = ApiClient.convertToType(data['currentAvatarThumbnailImageUrl'], 'String'); + } + if (data.hasOwnProperty('fallbackAvatar')) { + obj['fallbackAvatar'] = ApiClient.convertToType(data['fallbackAvatar'], 'String'); + } + if (data.hasOwnProperty('developerType')) { + obj['developerType'] = DeveloperType.constructFromObject(data['developerType']); + } + if (data.hasOwnProperty('last_platform')) { + obj['last_platform'] = ApiClient.convertToType(data['last_platform'], 'String'); + } + if (data.hasOwnProperty('status')) { + obj['status'] = UserStatus.constructFromObject(data['status']); + } + if (data.hasOwnProperty('isFriend')) { + obj['isFriend'] = ApiClient.convertToType(data['isFriend'], 'Boolean'); + } + if (data.hasOwnProperty('location')) { + obj['location'] = ApiClient.convertToType(data['location'], 'String'); + } + if (data.hasOwnProperty('tags')) { + obj['tags'] = ApiClient.convertToType(data['tags'], ['String']); + } + } + return obj; + } + + +} + +/** + * @member {String} id + */ +LimitedUser.prototype['id'] = undefined; + +/** + * @member {String} username + */ +LimitedUser.prototype['username'] = undefined; + +/** + * @member {String} displayName + */ +LimitedUser.prototype['displayName'] = undefined; + +/** + * @member {String} bio + */ +LimitedUser.prototype['bio'] = undefined; + +/** + * @member {String} userIcon + */ +LimitedUser.prototype['userIcon'] = undefined; + +/** + * @member {String} profilePicOverride + */ +LimitedUser.prototype['profilePicOverride'] = undefined; + +/** + * @member {String} statusDescription + */ +LimitedUser.prototype['statusDescription'] = undefined; + +/** + * @member {String} currentAvatarImageUrl + */ +LimitedUser.prototype['currentAvatarImageUrl'] = undefined; + +/** + * @member {String} currentAvatarThumbnailImageUrl + */ +LimitedUser.prototype['currentAvatarThumbnailImageUrl'] = undefined; + +/** + * @member {String} fallbackAvatar + */ +LimitedUser.prototype['fallbackAvatar'] = undefined; + +/** + * @member {module:model/DeveloperType} developerType + */ +LimitedUser.prototype['developerType'] = undefined; + +/** + * @member {String} last_platform + */ +LimitedUser.prototype['last_platform'] = undefined; + +/** + * @member {module:model/UserStatus} status + */ +LimitedUser.prototype['status'] = undefined; + +/** + * @member {Boolean} isFriend + */ +LimitedUser.prototype['isFriend'] = undefined; + +/** + * @member {String} location + */ +LimitedUser.prototype['location'] = undefined; + +/** + * Always empty + * @member {Array.} tags + */ +LimitedUser.prototype['tags'] = undefined; + + + + + + +export default LimitedUser; + diff --git a/src/model/LimitedWorld.js b/src/model/LimitedWorld.js new file mode 100644 index 0000000..99ba944 --- /dev/null +++ b/src/model/LimitedWorld.js @@ -0,0 +1,246 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +import ApiClient from '../ApiClient'; +import ReleaseStatus from './ReleaseStatus'; + +/** + * The LimitedWorld model module. + * @module model/LimitedWorld + * @version 1.0.0 + */ +class LimitedWorld { + /** + * Constructs a new LimitedWorld. + * @alias module:model/LimitedWorld + * @param authorId {String} + * @param authorName {String} + * @param capacity {Number} + * @param favorites {Number} + * @param heat {Number} + * @param id {String} + * @param imageUrl {String} + * @param name {String} + * @param organization {String} + * @param popularity {Number} + * @param publicationDate {String} + * @param releaseStatus {module:model/ReleaseStatus} + * @param tags {Array.} + * @param thumbnailImageUrl {String} + * @param unityPackages {Array.} + */ + constructor(authorId, authorName, capacity, favorites, heat, id, imageUrl, name, organization, popularity, publicationDate, releaseStatus, tags, thumbnailImageUrl, unityPackages) { + + LimitedWorld.initialize(this, authorId, authorName, capacity, favorites, heat, id, imageUrl, name, organization, popularity, publicationDate, releaseStatus, tags, thumbnailImageUrl, unityPackages); + } + + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + static initialize(obj, authorId, authorName, capacity, favorites, heat, id, imageUrl, name, organization, popularity, publicationDate, releaseStatus, tags, thumbnailImageUrl, unityPackages) { + obj['authorId'] = authorId; + obj['authorName'] = authorName; + obj['capacity'] = capacity; + obj['favorites'] = favorites; + obj['heat'] = heat; + obj['id'] = id; + obj['imageUrl'] = imageUrl; + obj['name'] = name; + obj['organization'] = organization; + obj['popularity'] = popularity; + obj['publicationDate'] = publicationDate; + obj['releaseStatus'] = releaseStatus; + obj['tags'] = tags; + obj['thumbnailImageUrl'] = thumbnailImageUrl; + obj['unityPackages'] = unityPackages; + } + + /** + * Constructs a LimitedWorld from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/LimitedWorld} obj Optional instance to populate. + * @return {module:model/LimitedWorld} The populated LimitedWorld instance. + */ + static constructFromObject(data, obj) { + if (data) { + obj = obj || new LimitedWorld(); + + if (data.hasOwnProperty('authorId')) { + obj['authorId'] = ApiClient.convertToType(data['authorId'], 'String'); + } + if (data.hasOwnProperty('authorName')) { + obj['authorName'] = ApiClient.convertToType(data['authorName'], 'String'); + } + if (data.hasOwnProperty('capacity')) { + obj['capacity'] = ApiClient.convertToType(data['capacity'], 'Number'); + } + if (data.hasOwnProperty('created_at')) { + obj['created_at'] = ApiClient.convertToType(data['created_at'], 'Date'); + } + if (data.hasOwnProperty('favorites')) { + obj['favorites'] = ApiClient.convertToType(data['favorites'], 'Number'); + } + if (data.hasOwnProperty('heat')) { + obj['heat'] = ApiClient.convertToType(data['heat'], 'Number'); + } + if (data.hasOwnProperty('id')) { + obj['id'] = ApiClient.convertToType(data['id'], 'String'); + } + if (data.hasOwnProperty('imageUrl')) { + obj['imageUrl'] = ApiClient.convertToType(data['imageUrl'], 'String'); + } + if (data.hasOwnProperty('labsPublicationDate')) { + obj['labsPublicationDate'] = ApiClient.convertToType(data['labsPublicationDate'], 'String'); + } + if (data.hasOwnProperty('name')) { + obj['name'] = ApiClient.convertToType(data['name'], 'String'); + } + if (data.hasOwnProperty('occupants')) { + obj['occupants'] = ApiClient.convertToType(data['occupants'], 'Number'); + } + if (data.hasOwnProperty('organization')) { + obj['organization'] = ApiClient.convertToType(data['organization'], 'String'); + } + if (data.hasOwnProperty('popularity')) { + obj['popularity'] = ApiClient.convertToType(data['popularity'], 'Number'); + } + if (data.hasOwnProperty('publicationDate')) { + obj['publicationDate'] = ApiClient.convertToType(data['publicationDate'], 'String'); + } + if (data.hasOwnProperty('releaseStatus')) { + obj['releaseStatus'] = ReleaseStatus.constructFromObject(data['releaseStatus']); + } + if (data.hasOwnProperty('tags')) { + obj['tags'] = ApiClient.convertToType(data['tags'], ['String']); + } + if (data.hasOwnProperty('thumbnailImageUrl')) { + obj['thumbnailImageUrl'] = ApiClient.convertToType(data['thumbnailImageUrl'], 'String'); + } + if (data.hasOwnProperty('unityPackages')) { + obj['unityPackages'] = ApiClient.convertToType(data['unityPackages'], [Object]); + } + if (data.hasOwnProperty('updated_at')) { + obj['updated_at'] = ApiClient.convertToType(data['updated_at'], 'Date'); + } + } + return obj; + } + + +} + +/** + * @member {String} authorId + */ +LimitedWorld.prototype['authorId'] = undefined; + +/** + * @member {String} authorName + */ +LimitedWorld.prototype['authorName'] = undefined; + +/** + * @member {Number} capacity + */ +LimitedWorld.prototype['capacity'] = undefined; + +/** + * @member {Date} created_at + */ +LimitedWorld.prototype['created_at'] = undefined; + +/** + * @member {Number} favorites + */ +LimitedWorld.prototype['favorites'] = undefined; + +/** + * @member {Number} heat + */ +LimitedWorld.prototype['heat'] = undefined; + +/** + * @member {String} id + */ +LimitedWorld.prototype['id'] = undefined; + +/** + * @member {String} imageUrl + */ +LimitedWorld.prototype['imageUrl'] = undefined; + +/** + * @member {String} labsPublicationDate + */ +LimitedWorld.prototype['labsPublicationDate'] = undefined; + +/** + * @member {String} name + */ +LimitedWorld.prototype['name'] = undefined; + +/** + * @member {Number} occupants + */ +LimitedWorld.prototype['occupants'] = undefined; + +/** + * @member {String} organization + */ +LimitedWorld.prototype['organization'] = undefined; + +/** + * @member {Number} popularity + */ +LimitedWorld.prototype['popularity'] = undefined; + +/** + * @member {String} publicationDate + */ +LimitedWorld.prototype['publicationDate'] = undefined; + +/** + * @member {module:model/ReleaseStatus} releaseStatus + */ +LimitedWorld.prototype['releaseStatus'] = undefined; + +/** + * @member {Array.} tags + */ +LimitedWorld.prototype['tags'] = undefined; + +/** + * @member {String} thumbnailImageUrl + */ +LimitedWorld.prototype['thumbnailImageUrl'] = undefined; + +/** + * @member {Array.} unityPackages + */ +LimitedWorld.prototype['unityPackages'] = undefined; + +/** + * @member {Date} updated_at + */ +LimitedWorld.prototype['updated_at'] = undefined; + + + + + + +export default LimitedWorld; + diff --git a/src/model/MIMEType.js b/src/model/MIMEType.js new file mode 100644 index 0000000..560ab65 --- /dev/null +++ b/src/model/MIMEType.js @@ -0,0 +1,130 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +import ApiClient from '../ApiClient'; +/** +* Enum class MIMEType. +* @enum {} +* @readonly +*/ +export default class MIMEType { + + /** + * value: "image⁄jpeg" + * @const + */ + "image⁄jpeg" = "image⁄jpeg"; + + + /** + * value: "image⁄jpg" + * @const + */ + "image⁄jpg" = "image⁄jpg"; + + + /** + * value: "image⁄png" + * @const + */ + "image⁄png" = "image⁄png"; + + + /** + * value: "image⁄webp" + * @const + */ + "image⁄webp" = "image⁄webp"; + + + /** + * value: "image⁄gif" + * @const + */ + "image⁄gif" = "image⁄gif"; + + + /** + * value: "image⁄bmp" + * @const + */ + "image⁄bmp" = "image⁄bmp"; + + + /** + * value: "image⁄svg+xml" + * @const + */ + "image⁄svg+xml" = "image⁄svg+xml"; + + + /** + * value: "image⁄tiff" + * @const + */ + "image⁄tiff" = "image⁄tiff"; + + + /** + * value: "application⁄x-avatar" + * @const + */ + "application⁄x-avatar" = "application⁄x-avatar"; + + + /** + * value: "application⁄x-world" + * @const + */ + "application⁄x-world" = "application⁄x-world"; + + + /** + * value: "application⁄gzip" + * @const + */ + "application⁄gzip" = "application⁄gzip"; + + + /** + * value: "application/x-rsync-signature" + * @const + */ + "application/x-rsync-signature" = "application/x-rsync-signature"; + + + /** + * value: "application/x-rsync-delta" + * @const + */ + "application/x-rsync-delta" = "application/x-rsync-delta"; + + + /** + * value: "application/octet-stream" + * @const + */ + "application/octet-stream" = "application/octet-stream"; + + + + /** + * Returns a MIMEType enum value from a Javascript object name. + * @param {Object} data The plain JavaScript object containing the name of the enum value. + * @return {module:model/MIMEType} The enum MIMEType value. + */ + static constructFromObject(object) { + return object; + } +} + diff --git a/src/model/Notification.js b/src/model/Notification.js new file mode 100644 index 0000000..4bd979e --- /dev/null +++ b/src/model/Notification.js @@ -0,0 +1,149 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +import ApiClient from '../ApiClient'; +import NotificationType from './NotificationType'; + +/** + * The Notification model module. + * @module model/Notification + * @version 1.0.0 + */ +class Notification { + /** + * Constructs a new Notification. + * + * @alias module:model/Notification + * @param id {String} + * @param senderUserId {String} + * @param senderUsername {String} + * @param type {module:model/NotificationType} + * @param message {String} + * @param details {String} **NOTICE:** This is not a JSON object, this is a json **encoded** object, meaning you have to json-de-encode to get the NotificationDetail object depending on the NotificationType. + * @param seen {Boolean} + * @param createdAt {Date} + */ + constructor(id, senderUserId, senderUsername, type, message, details, seen, createdAt) { + + Notification.initialize(this, id, senderUserId, senderUsername, type, message, details, seen, createdAt); + } + + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + static initialize(obj, id, senderUserId, senderUsername, type, message, details, seen, createdAt) { + obj['id'] = id; + obj['senderUserId'] = senderUserId; + obj['senderUsername'] = senderUsername; + obj['type'] = type; + obj['message'] = message; + obj['details'] = details || '{}'; + obj['seen'] = seen || false; + obj['created_at'] = createdAt; + } + + /** + * Constructs a Notification from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/Notification} obj Optional instance to populate. + * @return {module:model/Notification} The populated Notification instance. + */ + static constructFromObject(data, obj) { + if (data) { + obj = obj || new Notification(); + + if (data.hasOwnProperty('id')) { + obj['id'] = ApiClient.convertToType(data['id'], 'String'); + } + if (data.hasOwnProperty('senderUserId')) { + obj['senderUserId'] = ApiClient.convertToType(data['senderUserId'], 'String'); + } + if (data.hasOwnProperty('senderUsername')) { + obj['senderUsername'] = ApiClient.convertToType(data['senderUsername'], 'String'); + } + if (data.hasOwnProperty('type')) { + obj['type'] = NotificationType.constructFromObject(data['type']); + } + if (data.hasOwnProperty('message')) { + obj['message'] = ApiClient.convertToType(data['message'], 'String'); + } + if (data.hasOwnProperty('details')) { + obj['details'] = ApiClient.convertToType(data['details'], 'String'); + } + if (data.hasOwnProperty('seen')) { + obj['seen'] = ApiClient.convertToType(data['seen'], 'Boolean'); + } + if (data.hasOwnProperty('created_at')) { + obj['created_at'] = ApiClient.convertToType(data['created_at'], 'Date'); + } + } + return obj; + } + + +} + +/** + * @member {String} id + */ +Notification.prototype['id'] = undefined; + +/** + * @member {String} senderUserId + */ +Notification.prototype['senderUserId'] = undefined; + +/** + * @member {String} senderUsername + */ +Notification.prototype['senderUsername'] = undefined; + +/** + * @member {module:model/NotificationType} type + */ +Notification.prototype['type'] = undefined; + +/** + * + * @member {String} message + */ +Notification.prototype['message'] = undefined; + +/** + * **NOTICE:** This is not a JSON object, this is a json **encoded** object, meaning you have to json-de-encode to get the NotificationDetail object depending on the NotificationType. + * @member {String} details + * @default '{}' + */ +Notification.prototype['details'] = '{}'; + +/** + * @member {Boolean} seen + * @default false + */ +Notification.prototype['seen'] = false; + +/** + * @member {Date} created_at + */ +Notification.prototype['created_at'] = undefined; + + + + + + +export default Notification; + diff --git a/src/model/NotificationType.js b/src/model/NotificationType.js new file mode 100644 index 0000000..249c83a --- /dev/null +++ b/src/model/NotificationType.js @@ -0,0 +1,81 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +import ApiClient from '../ApiClient'; +/** +* Enum class NotificationType. +* @enum {} +* @readonly +*/ +export default class NotificationType { + + /** + * value: "all" + * @const + */ + "all" = "all"; + + + /** + * value: "broadcast" + * @const + */ + "broadcast" = "broadcast"; + + + /** + * value: "friendRequest" + * @const + */ + "friendRequest" = "friendRequest"; + + + /** + * value: "invite" + * @const + */ + "invite" = "invite"; + + + /** + * value: "message" + * @const + */ + "message" = "message"; + + + /** + * value: "RequestInvite" + * @const + */ + "RequestInvite" = "RequestInvite"; + + + /** + * value: "votetokick" + * @const + */ + "votetokick" = "votetokick"; + + + + /** + * Returns a NotificationType enum value from a Javascript object name. + * @param {Object} data The plain JavaScript object containing the name of the enum value. + * @return {module:model/NotificationType} The enum NotificationType value. + */ + static constructFromObject(object) { + return object; + } +} + diff --git a/src/model/ReleaseStatus.js b/src/model/ReleaseStatus.js new file mode 100644 index 0000000..4c1083f --- /dev/null +++ b/src/model/ReleaseStatus.js @@ -0,0 +1,53 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +import ApiClient from '../ApiClient'; +/** +* Enum class ReleaseStatus. +* @enum {} +* @readonly +*/ +export default class ReleaseStatus { + + /** + * value: "public" + * @const + */ + "public" = "public"; + + + /** + * value: "private" + * @const + */ + "private" = "private"; + + + /** + * value: "hidden" + * @const + */ + "hidden" = "hidden"; + + + + /** + * Returns a ReleaseStatus enum value from a Javascript object name. + * @param {Object} data The plain JavaScript object containing the name of the enum value. + * @return {module:model/ReleaseStatus} The enum ReleaseStatus value. + */ + static constructFromObject(object) { + return object; + } +} + diff --git a/src/model/Response.js b/src/model/Response.js new file mode 100644 index 0000000..6590779 --- /dev/null +++ b/src/model/Response.js @@ -0,0 +1,83 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +import ApiClient from '../ApiClient'; + +/** + * The Response model module. + * @module model/Response + * @version 1.0.0 + */ +class Response { + /** + * Constructs a new Response. + * @alias module:model/Response + * @param message {String} + * @param statusCode {Number} + */ + constructor(message, statusCode) { + + Response.initialize(this, message, statusCode); + } + + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + static initialize(obj, message, statusCode) { + obj['message'] = message; + obj['status_code'] = statusCode; + } + + /** + * Constructs a Response from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/Response} obj Optional instance to populate. + * @return {module:model/Response} The populated Response instance. + */ + static constructFromObject(data, obj) { + if (data) { + obj = obj || new Response(); + + if (data.hasOwnProperty('message')) { + obj['message'] = ApiClient.convertToType(data['message'], 'String'); + } + if (data.hasOwnProperty('status_code')) { + obj['status_code'] = ApiClient.convertToType(data['status_code'], 'Number'); + } + } + return obj; + } + + +} + +/** + * @member {String} message + */ +Response.prototype['message'] = undefined; + +/** + * @member {Number} status_code + */ +Response.prototype['status_code'] = undefined; + + + + + + +export default Response; + diff --git a/src/model/Success.js b/src/model/Success.js new file mode 100644 index 0000000..0c990d1 --- /dev/null +++ b/src/model/Success.js @@ -0,0 +1,72 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +import ApiClient from '../ApiClient'; +import Response from './Response'; + +/** + * The Success model module. + * @module model/Success + * @version 1.0.0 + */ +class Success { + /** + * Constructs a new Success. + * @alias module:model/Success + */ + constructor() { + + Success.initialize(this); + } + + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + static initialize(obj) { + } + + /** + * Constructs a Success from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/Success} obj Optional instance to populate. + * @return {module:model/Success} The populated Success instance. + */ + static constructFromObject(data, obj) { + if (data) { + obj = obj || new Success(); + + if (data.hasOwnProperty('success')) { + obj['success'] = Response.constructFromObject(data['success']); + } + } + return obj; + } + + +} + +/** + * @member {module:model/Response} success + */ +Success.prototype['success'] = undefined; + + + + + + +export default Success; + diff --git a/src/model/User.js b/src/model/User.js new file mode 100644 index 0000000..71fd633 --- /dev/null +++ b/src/model/User.js @@ -0,0 +1,300 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +import ApiClient from '../ApiClient'; +import DeveloperType from './DeveloperType'; +import UserState from './UserState'; +import UserStatus from './UserStatus'; + +/** + * The User model module. + * @module model/User + * @version 1.0.0 + */ +class User { + /** + * Constructs a new User. + * @alias module:model/User + * @param id {String} + * @param username {String} + * @param displayName {String} + * @param userIcon {String} + * @param bio {String} + * @param bioLinks {Array.} + * @param profilePicOverride {String} + * @param statusDescription {String} + * @param currentAvatarImageUrl {String} + * @param currentAvatarThumbnailImageUrl {String} + * @param fallbackAvatar {String} + * @param state {module:model/UserState} + * @param tags {Array.} + * @param developerType {module:model/DeveloperType} + * @param lastLogin {Date} + * @param lastPlatform {String} + * @param allowAvatarCopying {Boolean} + * @param status {module:model/UserStatus} + * @param dateJoined {Date} + * @param isFriend {Boolean} + * @param friendKey {String} + */ + constructor(id, username, displayName, userIcon, bio, bioLinks, profilePicOverride, statusDescription, currentAvatarImageUrl, currentAvatarThumbnailImageUrl, fallbackAvatar, state, tags, developerType, lastLogin, lastPlatform, allowAvatarCopying, status, dateJoined, isFriend, friendKey) { + + User.initialize(this, id, username, displayName, userIcon, bio, bioLinks, profilePicOverride, statusDescription, currentAvatarImageUrl, currentAvatarThumbnailImageUrl, fallbackAvatar, state, tags, developerType, lastLogin, lastPlatform, allowAvatarCopying, status, dateJoined, isFriend, friendKey); + } + + /** + * Initializes the fields of this object. + * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). + * Only for internal use. + */ + static initialize(obj, id, username, displayName, userIcon, bio, bioLinks, profilePicOverride, statusDescription, currentAvatarImageUrl, currentAvatarThumbnailImageUrl, fallbackAvatar, state, tags, developerType, lastLogin, lastPlatform, allowAvatarCopying, status, dateJoined, isFriend, friendKey) { + obj['id'] = id; + obj['username'] = username; + obj['displayName'] = displayName; + obj['userIcon'] = userIcon; + obj['bio'] = bio; + obj['bioLinks'] = bioLinks; + obj['profilePicOverride'] = profilePicOverride; + obj['statusDescription'] = statusDescription; + obj['currentAvatarImageUrl'] = currentAvatarImageUrl; + obj['currentAvatarThumbnailImageUrl'] = currentAvatarThumbnailImageUrl; + obj['fallbackAvatar'] = fallbackAvatar; + obj['state'] = state; + obj['tags'] = tags; + obj['developerType'] = developerType; + obj['last_login'] = lastLogin; + obj['last_platform'] = lastPlatform; + obj['allowAvatarCopying'] = allowAvatarCopying; + obj['status'] = status; + obj['date_joined'] = dateJoined; + obj['isFriend'] = isFriend; + obj['friendKey'] = friendKey; + } + + /** + * Constructs a User from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/User} obj Optional instance to populate. + * @return {module:model/User} The populated User instance. + */ + static constructFromObject(data, obj) { + if (data) { + obj = obj || new User(); + + if (data.hasOwnProperty('id')) { + obj['id'] = ApiClient.convertToType(data['id'], 'String'); + } + if (data.hasOwnProperty('username')) { + obj['username'] = ApiClient.convertToType(data['username'], 'String'); + } + if (data.hasOwnProperty('displayName')) { + obj['displayName'] = ApiClient.convertToType(data['displayName'], 'String'); + } + if (data.hasOwnProperty('userIcon')) { + obj['userIcon'] = ApiClient.convertToType(data['userIcon'], 'String'); + } + if (data.hasOwnProperty('bio')) { + obj['bio'] = ApiClient.convertToType(data['bio'], 'String'); + } + if (data.hasOwnProperty('bioLinks')) { + obj['bioLinks'] = ApiClient.convertToType(data['bioLinks'], ['String']); + } + if (data.hasOwnProperty('profilePicOverride')) { + obj['profilePicOverride'] = ApiClient.convertToType(data['profilePicOverride'], 'String'); + } + if (data.hasOwnProperty('statusDescription')) { + obj['statusDescription'] = ApiClient.convertToType(data['statusDescription'], 'String'); + } + if (data.hasOwnProperty('currentAvatarImageUrl')) { + obj['currentAvatarImageUrl'] = ApiClient.convertToType(data['currentAvatarImageUrl'], 'String'); + } + if (data.hasOwnProperty('currentAvatarThumbnailImageUrl')) { + obj['currentAvatarThumbnailImageUrl'] = ApiClient.convertToType(data['currentAvatarThumbnailImageUrl'], 'String'); + } + if (data.hasOwnProperty('fallbackAvatar')) { + obj['fallbackAvatar'] = ApiClient.convertToType(data['fallbackAvatar'], 'String'); + } + if (data.hasOwnProperty('state')) { + obj['state'] = UserState.constructFromObject(data['state']); + } + if (data.hasOwnProperty('tags')) { + obj['tags'] = ApiClient.convertToType(data['tags'], ['String']); + } + if (data.hasOwnProperty('developerType')) { + obj['developerType'] = DeveloperType.constructFromObject(data['developerType']); + } + if (data.hasOwnProperty('last_login')) { + obj['last_login'] = ApiClient.convertToType(data['last_login'], 'Date'); + } + if (data.hasOwnProperty('last_platform')) { + obj['last_platform'] = ApiClient.convertToType(data['last_platform'], 'String'); + } + if (data.hasOwnProperty('allowAvatarCopying')) { + obj['allowAvatarCopying'] = ApiClient.convertToType(data['allowAvatarCopying'], 'Boolean'); + } + if (data.hasOwnProperty('status')) { + obj['status'] = UserStatus.constructFromObject(data['status']); + } + if (data.hasOwnProperty('date_joined')) { + obj['date_joined'] = ApiClient.convertToType(data['date_joined'], 'Date'); + } + if (data.hasOwnProperty('isFriend')) { + obj['isFriend'] = ApiClient.convertToType(data['isFriend'], 'Boolean'); + } + if (data.hasOwnProperty('friendKey')) { + obj['friendKey'] = ApiClient.convertToType(data['friendKey'], 'String'); + } + if (data.hasOwnProperty('worldId')) { + obj['worldId'] = ApiClient.convertToType(data['worldId'], 'String'); + } + if (data.hasOwnProperty('instanceId')) { + obj['instanceId'] = ApiClient.convertToType(data['instanceId'], 'String'); + } + if (data.hasOwnProperty('location')) { + obj['location'] = ApiClient.convertToType(data['location'], 'String'); + } + } + return obj; + } + + +} + +/** + * @member {String} id + */ +User.prototype['id'] = undefined; + +/** + * @member {String} username + */ +User.prototype['username'] = undefined; + +/** + * @member {String} displayName + */ +User.prototype['displayName'] = undefined; + +/** + * @member {String} userIcon + */ +User.prototype['userIcon'] = undefined; + +/** + * @member {String} bio + */ +User.prototype['bio'] = undefined; + +/** + * @member {Array.} bioLinks + */ +User.prototype['bioLinks'] = undefined; + +/** + * @member {String} profilePicOverride + */ +User.prototype['profilePicOverride'] = undefined; + +/** + * @member {String} statusDescription + */ +User.prototype['statusDescription'] = undefined; + +/** + * @member {String} currentAvatarImageUrl + */ +User.prototype['currentAvatarImageUrl'] = undefined; + +/** + * @member {String} currentAvatarThumbnailImageUrl + */ +User.prototype['currentAvatarThumbnailImageUrl'] = undefined; + +/** + * @member {String} fallbackAvatar + */ +User.prototype['fallbackAvatar'] = undefined; + +/** + * @member {module:model/UserState} state + */ +User.prototype['state'] = undefined; + +/** + * @member {Array.} tags + */ +User.prototype['tags'] = undefined; + +/** + * @member {module:model/DeveloperType} developerType + */ +User.prototype['developerType'] = undefined; + +/** + * @member {Date} last_login + */ +User.prototype['last_login'] = undefined; + +/** + * @member {String} last_platform + */ +User.prototype['last_platform'] = undefined; + +/** + * @member {Boolean} allowAvatarCopying + */ +User.prototype['allowAvatarCopying'] = undefined; + +/** + * @member {module:model/UserStatus} status + */ +User.prototype['status'] = undefined; + +/** + * @member {Date} date_joined + */ +User.prototype['date_joined'] = undefined; + +/** + * @member {Boolean} isFriend + */ +User.prototype['isFriend'] = undefined; + +/** + * @member {String} friendKey + */ +User.prototype['friendKey'] = undefined; + +/** + * @member {String} worldId + */ +User.prototype['worldId'] = undefined; + +/** + * @member {String} instanceId + */ +User.prototype['instanceId'] = undefined; + +/** + * @member {String} location + */ +User.prototype['location'] = undefined; + + + + + + +export default User; + diff --git a/src/model/UserState.js b/src/model/UserState.js new file mode 100644 index 0000000..c8c979c --- /dev/null +++ b/src/model/UserState.js @@ -0,0 +1,53 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +import ApiClient from '../ApiClient'; +/** +* Enum class UserState. +* @enum {} +* @readonly +*/ +export default class UserState { + + /** + * value: "offline" + * @const + */ + "offline" = "offline"; + + + /** + * value: "active" + * @const + */ + "active" = "active"; + + + /** + * value: "online" + * @const + */ + "online" = "online"; + + + + /** + * Returns a UserState enum value from a Javascript object name. + * @param {Object} data The plain JavaScript object containing the name of the enum value. + * @return {module:model/UserState} The enum UserState value. + */ + static constructFromObject(object) { + return object; + } +} + diff --git a/src/model/UserStatus.js b/src/model/UserStatus.js new file mode 100644 index 0000000..60ccac1 --- /dev/null +++ b/src/model/UserStatus.js @@ -0,0 +1,67 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +import ApiClient from '../ApiClient'; +/** +* Enum class UserStatus. +* @enum {} +* @readonly +*/ +export default class UserStatus { + + /** + * value: "active" + * @const + */ + "active" = "active"; + + + /** + * value: "join me" + * @const + */ + "join me" = "join me"; + + + /** + * value: "ask me" + * @const + */ + "ask me" = "ask me"; + + + /** + * value: "busy" + * @const + */ + "busy" = "busy"; + + + /** + * value: "offline" + * @const + */ + "offline" = "offline"; + + + + /** + * Returns a UserStatus enum value from a Javascript object name. + * @param {Object} data The plain JavaScript object containing the name of the enum value. + * @return {module:model/UserStatus} The enum UserStatus value. + */ + static constructFromObject(object) { + return object; + } +} + diff --git a/test/api/AuthenticationApi.spec.js b/test/api/AuthenticationApi.spec.js new file mode 100644 index 0000000..3ec9f46 --- /dev/null +++ b/test/api/AuthenticationApi.spec.js @@ -0,0 +1,113 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. + define(['expect.js', process.cwd()+'/src/index'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + factory(require('expect.js'), require(process.cwd()+'/src/index')); + } else { + // Browser globals (root is window) + factory(root.expect, root.vrchatapi); + } +}(this, function(expect, vrchatapi) { + 'use strict'; + + var instance; + + beforeEach(function() { + instance = new vrchatapi.AuthenticationApi(); + }); + + var getProperty = function(object, getter, property) { + // Use getter method if present; otherwise, get the property directly. + if (typeof object[getter] === 'function') + return object[getter](); + else + return object[property]; + } + + var setProperty = function(object, setter, property, value) { + // Use setter method if present; otherwise, set the property directly. + if (typeof object[setter] === 'function') + object[setter](value); + else + object[property] = value; + } + + describe('AuthenticationApi', function() { + describe('deleteUserById', function() { + it('should call deleteUserById successfully', function(done) { + //uncomment below and update the code to test deleteUserById + //instance.deleteUserById(function(error) { + // if (error) throw error; + //expect().to.be(); + //}); + done(); + }); + }); + describe('getCurrentUser', function() { + it('should call getCurrentUser successfully', function(done) { + //uncomment below and update the code to test getCurrentUser + //instance.getCurrentUser(function(error) { + // if (error) throw error; + //expect().to.be(); + //}); + done(); + }); + }); + describe('logout', function() { + it('should call logout successfully', function(done) { + //uncomment below and update the code to test logout + //instance.logout(function(error) { + // if (error) throw error; + //expect().to.be(); + //}); + done(); + }); + }); + describe('verify2FA', function() { + it('should call verify2FA successfully', function(done) { + //uncomment below and update the code to test verify2FA + //instance.verify2FA(function(error) { + // if (error) throw error; + //expect().to.be(); + //}); + done(); + }); + }); + describe('verifyAuthToken', function() { + it('should call verifyAuthToken successfully', function(done) { + //uncomment below and update the code to test verifyAuthToken + //instance.verifyAuthToken(function(error) { + // if (error) throw error; + //expect().to.be(); + //}); + done(); + }); + }); + describe('verifyRecoveryCode', function() { + it('should call verifyRecoveryCode successfully', function(done) { + //uncomment below and update the code to test verifyRecoveryCode + //instance.verifyRecoveryCode(function(error) { + // if (error) throw error; + //expect().to.be(); + //}); + done(); + }); + }); + }); + +})); diff --git a/test/api/FilesApi.spec.js b/test/api/FilesApi.spec.js new file mode 100644 index 0000000..d329214 --- /dev/null +++ b/test/api/FilesApi.spec.js @@ -0,0 +1,153 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. + define(['expect.js', process.cwd()+'/src/index'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + factory(require('expect.js'), require(process.cwd()+'/src/index')); + } else { + // Browser globals (root is window) + factory(root.expect, root.vrchatapi); + } +}(this, function(expect, vrchatapi) { + 'use strict'; + + var instance; + + beforeEach(function() { + instance = new vrchatapi.FilesApi(); + }); + + var getProperty = function(object, getter, property) { + // Use getter method if present; otherwise, get the property directly. + if (typeof object[getter] === 'function') + return object[getter](); + else + return object[property]; + } + + var setProperty = function(object, setter, property, value) { + // Use setter method if present; otherwise, set the property directly. + if (typeof object[setter] === 'function') + object[setter](value); + else + object[property] = value; + } + + describe('FilesApi', function() { + describe('createFile', function() { + it('should call createFile successfully', function(done) { + //uncomment below and update the code to test createFile + //instance.createFile(function(error) { + // if (error) throw error; + //expect().to.be(); + //}); + done(); + }); + }); + describe('createFileVersion', function() { + it('should call createFileVersion successfully', function(done) { + //uncomment below and update the code to test createFileVersion + //instance.createFileVersion(function(error) { + // if (error) throw error; + //expect().to.be(); + //}); + done(); + }); + }); + describe('deleteFile', function() { + it('should call deleteFile successfully', function(done) { + //uncomment below and update the code to test deleteFile + //instance.deleteFile(function(error) { + // if (error) throw error; + //expect().to.be(); + //}); + done(); + }); + }); + describe('deleteFileVersion', function() { + it('should call deleteFileVersion successfully', function(done) { + //uncomment below and update the code to test deleteFileVersion + //instance.deleteFileVersion(function(error) { + // if (error) throw error; + //expect().to.be(); + //}); + done(); + }); + }); + describe('downloadFileVersion', function() { + it('should call downloadFileVersion successfully', function(done) { + //uncomment below and update the code to test downloadFileVersion + //instance.downloadFileVersion(function(error) { + // if (error) throw error; + //expect().to.be(); + //}); + done(); + }); + }); + describe('finishFileDataUpload', function() { + it('should call finishFileDataUpload successfully', function(done) { + //uncomment below and update the code to test finishFileDataUpload + //instance.finishFileDataUpload(function(error) { + // if (error) throw error; + //expect().to.be(); + //}); + done(); + }); + }); + describe('getFile', function() { + it('should call getFile successfully', function(done) { + //uncomment below and update the code to test getFile + //instance.getFile(function(error) { + // if (error) throw error; + //expect().to.be(); + //}); + done(); + }); + }); + describe('getFileDataUploadStatus', function() { + it('should call getFileDataUploadStatus successfully', function(done) { + //uncomment below and update the code to test getFileDataUploadStatus + //instance.getFileDataUploadStatus(function(error) { + // if (error) throw error; + //expect().to.be(); + //}); + done(); + }); + }); + describe('getFiles', function() { + it('should call getFiles successfully', function(done) { + //uncomment below and update the code to test getFiles + //instance.getFiles(function(error) { + // if (error) throw error; + //expect().to.be(); + //}); + done(); + }); + }); + describe('startFileDataUpload', function() { + it('should call startFileDataUpload successfully', function(done) { + //uncomment below and update the code to test startFileDataUpload + //instance.startFileDataUpload(function(error) { + // if (error) throw error; + //expect().to.be(); + //}); + done(); + }); + }); + }); + +})); diff --git a/test/api/FriendsApi.spec.js b/test/api/FriendsApi.spec.js new file mode 100644 index 0000000..1cf8492 --- /dev/null +++ b/test/api/FriendsApi.spec.js @@ -0,0 +1,103 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. + define(['expect.js', process.cwd()+'/src/index'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + factory(require('expect.js'), require(process.cwd()+'/src/index')); + } else { + // Browser globals (root is window) + factory(root.expect, root.vrchatapi); + } +}(this, function(expect, vrchatapi) { + 'use strict'; + + var instance; + + beforeEach(function() { + instance = new vrchatapi.FriendsApi(); + }); + + var getProperty = function(object, getter, property) { + // Use getter method if present; otherwise, get the property directly. + if (typeof object[getter] === 'function') + return object[getter](); + else + return object[property]; + } + + var setProperty = function(object, setter, property, value) { + // Use setter method if present; otherwise, set the property directly. + if (typeof object[setter] === 'function') + object[setter](value); + else + object[property] = value; + } + + describe('FriendsApi', function() { + describe('deleteFriendRequest', function() { + it('should call deleteFriendRequest successfully', function(done) { + //uncomment below and update the code to test deleteFriendRequest + //instance.deleteFriendRequest(function(error) { + // if (error) throw error; + //expect().to.be(); + //}); + done(); + }); + }); + describe('friend', function() { + it('should call friend successfully', function(done) { + //uncomment below and update the code to test friend + //instance.friend(function(error) { + // if (error) throw error; + //expect().to.be(); + //}); + done(); + }); + }); + describe('getFriendStatus', function() { + it('should call getFriendStatus successfully', function(done) { + //uncomment below and update the code to test getFriendStatus + //instance.getFriendStatus(function(error) { + // if (error) throw error; + //expect().to.be(); + //}); + done(); + }); + }); + describe('getFriends', function() { + it('should call getFriends successfully', function(done) { + //uncomment below and update the code to test getFriends + //instance.getFriends(function(error) { + // if (error) throw error; + //expect().to.be(); + //}); + done(); + }); + }); + describe('unfriend', function() { + it('should call unfriend successfully', function(done) { + //uncomment below and update the code to test unfriend + //instance.unfriend(function(error) { + // if (error) throw error; + //expect().to.be(); + //}); + done(); + }); + }); + }); + +})); diff --git a/test/api/NotificationsApi.spec.js b/test/api/NotificationsApi.spec.js new file mode 100644 index 0000000..c31f3be --- /dev/null +++ b/test/api/NotificationsApi.spec.js @@ -0,0 +1,103 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. + define(['expect.js', process.cwd()+'/src/index'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + factory(require('expect.js'), require(process.cwd()+'/src/index')); + } else { + // Browser globals (root is window) + factory(root.expect, root.vrchatapi); + } +}(this, function(expect, vrchatapi) { + 'use strict'; + + var instance; + + beforeEach(function() { + instance = new vrchatapi.NotificationsApi(); + }); + + var getProperty = function(object, getter, property) { + // Use getter method if present; otherwise, get the property directly. + if (typeof object[getter] === 'function') + return object[getter](); + else + return object[property]; + } + + var setProperty = function(object, setter, property, value) { + // Use setter method if present; otherwise, set the property directly. + if (typeof object[setter] === 'function') + object[setter](value); + else + object[property] = value; + } + + describe('NotificationsApi', function() { + describe('acceptFriendRequest', function() { + it('should call acceptFriendRequest successfully', function(done) { + //uncomment below and update the code to test acceptFriendRequest + //instance.acceptFriendRequest(function(error) { + // if (error) throw error; + //expect().to.be(); + //}); + done(); + }); + }); + describe('clearNotifications', function() { + it('should call clearNotifications successfully', function(done) { + //uncomment below and update the code to test clearNotifications + //instance.clearNotifications(function(error) { + // if (error) throw error; + //expect().to.be(); + //}); + done(); + }); + }); + describe('deleteNotification', function() { + it('should call deleteNotification successfully', function(done) { + //uncomment below and update the code to test deleteNotification + //instance.deleteNotification(function(error) { + // if (error) throw error; + //expect().to.be(); + //}); + done(); + }); + }); + describe('getNotifications', function() { + it('should call getNotifications successfully', function(done) { + //uncomment below and update the code to test getNotifications + //instance.getNotifications(function(error) { + // if (error) throw error; + //expect().to.be(); + //}); + done(); + }); + }); + describe('markNotificationAsRead', function() { + it('should call markNotificationAsRead successfully', function(done) { + //uncomment below and update the code to test markNotificationAsRead + //instance.markNotificationAsRead(function(error) { + // if (error) throw error; + //expect().to.be(); + //}); + done(); + }); + }); + }); + +})); diff --git a/test/api/SystemApi.spec.js b/test/api/SystemApi.spec.js new file mode 100644 index 0000000..055e9dd --- /dev/null +++ b/test/api/SystemApi.spec.js @@ -0,0 +1,93 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. + define(['expect.js', process.cwd()+'/src/index'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + factory(require('expect.js'), require(process.cwd()+'/src/index')); + } else { + // Browser globals (root is window) + factory(root.expect, root.vrchatapi); + } +}(this, function(expect, vrchatapi) { + 'use strict'; + + var instance; + + beforeEach(function() { + instance = new vrchatapi.SystemApi(); + }); + + var getProperty = function(object, getter, property) { + // Use getter method if present; otherwise, get the property directly. + if (typeof object[getter] === 'function') + return object[getter](); + else + return object[property]; + } + + var setProperty = function(object, setter, property, value) { + // Use setter method if present; otherwise, set the property directly. + if (typeof object[setter] === 'function') + object[setter](value); + else + object[property] = value; + } + + describe('SystemApi', function() { + describe('getConfig', function() { + it('should call getConfig successfully', function(done) { + //uncomment below and update the code to test getConfig + //instance.getConfig(function(error) { + // if (error) throw error; + //expect().to.be(); + //}); + done(); + }); + }); + describe('getCurrentOnlineUsers', function() { + it('should call getCurrentOnlineUsers successfully', function(done) { + //uncomment below and update the code to test getCurrentOnlineUsers + //instance.getCurrentOnlineUsers(function(error) { + // if (error) throw error; + //expect().to.be(); + //}); + done(); + }); + }); + describe('getHealth', function() { + it('should call getHealth successfully', function(done) { + //uncomment below and update the code to test getHealth + //instance.getHealth(function(error) { + // if (error) throw error; + //expect().to.be(); + //}); + done(); + }); + }); + describe('getSystemTime', function() { + it('should call getSystemTime successfully', function(done) { + //uncomment below and update the code to test getSystemTime + //instance.getSystemTime(function(error) { + // if (error) throw error; + //expect().to.be(); + //}); + done(); + }); + }); + }); + +})); diff --git a/test/api/UsersApi.spec.js b/test/api/UsersApi.spec.js new file mode 100644 index 0000000..f206516 --- /dev/null +++ b/test/api/UsersApi.spec.js @@ -0,0 +1,103 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. + define(['expect.js', process.cwd()+'/src/index'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + factory(require('expect.js'), require(process.cwd()+'/src/index')); + } else { + // Browser globals (root is window) + factory(root.expect, root.vrchatapi); + } +}(this, function(expect, vrchatapi) { + 'use strict'; + + var instance; + + beforeEach(function() { + instance = new vrchatapi.UsersApi(); + }); + + var getProperty = function(object, getter, property) { + // Use getter method if present; otherwise, get the property directly. + if (typeof object[getter] === 'function') + return object[getter](); + else + return object[property]; + } + + var setProperty = function(object, setter, property, value) { + // Use setter method if present; otherwise, set the property directly. + if (typeof object[setter] === 'function') + object[setter](value); + else + object[property] = value; + } + + describe('UsersApi', function() { + describe('getUser', function() { + it('should call getUser successfully', function(done) { + //uncomment below and update the code to test getUser + //instance.getUser(function(error) { + // if (error) throw error; + //expect().to.be(); + //}); + done(); + }); + }); + describe('getUserByName', function() { + it('should call getUserByName successfully', function(done) { + //uncomment below and update the code to test getUserByName + //instance.getUserByName(function(error) { + // if (error) throw error; + //expect().to.be(); + //}); + done(); + }); + }); + describe('searchActiveUsers', function() { + it('should call searchActiveUsers successfully', function(done) { + //uncomment below and update the code to test searchActiveUsers + //instance.searchActiveUsers(function(error) { + // if (error) throw error; + //expect().to.be(); + //}); + done(); + }); + }); + describe('searchUsers', function() { + it('should call searchUsers successfully', function(done) { + //uncomment below and update the code to test searchUsers + //instance.searchUsers(function(error) { + // if (error) throw error; + //expect().to.be(); + //}); + done(); + }); + }); + describe('updateUser', function() { + it('should call updateUser successfully', function(done) { + //uncomment below and update the code to test updateUser + //instance.updateUser(function(error) { + // if (error) throw error; + //expect().to.be(); + //}); + done(); + }); + }); + }); + +})); diff --git a/test/api/WorldsApi.spec.js b/test/api/WorldsApi.spec.js new file mode 100644 index 0000000..67413cb --- /dev/null +++ b/test/api/WorldsApi.spec.js @@ -0,0 +1,63 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. + define(['expect.js', process.cwd()+'/src/index'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + factory(require('expect.js'), require(process.cwd()+'/src/index')); + } else { + // Browser globals (root is window) + factory(root.expect, root.vrchatapi); + } +}(this, function(expect, vrchatapi) { + 'use strict'; + + var instance; + + beforeEach(function() { + instance = new vrchatapi.WorldsApi(); + }); + + var getProperty = function(object, getter, property) { + // Use getter method if present; otherwise, get the property directly. + if (typeof object[getter] === 'function') + return object[getter](); + else + return object[property]; + } + + var setProperty = function(object, setter, property, value) { + // Use setter method if present; otherwise, set the property directly. + if (typeof object[setter] === 'function') + object[setter](value); + else + object[property] = value; + } + + describe('WorldsApi', function() { + describe('searchWorlds', function() { + it('should call searchWorlds successfully', function(done) { + //uncomment below and update the code to test searchWorlds + //instance.searchWorlds(function(error) { + // if (error) throw error; + //expect().to.be(); + //}); + done(); + }); + }); + }); + +})); diff --git a/test/model/Config.spec.js b/test/model/Config.spec.js new file mode 100644 index 0000000..ad3a73c --- /dev/null +++ b/test/model/Config.spec.js @@ -0,0 +1,509 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. + define(['expect.js', process.cwd()+'/src/index'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + factory(require('expect.js'), require(process.cwd()+'/src/index')); + } else { + // Browser globals (root is window) + factory(root.expect, root.vrchatapi); + } +}(this, function(expect, vrchatapi) { + 'use strict'; + + var instance; + + beforeEach(function() { + instance = new vrchatapi.Config(); + }); + + var getProperty = function(object, getter, property) { + // Use getter method if present; otherwise, get the property directly. + if (typeof object[getter] === 'function') + return object[getter](); + else + return object[property]; + } + + var setProperty = function(object, setter, property, value) { + // Use setter method if present; otherwise, set the property directly. + if (typeof object[setter] === 'function') + object[setter](value); + else + object[property] = value; + } + + describe('Config', function() { + it('should create an instance of Config', function() { + // uncomment below and update the code to test Config + //var instane = new vrchatapi.Config(); + //expect(instance).to.be.a(vrchatapi.Config); + }); + + it('should have the property address (base name: "address")', function() { + // uncomment below and update the code to test the property address + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property announcements (base name: "announcements")', function() { + // uncomment below and update the code to test the property announcements + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property apiKey (base name: "apiKey")', function() { + // uncomment below and update the code to test the property apiKey + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property appName (base name: "appName")', function() { + // uncomment below and update the code to test the property appName + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property buildVersionTag (base name: "buildVersionTag")', function() { + // uncomment below and update the code to test the property buildVersionTag + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property clientApiKey (base name: "clientApiKey")', function() { + // uncomment below and update the code to test the property clientApiKey + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property clientBPSCeiling (base name: "clientBPSCeiling")', function() { + // uncomment below and update the code to test the property clientBPSCeiling + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property clientDisconnectTimeout (base name: "clientDisconnectTimeout")', function() { + // uncomment below and update the code to test the property clientDisconnectTimeout + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property clientReservedPlayerBPS (base name: "clientReservedPlayerBPS")', function() { + // uncomment below and update the code to test the property clientReservedPlayerBPS + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property clientSentCountAllowance (base name: "clientSentCountAllowance")', function() { + // uncomment below and update the code to test the property clientSentCountAllowance + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property contactEmail (base name: "contactEmail")', function() { + // uncomment below and update the code to test the property contactEmail + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property copyrightEmail (base name: "copyrightEmail")', function() { + // uncomment below and update the code to test the property copyrightEmail + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property currentTOSVersion (base name: "currentTOSVersion")', function() { + // uncomment below and update the code to test the property currentTOSVersion + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property defaultAvatar (base name: "defaultAvatar")', function() { + // uncomment below and update the code to test the property defaultAvatar + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property deploymentGroup (base name: "deploymentGroup")', function() { + // uncomment below and update the code to test the property deploymentGroup + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property devAppVersionStandalone (base name: "devAppVersionStandalone")', function() { + // uncomment below and update the code to test the property devAppVersionStandalone + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property devDownloadLinkWindows (base name: "devDownloadLinkWindows")', function() { + // uncomment below and update the code to test the property devDownloadLinkWindows + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property devSdkUrl (base name: "devSdkUrl")', function() { + // uncomment below and update the code to test the property devSdkUrl + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property devSdkVersion (base name: "devSdkVersion")', function() { + // uncomment below and update the code to test the property devSdkVersion + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property devServerVersionStandalone (base name: "devServerVersionStandalone")', function() { + // uncomment below and update the code to test the property devServerVersionStandalone + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property disableAvatarCopying (base name: "disableAvatarCopying")', function() { + // uncomment below and update the code to test the property disableAvatarCopying + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property disableAvatarGating (base name: "disableAvatarGating")', function() { + // uncomment below and update the code to test the property disableAvatarGating + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property disableCommunityLabs (base name: "disableCommunityLabs")', function() { + // uncomment below and update the code to test the property disableCommunityLabs + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property disableCommunityLabsPromotion (base name: "disableCommunityLabsPromotion")', function() { + // uncomment below and update the code to test the property disableCommunityLabsPromotion + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property disableEmail (base name: "disableEmail")', function() { + // uncomment below and update the code to test the property disableEmail + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property disableEventStream (base name: "disableEventStream")', function() { + // uncomment below and update the code to test the property disableEventStream + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property disableFeedbackGating (base name: "disableFeedbackGating")', function() { + // uncomment below and update the code to test the property disableFeedbackGating + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property disableHello (base name: "disableHello")', function() { + // uncomment below and update the code to test the property disableHello + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property disableRegistration (base name: "disableRegistration")', function() { + // uncomment below and update the code to test the property disableRegistration + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property disableSteamNetworking (base name: "disableSteamNetworking")', function() { + // uncomment below and update the code to test the property disableSteamNetworking + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property disableTwoFactorAuth (base name: "disableTwoFactorAuth")', function() { + // uncomment below and update the code to test the property disableTwoFactorAuth + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property disableUdon (base name: "disableUdon")', function() { + // uncomment below and update the code to test the property disableUdon + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property disableUpgradeAccount (base name: "disableUpgradeAccount")', function() { + // uncomment below and update the code to test the property disableUpgradeAccount + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property downloadLinkWindows (base name: "downloadLinkWindows")', function() { + // uncomment below and update the code to test the property downloadLinkWindows + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property downloadUrls (base name: "downloadUrls")', function() { + // uncomment below and update the code to test the property downloadUrls + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property dynamicWorldRows (base name: "dynamicWorldRows")', function() { + // uncomment below and update the code to test the property dynamicWorldRows + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property events (base name: "events")', function() { + // uncomment below and update the code to test the property events + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property gearDemoRoomId (base name: "gearDemoRoomId")', function() { + // uncomment below and update the code to test the property gearDemoRoomId + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property homepageRedirectTarget (base name: "homepageRedirectTarget")', function() { + // uncomment below and update the code to test the property homepageRedirectTarget + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property homeWorldId (base name: "homeWorldId")', function() { + // uncomment below and update the code to test the property homeWorldId + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property hubWorldId (base name: "hubWorldId")', function() { + // uncomment below and update the code to test the property hubWorldId + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property jobsEmail (base name: "jobsEmail")', function() { + // uncomment below and update the code to test the property jobsEmail + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property messageOfTheDay (base name: "messageOfTheDay")', function() { + // uncomment below and update the code to test the property messageOfTheDay + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property moderationEmail (base name: "moderationEmail")', function() { + // uncomment below and update the code to test the property moderationEmail + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property moderationQueryPeriod (base name: "moderationQueryPeriod")', function() { + // uncomment below and update the code to test the property moderationQueryPeriod + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property notAllowedToSelectAvatarInPrivateWorldMessage (base name: "notAllowedToSelectAvatarInPrivateWorldMessage")', function() { + // uncomment below and update the code to test the property notAllowedToSelectAvatarInPrivateWorldMessage + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property plugin (base name: "plugin")', function() { + // uncomment below and update the code to test the property plugin + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property releaseAppVersionStandalone (base name: "releaseAppVersionStandalone")', function() { + // uncomment below and update the code to test the property releaseAppVersionStandalone + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property releaseSdkUrl (base name: "releaseSdkUrl")', function() { + // uncomment below and update the code to test the property releaseSdkUrl + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property releaseSdkVersion (base name: "releaseSdkVersion")', function() { + // uncomment below and update the code to test the property releaseSdkVersion + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property releaseServerVersionStandalone (base name: "releaseServerVersionStandalone")', function() { + // uncomment below and update the code to test the property releaseServerVersionStandalone + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property sdkDeveloperFaqUrl (base name: "sdkDeveloperFaqUrl")', function() { + // uncomment below and update the code to test the property sdkDeveloperFaqUrl + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property sdkDiscordUrl (base name: "sdkDiscordUrl")', function() { + // uncomment below and update the code to test the property sdkDiscordUrl + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property sdkNotAllowedToPublishMessage (base name: "sdkNotAllowedToPublishMessage")', function() { + // uncomment below and update the code to test the property sdkNotAllowedToPublishMessage + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property sdkUnityVersion (base name: "sdkUnityVersion")', function() { + // uncomment below and update the code to test the property sdkUnityVersion + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property serverName (base name: "serverName")', function() { + // uncomment below and update the code to test the property serverName + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property supportEmail (base name: "supportEmail")', function() { + // uncomment below and update the code to test the property supportEmail + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property timeOutWorldId (base name: "timeOutWorldId")', function() { + // uncomment below and update the code to test the property timeOutWorldId + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property tutorialWorldId (base name: "tutorialWorldId")', function() { + // uncomment below and update the code to test the property tutorialWorldId + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property updateRateMsMaximum (base name: "updateRateMsMaximum")', function() { + // uncomment below and update the code to test the property updateRateMsMaximum + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property updateRateMsMinimum (base name: "updateRateMsMinimum")', function() { + // uncomment below and update the code to test the property updateRateMsMinimum + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property updateRateMsNormal (base name: "updateRateMsNormal")', function() { + // uncomment below and update the code to test the property updateRateMsNormal + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property updateRateMsUdonManual (base name: "updateRateMsUdonManual")', function() { + // uncomment below and update the code to test the property updateRateMsUdonManual + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property uploadAnalysisPercent (base name: "uploadAnalysisPercent")', function() { + // uncomment below and update the code to test the property uploadAnalysisPercent + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property urlList (base name: "urlList")', function() { + // uncomment below and update the code to test the property urlList + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property useReliableUdpForVoice (base name: "useReliableUdpForVoice")', function() { + // uncomment below and update the code to test the property useReliableUdpForVoice + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property userUpdatePeriod (base name: "userUpdatePeriod")', function() { + // uncomment below and update the code to test the property userUpdatePeriod + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property userVerificationDelay (base name: "userVerificationDelay")', function() { + // uncomment below and update the code to test the property userVerificationDelay + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property userVerificationRetry (base name: "userVerificationRetry")', function() { + // uncomment below and update the code to test the property userVerificationRetry + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property userVerificationTimeout (base name: "userVerificationTimeout")', function() { + // uncomment below and update the code to test the property userVerificationTimeout + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property viveWindowsUrl (base name: "viveWindowsUrl")', function() { + // uncomment below and update the code to test the property viveWindowsUrl + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property whiteListedAssetUrls (base name: "whiteListedAssetUrls")', function() { + // uncomment below and update the code to test the property whiteListedAssetUrls + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property worldUpdatePeriod (base name: "worldUpdatePeriod")', function() { + // uncomment below and update the code to test the property worldUpdatePeriod + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property youtubedlHash (base name: "youtubedl-hash")', function() { + // uncomment below and update the code to test the property youtubedlHash + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + it('should have the property youtubedlVersion (base name: "youtubedl-version")', function() { + // uncomment below and update the code to test the property youtubedlVersion + //var instance = new vrchatapi.Config(); + //expect(instance).to.be(); + }); + + }); + +})); diff --git a/test/model/ConfigAnnouncements.spec.js b/test/model/ConfigAnnouncements.spec.js new file mode 100644 index 0000000..25dbc53 --- /dev/null +++ b/test/model/ConfigAnnouncements.spec.js @@ -0,0 +1,71 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. + define(['expect.js', process.cwd()+'/src/index'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + factory(require('expect.js'), require(process.cwd()+'/src/index')); + } else { + // Browser globals (root is window) + factory(root.expect, root.vrchatapi); + } +}(this, function(expect, vrchatapi) { + 'use strict'; + + var instance; + + beforeEach(function() { + instance = new vrchatapi.ConfigAnnouncements(); + }); + + var getProperty = function(object, getter, property) { + // Use getter method if present; otherwise, get the property directly. + if (typeof object[getter] === 'function') + return object[getter](); + else + return object[property]; + } + + var setProperty = function(object, setter, property, value) { + // Use setter method if present; otherwise, set the property directly. + if (typeof object[setter] === 'function') + object[setter](value); + else + object[property] = value; + } + + describe('ConfigAnnouncements', function() { + it('should create an instance of ConfigAnnouncements', function() { + // uncomment below and update the code to test ConfigAnnouncements + //var instane = new vrchatapi.ConfigAnnouncements(); + //expect(instance).to.be.a(vrchatapi.ConfigAnnouncements); + }); + + it('should have the property name (base name: "name")', function() { + // uncomment below and update the code to test the property name + //var instance = new vrchatapi.ConfigAnnouncements(); + //expect(instance).to.be(); + }); + + it('should have the property text (base name: "text")', function() { + // uncomment below and update the code to test the property text + //var instance = new vrchatapi.ConfigAnnouncements(); + //expect(instance).to.be(); + }); + + }); + +})); diff --git a/test/model/ConfigDownloadUrls.spec.js b/test/model/ConfigDownloadUrls.spec.js new file mode 100644 index 0000000..c5fe1d5 --- /dev/null +++ b/test/model/ConfigDownloadUrls.spec.js @@ -0,0 +1,77 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. + define(['expect.js', process.cwd()+'/src/index'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + factory(require('expect.js'), require(process.cwd()+'/src/index')); + } else { + // Browser globals (root is window) + factory(root.expect, root.vrchatapi); + } +}(this, function(expect, vrchatapi) { + 'use strict'; + + var instance; + + beforeEach(function() { + instance = new vrchatapi.ConfigDownloadUrls(); + }); + + var getProperty = function(object, getter, property) { + // Use getter method if present; otherwise, get the property directly. + if (typeof object[getter] === 'function') + return object[getter](); + else + return object[property]; + } + + var setProperty = function(object, setter, property, value) { + // Use setter method if present; otherwise, set the property directly. + if (typeof object[setter] === 'function') + object[setter](value); + else + object[property] = value; + } + + describe('ConfigDownloadUrls', function() { + it('should create an instance of ConfigDownloadUrls', function() { + // uncomment below and update the code to test ConfigDownloadUrls + //var instane = new vrchatapi.ConfigDownloadUrls(); + //expect(instance).to.be.a(vrchatapi.ConfigDownloadUrls); + }); + + it('should have the property sdk2 (base name: "sdk2")', function() { + // uncomment below and update the code to test the property sdk2 + //var instance = new vrchatapi.ConfigDownloadUrls(); + //expect(instance).to.be(); + }); + + it('should have the property sdk3Avatars (base name: "sdk3-avatars")', function() { + // uncomment below and update the code to test the property sdk3Avatars + //var instance = new vrchatapi.ConfigDownloadUrls(); + //expect(instance).to.be(); + }); + + it('should have the property sdk3Worlds (base name: "sdk3-worlds")', function() { + // uncomment below and update the code to test the property sdk3Worlds + //var instance = new vrchatapi.ConfigDownloadUrls(); + //expect(instance).to.be(); + }); + + }); + +})); diff --git a/test/model/ConfigDynamicWorldRows.spec.js b/test/model/ConfigDynamicWorldRows.spec.js new file mode 100644 index 0000000..2d2871c --- /dev/null +++ b/test/model/ConfigDynamicWorldRows.spec.js @@ -0,0 +1,101 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. + define(['expect.js', process.cwd()+'/src/index'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + factory(require('expect.js'), require(process.cwd()+'/src/index')); + } else { + // Browser globals (root is window) + factory(root.expect, root.vrchatapi); + } +}(this, function(expect, vrchatapi) { + 'use strict'; + + var instance; + + beforeEach(function() { + instance = new vrchatapi.ConfigDynamicWorldRows(); + }); + + var getProperty = function(object, getter, property) { + // Use getter method if present; otherwise, get the property directly. + if (typeof object[getter] === 'function') + return object[getter](); + else + return object[property]; + } + + var setProperty = function(object, setter, property, value) { + // Use setter method if present; otherwise, set the property directly. + if (typeof object[setter] === 'function') + object[setter](value); + else + object[property] = value; + } + + describe('ConfigDynamicWorldRows', function() { + it('should create an instance of ConfigDynamicWorldRows', function() { + // uncomment below and update the code to test ConfigDynamicWorldRows + //var instane = new vrchatapi.ConfigDynamicWorldRows(); + //expect(instance).to.be.a(vrchatapi.ConfigDynamicWorldRows); + }); + + it('should have the property index (base name: "index")', function() { + // uncomment below and update the code to test the property index + //var instance = new vrchatapi.ConfigDynamicWorldRows(); + //expect(instance).to.be(); + }); + + it('should have the property name (base name: "name")', function() { + // uncomment below and update the code to test the property name + //var instance = new vrchatapi.ConfigDynamicWorldRows(); + //expect(instance).to.be(); + }); + + it('should have the property platform (base name: "platform")', function() { + // uncomment below and update the code to test the property platform + //var instance = new vrchatapi.ConfigDynamicWorldRows(); + //expect(instance).to.be(); + }); + + it('should have the property sortHeading (base name: "sortHeading")', function() { + // uncomment below and update the code to test the property sortHeading + //var instance = new vrchatapi.ConfigDynamicWorldRows(); + //expect(instance).to.be(); + }); + + it('should have the property sortOrder (base name: "sortOrder")', function() { + // uncomment below and update the code to test the property sortOrder + //var instance = new vrchatapi.ConfigDynamicWorldRows(); + //expect(instance).to.be(); + }); + + it('should have the property sortOwnership (base name: "sortOwnership")', function() { + // uncomment below and update the code to test the property sortOwnership + //var instance = new vrchatapi.ConfigDynamicWorldRows(); + //expect(instance).to.be(); + }); + + it('should have the property tag (base name: "tag")', function() { + // uncomment below and update the code to test the property tag + //var instance = new vrchatapi.ConfigDynamicWorldRows(); + //expect(instance).to.be(); + }); + + }); + +})); diff --git a/test/model/ConfigEvents.spec.js b/test/model/ConfigEvents.spec.js new file mode 100644 index 0000000..ef7f3d2 --- /dev/null +++ b/test/model/ConfigEvents.spec.js @@ -0,0 +1,119 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. + define(['expect.js', process.cwd()+'/src/index'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + factory(require('expect.js'), require(process.cwd()+'/src/index')); + } else { + // Browser globals (root is window) + factory(root.expect, root.vrchatapi); + } +}(this, function(expect, vrchatapi) { + 'use strict'; + + var instance; + + beforeEach(function() { + instance = new vrchatapi.ConfigEvents(); + }); + + var getProperty = function(object, getter, property) { + // Use getter method if present; otherwise, get the property directly. + if (typeof object[getter] === 'function') + return object[getter](); + else + return object[property]; + } + + var setProperty = function(object, setter, property, value) { + // Use setter method if present; otherwise, set the property directly. + if (typeof object[setter] === 'function') + object[setter](value); + else + object[property] = value; + } + + describe('ConfigEvents', function() { + it('should create an instance of ConfigEvents', function() { + // uncomment below and update the code to test ConfigEvents + //var instane = new vrchatapi.ConfigEvents(); + //expect(instance).to.be.a(vrchatapi.ConfigEvents); + }); + + it('should have the property distanceClose (base name: "distanceClose")', function() { + // uncomment below and update the code to test the property distanceClose + //var instance = new vrchatapi.ConfigEvents(); + //expect(instance).to.be(); + }); + + it('should have the property distanceFactor (base name: "distanceFactor")', function() { + // uncomment below and update the code to test the property distanceFactor + //var instance = new vrchatapi.ConfigEvents(); + //expect(instance).to.be(); + }); + + it('should have the property distanceFar (base name: "distanceFar")', function() { + // uncomment below and update the code to test the property distanceFar + //var instance = new vrchatapi.ConfigEvents(); + //expect(instance).to.be(); + }); + + it('should have the property groupDistance (base name: "groupDistance")', function() { + // uncomment below and update the code to test the property groupDistance + //var instance = new vrchatapi.ConfigEvents(); + //expect(instance).to.be(); + }); + + it('should have the property maximumBunchSize (base name: "maximumBunchSize")', function() { + // uncomment below and update the code to test the property maximumBunchSize + //var instance = new vrchatapi.ConfigEvents(); + //expect(instance).to.be(); + }); + + it('should have the property notVisibleFactor (base name: "notVisibleFactor")', function() { + // uncomment below and update the code to test the property notVisibleFactor + //var instance = new vrchatapi.ConfigEvents(); + //expect(instance).to.be(); + }); + + it('should have the property playerOrderBucketSize (base name: "playerOrderBucketSize")', function() { + // uncomment below and update the code to test the property playerOrderBucketSize + //var instance = new vrchatapi.ConfigEvents(); + //expect(instance).to.be(); + }); + + it('should have the property playerOrderFactor (base name: "playerOrderFactor")', function() { + // uncomment below and update the code to test the property playerOrderFactor + //var instance = new vrchatapi.ConfigEvents(); + //expect(instance).to.be(); + }); + + it('should have the property slowUpdateFactorThreshold (base name: "slowUpdateFactorThreshold")', function() { + // uncomment below and update the code to test the property slowUpdateFactorThreshold + //var instance = new vrchatapi.ConfigEvents(); + //expect(instance).to.be(); + }); + + it('should have the property viewSegmentLength (base name: "viewSegmentLength")', function() { + // uncomment below and update the code to test the property viewSegmentLength + //var instance = new vrchatapi.ConfigEvents(); + //expect(instance).to.be(); + }); + + }); + +})); diff --git a/test/model/CurrentUser.spec.js b/test/model/CurrentUser.spec.js new file mode 100644 index 0000000..a2b2883 --- /dev/null +++ b/test/model/CurrentUser.spec.js @@ -0,0 +1,335 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. + define(['expect.js', process.cwd()+'/src/index'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + factory(require('expect.js'), require(process.cwd()+'/src/index')); + } else { + // Browser globals (root is window) + factory(root.expect, root.vrchatapi); + } +}(this, function(expect, vrchatapi) { + 'use strict'; + + var instance; + + beforeEach(function() { + instance = new vrchatapi.CurrentUser(); + }); + + var getProperty = function(object, getter, property) { + // Use getter method if present; otherwise, get the property directly. + if (typeof object[getter] === 'function') + return object[getter](); + else + return object[property]; + } + + var setProperty = function(object, setter, property, value) { + // Use setter method if present; otherwise, set the property directly. + if (typeof object[setter] === 'function') + object[setter](value); + else + object[property] = value; + } + + describe('CurrentUser', function() { + it('should create an instance of CurrentUser', function() { + // uncomment below and update the code to test CurrentUser + //var instane = new vrchatapi.CurrentUser(); + //expect(instance).to.be.a(vrchatapi.CurrentUser); + }); + + it('should have the property id (base name: "id")', function() { + // uncomment below and update the code to test the property id + //var instance = new vrchatapi.CurrentUser(); + //expect(instance).to.be(); + }); + + it('should have the property username (base name: "username")', function() { + // uncomment below and update the code to test the property username + //var instance = new vrchatapi.CurrentUser(); + //expect(instance).to.be(); + }); + + it('should have the property displayName (base name: "displayName")', function() { + // uncomment below and update the code to test the property displayName + //var instance = new vrchatapi.CurrentUser(); + //expect(instance).to.be(); + }); + + it('should have the property userIcon (base name: "userIcon")', function() { + // uncomment below and update the code to test the property userIcon + //var instance = new vrchatapi.CurrentUser(); + //expect(instance).to.be(); + }); + + it('should have the property bio (base name: "bio")', function() { + // uncomment below and update the code to test the property bio + //var instance = new vrchatapi.CurrentUser(); + //expect(instance).to.be(); + }); + + it('should have the property bioLinks (base name: "bioLinks")', function() { + // uncomment below and update the code to test the property bioLinks + //var instance = new vrchatapi.CurrentUser(); + //expect(instance).to.be(); + }); + + it('should have the property profilePicOverride (base name: "profilePicOverride")', function() { + // uncomment below and update the code to test the property profilePicOverride + //var instance = new vrchatapi.CurrentUser(); + //expect(instance).to.be(); + }); + + it('should have the property statusDescription (base name: "statusDescription")', function() { + // uncomment below and update the code to test the property statusDescription + //var instance = new vrchatapi.CurrentUser(); + //expect(instance).to.be(); + }); + + it('should have the property pastDisplayNames (base name: "pastDisplayNames")', function() { + // uncomment below and update the code to test the property pastDisplayNames + //var instance = new vrchatapi.CurrentUser(); + //expect(instance).to.be(); + }); + + it('should have the property hasEmail (base name: "hasEmail")', function() { + // uncomment below and update the code to test the property hasEmail + //var instance = new vrchatapi.CurrentUser(); + //expect(instance).to.be(); + }); + + it('should have the property hasPendingEmail (base name: "hasPendingEmail")', function() { + // uncomment below and update the code to test the property hasPendingEmail + //var instance = new vrchatapi.CurrentUser(); + //expect(instance).to.be(); + }); + + it('should have the property obfuscatedEmail (base name: "obfuscatedEmail")', function() { + // uncomment below and update the code to test the property obfuscatedEmail + //var instance = new vrchatapi.CurrentUser(); + //expect(instance).to.be(); + }); + + it('should have the property obfuscatedPendingEmail (base name: "obfuscatedPendingEmail")', function() { + // uncomment below and update the code to test the property obfuscatedPendingEmail + //var instance = new vrchatapi.CurrentUser(); + //expect(instance).to.be(); + }); + + it('should have the property emailVerified (base name: "emailVerified")', function() { + // uncomment below and update the code to test the property emailVerified + //var instance = new vrchatapi.CurrentUser(); + //expect(instance).to.be(); + }); + + it('should have the property hasBirthday (base name: "hasBirthday")', function() { + // uncomment below and update the code to test the property hasBirthday + //var instance = new vrchatapi.CurrentUser(); + //expect(instance).to.be(); + }); + + it('should have the property unsubscribe (base name: "unsubscribe")', function() { + // uncomment below and update the code to test the property unsubscribe + //var instance = new vrchatapi.CurrentUser(); + //expect(instance).to.be(); + }); + + it('should have the property statusHistory (base name: "statusHistory")', function() { + // uncomment below and update the code to test the property statusHistory + //var instance = new vrchatapi.CurrentUser(); + //expect(instance).to.be(); + }); + + it('should have the property statusFirstTime (base name: "statusFirstTime")', function() { + // uncomment below and update the code to test the property statusFirstTime + //var instance = new vrchatapi.CurrentUser(); + //expect(instance).to.be(); + }); + + it('should have the property friends (base name: "friends")', function() { + // uncomment below and update the code to test the property friends + //var instance = new vrchatapi.CurrentUser(); + //expect(instance).to.be(); + }); + + it('should have the property friendGroupNames (base name: "friendGroupNames")', function() { + // uncomment below and update the code to test the property friendGroupNames + //var instance = new vrchatapi.CurrentUser(); + //expect(instance).to.be(); + }); + + it('should have the property currentAvatarImageUrl (base name: "currentAvatarImageUrl")', function() { + // uncomment below and update the code to test the property currentAvatarImageUrl + //var instance = new vrchatapi.CurrentUser(); + //expect(instance).to.be(); + }); + + it('should have the property currentAvatarThumbnailImageUrl (base name: "currentAvatarThumbnailImageUrl")', function() { + // uncomment below and update the code to test the property currentAvatarThumbnailImageUrl + //var instance = new vrchatapi.CurrentUser(); + //expect(instance).to.be(); + }); + + it('should have the property fallbackAvatar (base name: "fallbackAvatar")', function() { + // uncomment below and update the code to test the property fallbackAvatar + //var instance = new vrchatapi.CurrentUser(); + //expect(instance).to.be(); + }); + + it('should have the property currentAvatar (base name: "currentAvatar")', function() { + // uncomment below and update the code to test the property currentAvatar + //var instance = new vrchatapi.CurrentUser(); + //expect(instance).to.be(); + }); + + it('should have the property currentAvatarAssetUrl (base name: "currentAvatarAssetUrl")', function() { + // uncomment below and update the code to test the property currentAvatarAssetUrl + //var instance = new vrchatapi.CurrentUser(); + //expect(instance).to.be(); + }); + + it('should have the property accountDeletionDate (base name: "accountDeletionDate")', function() { + // uncomment below and update the code to test the property accountDeletionDate + //var instance = new vrchatapi.CurrentUser(); + //expect(instance).to.be(); + }); + + it('should have the property acceptedTOSVersion (base name: "acceptedTOSVersion")', function() { + // uncomment below and update the code to test the property acceptedTOSVersion + //var instance = new vrchatapi.CurrentUser(); + //expect(instance).to.be(); + }); + + it('should have the property steamId (base name: "steamId")', function() { + // uncomment below and update the code to test the property steamId + //var instance = new vrchatapi.CurrentUser(); + //expect(instance).to.be(); + }); + + it('should have the property steamDetails (base name: "steamDetails")', function() { + // uncomment below and update the code to test the property steamDetails + //var instance = new vrchatapi.CurrentUser(); + //expect(instance).to.be(); + }); + + it('should have the property oculusId (base name: "oculusId")', function() { + // uncomment below and update the code to test the property oculusId + //var instance = new vrchatapi.CurrentUser(); + //expect(instance).to.be(); + }); + + it('should have the property hasLoggedInFromClient (base name: "hasLoggedInFromClient")', function() { + // uncomment below and update the code to test the property hasLoggedInFromClient + //var instance = new vrchatapi.CurrentUser(); + //expect(instance).to.be(); + }); + + it('should have the property homeLocation (base name: "homeLocation")', function() { + // uncomment below and update the code to test the property homeLocation + //var instance = new vrchatapi.CurrentUser(); + //expect(instance).to.be(); + }); + + it('should have the property twoFactorAuthEnabled (base name: "twoFactorAuthEnabled")', function() { + // uncomment below and update the code to test the property twoFactorAuthEnabled + //var instance = new vrchatapi.CurrentUser(); + //expect(instance).to.be(); + }); + + it('should have the property state (base name: "state")', function() { + // uncomment below and update the code to test the property state + //var instance = new vrchatapi.CurrentUser(); + //expect(instance).to.be(); + }); + + it('should have the property tags (base name: "tags")', function() { + // uncomment below and update the code to test the property tags + //var instance = new vrchatapi.CurrentUser(); + //expect(instance).to.be(); + }); + + it('should have the property developerType (base name: "developerType")', function() { + // uncomment below and update the code to test the property developerType + //var instance = new vrchatapi.CurrentUser(); + //expect(instance).to.be(); + }); + + it('should have the property lastLogin (base name: "last_login")', function() { + // uncomment below and update the code to test the property lastLogin + //var instance = new vrchatapi.CurrentUser(); + //expect(instance).to.be(); + }); + + it('should have the property lastPlatform (base name: "last_platform")', function() { + // uncomment below and update the code to test the property lastPlatform + //var instance = new vrchatapi.CurrentUser(); + //expect(instance).to.be(); + }); + + it('should have the property allowAvatarCopying (base name: "allowAvatarCopying")', function() { + // uncomment below and update the code to test the property allowAvatarCopying + //var instance = new vrchatapi.CurrentUser(); + //expect(instance).to.be(); + }); + + it('should have the property status (base name: "status")', function() { + // uncomment below and update the code to test the property status + //var instance = new vrchatapi.CurrentUser(); + //expect(instance).to.be(); + }); + + it('should have the property dateJoined (base name: "date_joined")', function() { + // uncomment below and update the code to test the property dateJoined + //var instance = new vrchatapi.CurrentUser(); + //expect(instance).to.be(); + }); + + it('should have the property isFriend (base name: "isFriend")', function() { + // uncomment below and update the code to test the property isFriend + //var instance = new vrchatapi.CurrentUser(); + //expect(instance).to.be(); + }); + + it('should have the property friendKey (base name: "friendKey")', function() { + // uncomment below and update the code to test the property friendKey + //var instance = new vrchatapi.CurrentUser(); + //expect(instance).to.be(); + }); + + it('should have the property onlineFriends (base name: "onlineFriends")', function() { + // uncomment below and update the code to test the property onlineFriends + //var instance = new vrchatapi.CurrentUser(); + //expect(instance).to.be(); + }); + + it('should have the property activeFriends (base name: "activeFriends")', function() { + // uncomment below and update the code to test the property activeFriends + //var instance = new vrchatapi.CurrentUser(); + //expect(instance).to.be(); + }); + + it('should have the property offlineFriends (base name: "offlineFriends")', function() { + // uncomment below and update the code to test the property offlineFriends + //var instance = new vrchatapi.CurrentUser(); + //expect(instance).to.be(); + }); + + }); + +})); diff --git a/test/model/DeploymentGroup.spec.js b/test/model/DeploymentGroup.spec.js new file mode 100644 index 0000000..30b4c3e --- /dev/null +++ b/test/model/DeploymentGroup.spec.js @@ -0,0 +1,58 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. + define(['expect.js', process.cwd()+'/src/index'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + factory(require('expect.js'), require(process.cwd()+'/src/index')); + } else { + // Browser globals (root is window) + factory(root.expect, root.vrchatapi); + } +}(this, function(expect, vrchatapi) { + 'use strict'; + + var instance; + + beforeEach(function() { + }); + + var getProperty = function(object, getter, property) { + // Use getter method if present; otherwise, get the property directly. + if (typeof object[getter] === 'function') + return object[getter](); + else + return object[property]; + } + + var setProperty = function(object, setter, property, value) { + // Use setter method if present; otherwise, set the property directly. + if (typeof object[setter] === 'function') + object[setter](value); + else + object[property] = value; + } + + describe('DeploymentGroup', function() { + it('should create an instance of DeploymentGroup', function() { + // uncomment below and update the code to test DeploymentGroup + //var instane = new vrchatapi.DeploymentGroup(); + //expect(instance).to.be.a(vrchatapi.DeploymentGroup); + }); + + }); + +})); diff --git a/test/model/DeveloperType.spec.js b/test/model/DeveloperType.spec.js new file mode 100644 index 0000000..ffcbf33 --- /dev/null +++ b/test/model/DeveloperType.spec.js @@ -0,0 +1,58 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. + define(['expect.js', process.cwd()+'/src/index'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + factory(require('expect.js'), require(process.cwd()+'/src/index')); + } else { + // Browser globals (root is window) + factory(root.expect, root.vrchatapi); + } +}(this, function(expect, vrchatapi) { + 'use strict'; + + var instance; + + beforeEach(function() { + }); + + var getProperty = function(object, getter, property) { + // Use getter method if present; otherwise, get the property directly. + if (typeof object[getter] === 'function') + return object[getter](); + else + return object[property]; + } + + var setProperty = function(object, setter, property, value) { + // Use setter method if present; otherwise, set the property directly. + if (typeof object[setter] === 'function') + object[setter](value); + else + object[property] = value; + } + + describe('DeveloperType', function() { + it('should create an instance of DeveloperType', function() { + // uncomment below and update the code to test DeveloperType + //var instane = new vrchatapi.DeveloperType(); + //expect(instance).to.be.a(vrchatapi.DeveloperType); + }); + + }); + +})); diff --git a/test/model/Error.spec.js b/test/model/Error.spec.js new file mode 100644 index 0000000..f709e01 --- /dev/null +++ b/test/model/Error.spec.js @@ -0,0 +1,65 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. + define(['expect.js', process.cwd()+'/src/index'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + factory(require('expect.js'), require(process.cwd()+'/src/index')); + } else { + // Browser globals (root is window) + factory(root.expect, root.vrchatapi); + } +}(this, function(expect, vrchatapi) { + 'use strict'; + + var instance; + + beforeEach(function() { + instance = new vrchatapi.Error(); + }); + + var getProperty = function(object, getter, property) { + // Use getter method if present; otherwise, get the property directly. + if (typeof object[getter] === 'function') + return object[getter](); + else + return object[property]; + } + + var setProperty = function(object, setter, property, value) { + // Use setter method if present; otherwise, set the property directly. + if (typeof object[setter] === 'function') + object[setter](value); + else + object[property] = value; + } + + describe('Error', function() { + it('should create an instance of Error', function() { + // uncomment below and update the code to test Error + //var instane = new vrchatapi.Error(); + //expect(instance).to.be.a(vrchatapi.Error); + }); + + it('should have the property error (base name: "error")', function() { + // uncomment below and update the code to test the property error + //var instance = new vrchatapi.Error(); + //expect(instance).to.be(); + }); + + }); + +})); diff --git a/test/model/File.spec.js b/test/model/File.spec.js new file mode 100644 index 0000000..05a01fe --- /dev/null +++ b/test/model/File.spec.js @@ -0,0 +1,101 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. + define(['expect.js', process.cwd()+'/src/index'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + factory(require('expect.js'), require(process.cwd()+'/src/index')); + } else { + // Browser globals (root is window) + factory(root.expect, root.vrchatapi); + } +}(this, function(expect, vrchatapi) { + 'use strict'; + + var instance; + + beforeEach(function() { + instance = new vrchatapi.File(); + }); + + var getProperty = function(object, getter, property) { + // Use getter method if present; otherwise, get the property directly. + if (typeof object[getter] === 'function') + return object[getter](); + else + return object[property]; + } + + var setProperty = function(object, setter, property, value) { + // Use setter method if present; otherwise, set the property directly. + if (typeof object[setter] === 'function') + object[setter](value); + else + object[property] = value; + } + + describe('File', function() { + it('should create an instance of File', function() { + // uncomment below and update the code to test File + //var instane = new vrchatapi.File(); + //expect(instance).to.be.a(vrchatapi.File); + }); + + it('should have the property id (base name: "id")', function() { + // uncomment below and update the code to test the property id + //var instance = new vrchatapi.File(); + //expect(instance).to.be(); + }); + + it('should have the property name (base name: "name")', function() { + // uncomment below and update the code to test the property name + //var instance = new vrchatapi.File(); + //expect(instance).to.be(); + }); + + it('should have the property ownerId (base name: "ownerId")', function() { + // uncomment below and update the code to test the property ownerId + //var instance = new vrchatapi.File(); + //expect(instance).to.be(); + }); + + it('should have the property mimeType (base name: "mimeType")', function() { + // uncomment below and update the code to test the property mimeType + //var instance = new vrchatapi.File(); + //expect(instance).to.be(); + }); + + it('should have the property extension (base name: "extension")', function() { + // uncomment below and update the code to test the property extension + //var instance = new vrchatapi.File(); + //expect(instance).to.be(); + }); + + it('should have the property tags (base name: "tags")', function() { + // uncomment below and update the code to test the property tags + //var instance = new vrchatapi.File(); + //expect(instance).to.be(); + }); + + it('should have the property versions (base name: "versions")', function() { + // uncomment below and update the code to test the property versions + //var instance = new vrchatapi.File(); + //expect(instance).to.be(); + }); + + }); + +})); diff --git a/test/model/FileData.spec.js b/test/model/FileData.spec.js new file mode 100644 index 0000000..f133dfa --- /dev/null +++ b/test/model/FileData.spec.js @@ -0,0 +1,101 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. + define(['expect.js', process.cwd()+'/src/index'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + factory(require('expect.js'), require(process.cwd()+'/src/index')); + } else { + // Browser globals (root is window) + factory(root.expect, root.vrchatapi); + } +}(this, function(expect, vrchatapi) { + 'use strict'; + + var instance; + + beforeEach(function() { + instance = new vrchatapi.FileData(); + }); + + var getProperty = function(object, getter, property) { + // Use getter method if present; otherwise, get the property directly. + if (typeof object[getter] === 'function') + return object[getter](); + else + return object[property]; + } + + var setProperty = function(object, setter, property, value) { + // Use setter method if present; otherwise, set the property directly. + if (typeof object[setter] === 'function') + object[setter](value); + else + object[property] = value; + } + + describe('FileData', function() { + it('should create an instance of FileData', function() { + // uncomment below and update the code to test FileData + //var instane = new vrchatapi.FileData(); + //expect(instance).to.be.a(vrchatapi.FileData); + }); + + it('should have the property fileName (base name: "fileName")', function() { + // uncomment below and update the code to test the property fileName + //var instance = new vrchatapi.FileData(); + //expect(instance).to.be(); + }); + + it('should have the property url (base name: "url")', function() { + // uncomment below and update the code to test the property url + //var instance = new vrchatapi.FileData(); + //expect(instance).to.be(); + }); + + it('should have the property md5 (base name: "md5")', function() { + // uncomment below and update the code to test the property md5 + //var instance = new vrchatapi.FileData(); + //expect(instance).to.be(); + }); + + it('should have the property sizeInBytes (base name: "sizeInBytes")', function() { + // uncomment below and update the code to test the property sizeInBytes + //var instance = new vrchatapi.FileData(); + //expect(instance).to.be(); + }); + + it('should have the property status (base name: "status")', function() { + // uncomment below and update the code to test the property status + //var instance = new vrchatapi.FileData(); + //expect(instance).to.be(); + }); + + it('should have the property category (base name: "category")', function() { + // uncomment below and update the code to test the property category + //var instance = new vrchatapi.FileData(); + //expect(instance).to.be(); + }); + + it('should have the property uploadId (base name: "uploadId")', function() { + // uncomment below and update the code to test the property uploadId + //var instance = new vrchatapi.FileData(); + //expect(instance).to.be(); + }); + + }); + +})); diff --git a/test/model/FileStatus.spec.js b/test/model/FileStatus.spec.js new file mode 100644 index 0000000..f668d4f --- /dev/null +++ b/test/model/FileStatus.spec.js @@ -0,0 +1,58 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. + define(['expect.js', process.cwd()+'/src/index'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + factory(require('expect.js'), require(process.cwd()+'/src/index')); + } else { + // Browser globals (root is window) + factory(root.expect, root.vrchatapi); + } +}(this, function(expect, vrchatapi) { + 'use strict'; + + var instance; + + beforeEach(function() { + }); + + var getProperty = function(object, getter, property) { + // Use getter method if present; otherwise, get the property directly. + if (typeof object[getter] === 'function') + return object[getter](); + else + return object[property]; + } + + var setProperty = function(object, setter, property, value) { + // Use setter method if present; otherwise, set the property directly. + if (typeof object[setter] === 'function') + object[setter](value); + else + object[property] = value; + } + + describe('FileStatus', function() { + it('should create an instance of FileStatus', function() { + // uncomment below and update the code to test FileStatus + //var instane = new vrchatapi.FileStatus(); + //expect(instance).to.be.a(vrchatapi.FileStatus); + }); + + }); + +})); diff --git a/test/model/FileVersion.spec.js b/test/model/FileVersion.spec.js new file mode 100644 index 0000000..98c1ece --- /dev/null +++ b/test/model/FileVersion.spec.js @@ -0,0 +1,101 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. + define(['expect.js', process.cwd()+'/src/index'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + factory(require('expect.js'), require(process.cwd()+'/src/index')); + } else { + // Browser globals (root is window) + factory(root.expect, root.vrchatapi); + } +}(this, function(expect, vrchatapi) { + 'use strict'; + + var instance; + + beforeEach(function() { + instance = new vrchatapi.FileVersion(); + }); + + var getProperty = function(object, getter, property) { + // Use getter method if present; otherwise, get the property directly. + if (typeof object[getter] === 'function') + return object[getter](); + else + return object[property]; + } + + var setProperty = function(object, setter, property, value) { + // Use setter method if present; otherwise, set the property directly. + if (typeof object[setter] === 'function') + object[setter](value); + else + object[property] = value; + } + + describe('FileVersion', function() { + it('should create an instance of FileVersion', function() { + // uncomment below and update the code to test FileVersion + //var instane = new vrchatapi.FileVersion(); + //expect(instance).to.be.a(vrchatapi.FileVersion); + }); + + it('should have the property version (base name: "version")', function() { + // uncomment below and update the code to test the property version + //var instance = new vrchatapi.FileVersion(); + //expect(instance).to.be(); + }); + + it('should have the property status (base name: "status")', function() { + // uncomment below and update the code to test the property status + //var instance = new vrchatapi.FileVersion(); + //expect(instance).to.be(); + }); + + it('should have the property createdAt (base name: "created_at")', function() { + // uncomment below and update the code to test the property createdAt + //var instance = new vrchatapi.FileVersion(); + //expect(instance).to.be(); + }); + + it('should have the property file (base name: "file")', function() { + // uncomment below and update the code to test the property file + //var instance = new vrchatapi.FileVersion(); + //expect(instance).to.be(); + }); + + it('should have the property delta (base name: "delta")', function() { + // uncomment below and update the code to test the property delta + //var instance = new vrchatapi.FileVersion(); + //expect(instance).to.be(); + }); + + it('should have the property signature (base name: "signature")', function() { + // uncomment below and update the code to test the property signature + //var instance = new vrchatapi.FileVersion(); + //expect(instance).to.be(); + }); + + it('should have the property deleted (base name: "deleted")', function() { + // uncomment below and update the code to test the property deleted + //var instance = new vrchatapi.FileVersion(); + //expect(instance).to.be(); + }); + + }); + +})); diff --git a/test/model/InlineObject.spec.js b/test/model/InlineObject.spec.js new file mode 100644 index 0000000..24f32eb --- /dev/null +++ b/test/model/InlineObject.spec.js @@ -0,0 +1,65 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. + define(['expect.js', process.cwd()+'/src/index'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + factory(require('expect.js'), require(process.cwd()+'/src/index')); + } else { + // Browser globals (root is window) + factory(root.expect, root.vrchatapi); + } +}(this, function(expect, vrchatapi) { + 'use strict'; + + var instance; + + beforeEach(function() { + instance = new vrchatapi.InlineObject(); + }); + + var getProperty = function(object, getter, property) { + // Use getter method if present; otherwise, get the property directly. + if (typeof object[getter] === 'function') + return object[getter](); + else + return object[property]; + } + + var setProperty = function(object, setter, property, value) { + // Use setter method if present; otherwise, set the property directly. + if (typeof object[setter] === 'function') + object[setter](value); + else + object[property] = value; + } + + describe('InlineObject', function() { + it('should create an instance of InlineObject', function() { + // uncomment below and update the code to test InlineObject + //var instane = new vrchatapi.InlineObject(); + //expect(instance).to.be.a(vrchatapi.InlineObject); + }); + + it('should have the property code (base name: "code")', function() { + // uncomment below and update the code to test the property code + //var instance = new vrchatapi.InlineObject(); + //expect(instance).to.be(); + }); + + }); + +})); diff --git a/test/model/InlineObject1.spec.js b/test/model/InlineObject1.spec.js new file mode 100644 index 0000000..6094b44 --- /dev/null +++ b/test/model/InlineObject1.spec.js @@ -0,0 +1,65 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. + define(['expect.js', process.cwd()+'/src/index'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + factory(require('expect.js'), require(process.cwd()+'/src/index')); + } else { + // Browser globals (root is window) + factory(root.expect, root.vrchatapi); + } +}(this, function(expect, vrchatapi) { + 'use strict'; + + var instance; + + beforeEach(function() { + instance = new vrchatapi.InlineObject1(); + }); + + var getProperty = function(object, getter, property) { + // Use getter method if present; otherwise, get the property directly. + if (typeof object[getter] === 'function') + return object[getter](); + else + return object[property]; + } + + var setProperty = function(object, setter, property, value) { + // Use setter method if present; otherwise, set the property directly. + if (typeof object[setter] === 'function') + object[setter](value); + else + object[property] = value; + } + + describe('InlineObject1', function() { + it('should create an instance of InlineObject1', function() { + // uncomment below and update the code to test InlineObject1 + //var instane = new vrchatapi.InlineObject1(); + //expect(instance).to.be.a(vrchatapi.InlineObject1); + }); + + it('should have the property code (base name: "code")', function() { + // uncomment below and update the code to test the property code + //var instance = new vrchatapi.InlineObject1(); + //expect(instance).to.be(); + }); + + }); + +})); diff --git a/test/model/InlineObject2.spec.js b/test/model/InlineObject2.spec.js new file mode 100644 index 0000000..db4da73 --- /dev/null +++ b/test/model/InlineObject2.spec.js @@ -0,0 +1,113 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. + define(['expect.js', process.cwd()+'/src/index'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + factory(require('expect.js'), require(process.cwd()+'/src/index')); + } else { + // Browser globals (root is window) + factory(root.expect, root.vrchatapi); + } +}(this, function(expect, vrchatapi) { + 'use strict'; + + var instance; + + beforeEach(function() { + instance = new vrchatapi.InlineObject2(); + }); + + var getProperty = function(object, getter, property) { + // Use getter method if present; otherwise, get the property directly. + if (typeof object[getter] === 'function') + return object[getter](); + else + return object[property]; + } + + var setProperty = function(object, setter, property, value) { + // Use setter method if present; otherwise, set the property directly. + if (typeof object[setter] === 'function') + object[setter](value); + else + object[property] = value; + } + + describe('InlineObject2', function() { + it('should create an instance of InlineObject2', function() { + // uncomment below and update the code to test InlineObject2 + //var instane = new vrchatapi.InlineObject2(); + //expect(instance).to.be.a(vrchatapi.InlineObject2); + }); + + it('should have the property email (base name: "email")', function() { + // uncomment below and update the code to test the property email + //var instance = new vrchatapi.InlineObject2(); + //expect(instance).to.be(); + }); + + it('should have the property birthday (base name: "birthday")', function() { + // uncomment below and update the code to test the property birthday + //var instance = new vrchatapi.InlineObject2(); + //expect(instance).to.be(); + }); + + it('should have the property acceptedTOSVersion (base name: "acceptedTOSVersion")', function() { + // uncomment below and update the code to test the property acceptedTOSVersion + //var instance = new vrchatapi.InlineObject2(); + //expect(instance).to.be(); + }); + + it('should have the property tags (base name: "tags")', function() { + // uncomment below and update the code to test the property tags + //var instance = new vrchatapi.InlineObject2(); + //expect(instance).to.be(); + }); + + it('should have the property status (base name: "status")', function() { + // uncomment below and update the code to test the property status + //var instance = new vrchatapi.InlineObject2(); + //expect(instance).to.be(); + }); + + it('should have the property statusDescription (base name: "statusDescription")', function() { + // uncomment below and update the code to test the property statusDescription + //var instance = new vrchatapi.InlineObject2(); + //expect(instance).to.be(); + }); + + it('should have the property bio (base name: "bio")', function() { + // uncomment below and update the code to test the property bio + //var instance = new vrchatapi.InlineObject2(); + //expect(instance).to.be(); + }); + + it('should have the property bioLinks (base name: "bioLinks")', function() { + // uncomment below and update the code to test the property bioLinks + //var instance = new vrchatapi.InlineObject2(); + //expect(instance).to.be(); + }); + + it('should have the property userIcon (base name: "userIcon")', function() { + // uncomment below and update the code to test the property userIcon + //var instance = new vrchatapi.InlineObject2(); + //expect(instance).to.be(); + }); + + }); + +})); diff --git a/test/model/InlineObject3.spec.js b/test/model/InlineObject3.spec.js new file mode 100644 index 0000000..cdee9bb --- /dev/null +++ b/test/model/InlineObject3.spec.js @@ -0,0 +1,83 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. + define(['expect.js', process.cwd()+'/src/index'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + factory(require('expect.js'), require(process.cwd()+'/src/index')); + } else { + // Browser globals (root is window) + factory(root.expect, root.vrchatapi); + } +}(this, function(expect, vrchatapi) { + 'use strict'; + + var instance; + + beforeEach(function() { + instance = new vrchatapi.InlineObject3(); + }); + + var getProperty = function(object, getter, property) { + // Use getter method if present; otherwise, get the property directly. + if (typeof object[getter] === 'function') + return object[getter](); + else + return object[property]; + } + + var setProperty = function(object, setter, property, value) { + // Use setter method if present; otherwise, set the property directly. + if (typeof object[setter] === 'function') + object[setter](value); + else + object[property] = value; + } + + describe('InlineObject3', function() { + it('should create an instance of InlineObject3', function() { + // uncomment below and update the code to test InlineObject3 + //var instane = new vrchatapi.InlineObject3(); + //expect(instance).to.be.a(vrchatapi.InlineObject3); + }); + + it('should have the property name (base name: "name")', function() { + // uncomment below and update the code to test the property name + //var instance = new vrchatapi.InlineObject3(); + //expect(instance).to.be(); + }); + + it('should have the property mimeType (base name: "mimeType")', function() { + // uncomment below and update the code to test the property mimeType + //var instance = new vrchatapi.InlineObject3(); + //expect(instance).to.be(); + }); + + it('should have the property extension (base name: "extension")', function() { + // uncomment below and update the code to test the property extension + //var instance = new vrchatapi.InlineObject3(); + //expect(instance).to.be(); + }); + + it('should have the property tags (base name: "tags")', function() { + // uncomment below and update the code to test the property tags + //var instance = new vrchatapi.InlineObject3(); + //expect(instance).to.be(); + }); + + }); + +})); diff --git a/test/model/InlineObject4.spec.js b/test/model/InlineObject4.spec.js new file mode 100644 index 0000000..c5eedee --- /dev/null +++ b/test/model/InlineObject4.spec.js @@ -0,0 +1,77 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. + define(['expect.js', process.cwd()+'/src/index'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + factory(require('expect.js'), require(process.cwd()+'/src/index')); + } else { + // Browser globals (root is window) + factory(root.expect, root.vrchatapi); + } +}(this, function(expect, vrchatapi) { + 'use strict'; + + var instance; + + beforeEach(function() { + instance = new vrchatapi.InlineObject4(); + }); + + var getProperty = function(object, getter, property) { + // Use getter method if present; otherwise, get the property directly. + if (typeof object[getter] === 'function') + return object[getter](); + else + return object[property]; + } + + var setProperty = function(object, setter, property, value) { + // Use setter method if present; otherwise, set the property directly. + if (typeof object[setter] === 'function') + object[setter](value); + else + object[property] = value; + } + + describe('InlineObject4', function() { + it('should create an instance of InlineObject4', function() { + // uncomment below and update the code to test InlineObject4 + //var instane = new vrchatapi.InlineObject4(); + //expect(instance).to.be.a(vrchatapi.InlineObject4); + }); + + it('should have the property etags (base name: "etags")', function() { + // uncomment below and update the code to test the property etags + //var instance = new vrchatapi.InlineObject4(); + //expect(instance).to.be(); + }); + + it('should have the property nextPartNumber (base name: "nextPartNumber")', function() { + // uncomment below and update the code to test the property nextPartNumber + //var instance = new vrchatapi.InlineObject4(); + //expect(instance).to.be(); + }); + + it('should have the property maxParts (base name: "maxParts")', function() { + // uncomment below and update the code to test the property maxParts + //var instance = new vrchatapi.InlineObject4(); + //expect(instance).to.be(); + }); + + }); + +})); diff --git a/test/model/InlineResponse200.spec.js b/test/model/InlineResponse200.spec.js new file mode 100644 index 0000000..4f6138c --- /dev/null +++ b/test/model/InlineResponse200.spec.js @@ -0,0 +1,71 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. + define(['expect.js', process.cwd()+'/src/index'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + factory(require('expect.js'), require(process.cwd()+'/src/index')); + } else { + // Browser globals (root is window) + factory(root.expect, root.vrchatapi); + } +}(this, function(expect, vrchatapi) { + 'use strict'; + + var instance; + + beforeEach(function() { + instance = new vrchatapi.InlineResponse200(); + }); + + var getProperty = function(object, getter, property) { + // Use getter method if present; otherwise, get the property directly. + if (typeof object[getter] === 'function') + return object[getter](); + else + return object[property]; + } + + var setProperty = function(object, setter, property, value) { + // Use setter method if present; otherwise, set the property directly. + if (typeof object[setter] === 'function') + object[setter](value); + else + object[property] = value; + } + + describe('InlineResponse200', function() { + it('should create an instance of InlineResponse200', function() { + // uncomment below and update the code to test InlineResponse200 + //var instane = new vrchatapi.InlineResponse200(); + //expect(instance).to.be.a(vrchatapi.InlineResponse200); + }); + + it('should have the property ok (base name: "ok")', function() { + // uncomment below and update the code to test the property ok + //var instance = new vrchatapi.InlineResponse200(); + //expect(instance).to.be(); + }); + + it('should have the property token (base name: "token")', function() { + // uncomment below and update the code to test the property token + //var instance = new vrchatapi.InlineResponse200(); + //expect(instance).to.be(); + }); + + }); + +})); diff --git a/test/model/InlineResponse2001.spec.js b/test/model/InlineResponse2001.spec.js new file mode 100644 index 0000000..ae05402 --- /dev/null +++ b/test/model/InlineResponse2001.spec.js @@ -0,0 +1,65 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. + define(['expect.js', process.cwd()+'/src/index'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + factory(require('expect.js'), require(process.cwd()+'/src/index')); + } else { + // Browser globals (root is window) + factory(root.expect, root.vrchatapi); + } +}(this, function(expect, vrchatapi) { + 'use strict'; + + var instance; + + beforeEach(function() { + instance = new vrchatapi.InlineResponse2001(); + }); + + var getProperty = function(object, getter, property) { + // Use getter method if present; otherwise, get the property directly. + if (typeof object[getter] === 'function') + return object[getter](); + else + return object[property]; + } + + var setProperty = function(object, setter, property, value) { + // Use setter method if present; otherwise, set the property directly. + if (typeof object[setter] === 'function') + object[setter](value); + else + object[property] = value; + } + + describe('InlineResponse2001', function() { + it('should create an instance of InlineResponse2001', function() { + // uncomment below and update the code to test InlineResponse2001 + //var instane = new vrchatapi.InlineResponse2001(); + //expect(instance).to.be.a(vrchatapi.InlineResponse2001); + }); + + it('should have the property verified (base name: "verified")', function() { + // uncomment below and update the code to test the property verified + //var instance = new vrchatapi.InlineResponse2001(); + //expect(instance).to.be(); + }); + + }); + +})); diff --git a/test/model/InlineResponse2002.spec.js b/test/model/InlineResponse2002.spec.js new file mode 100644 index 0000000..0b64afb --- /dev/null +++ b/test/model/InlineResponse2002.spec.js @@ -0,0 +1,77 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. + define(['expect.js', process.cwd()+'/src/index'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + factory(require('expect.js'), require(process.cwd()+'/src/index')); + } else { + // Browser globals (root is window) + factory(root.expect, root.vrchatapi); + } +}(this, function(expect, vrchatapi) { + 'use strict'; + + var instance; + + beforeEach(function() { + instance = new vrchatapi.InlineResponse2002(); + }); + + var getProperty = function(object, getter, property) { + // Use getter method if present; otherwise, get the property directly. + if (typeof object[getter] === 'function') + return object[getter](); + else + return object[property]; + } + + var setProperty = function(object, setter, property, value) { + // Use setter method if present; otherwise, set the property directly. + if (typeof object[setter] === 'function') + object[setter](value); + else + object[property] = value; + } + + describe('InlineResponse2002', function() { + it('should create an instance of InlineResponse2002', function() { + // uncomment below and update the code to test InlineResponse2002 + //var instane = new vrchatapi.InlineResponse2002(); + //expect(instance).to.be.a(vrchatapi.InlineResponse2002); + }); + + it('should have the property ok (base name: "ok")', function() { + // uncomment below and update the code to test the property ok + //var instance = new vrchatapi.InlineResponse2002(); + //expect(instance).to.be(); + }); + + it('should have the property serverName (base name: "serverName")', function() { + // uncomment below and update the code to test the property serverName + //var instance = new vrchatapi.InlineResponse2002(); + //expect(instance).to.be(); + }); + + it('should have the property buildVersionTag (base name: "buildVersionTag")', function() { + // uncomment below and update the code to test the property buildVersionTag + //var instance = new vrchatapi.InlineResponse2002(); + //expect(instance).to.be(); + }); + + }); + +})); diff --git a/test/model/InlineResponse2003.spec.js b/test/model/InlineResponse2003.spec.js new file mode 100644 index 0000000..466c003 --- /dev/null +++ b/test/model/InlineResponse2003.spec.js @@ -0,0 +1,77 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. + define(['expect.js', process.cwd()+'/src/index'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + factory(require('expect.js'), require(process.cwd()+'/src/index')); + } else { + // Browser globals (root is window) + factory(root.expect, root.vrchatapi); + } +}(this, function(expect, vrchatapi) { + 'use strict'; + + var instance; + + beforeEach(function() { + instance = new vrchatapi.InlineResponse2003(); + }); + + var getProperty = function(object, getter, property) { + // Use getter method if present; otherwise, get the property directly. + if (typeof object[getter] === 'function') + return object[getter](); + else + return object[property]; + } + + var setProperty = function(object, setter, property, value) { + // Use setter method if present; otherwise, set the property directly. + if (typeof object[setter] === 'function') + object[setter](value); + else + object[property] = value; + } + + describe('InlineResponse2003', function() { + it('should create an instance of InlineResponse2003', function() { + // uncomment below and update the code to test InlineResponse2003 + //var instane = new vrchatapi.InlineResponse2003(); + //expect(instance).to.be.a(vrchatapi.InlineResponse2003); + }); + + it('should have the property isFriend (base name: "isFriend")', function() { + // uncomment below and update the code to test the property isFriend + //var instance = new vrchatapi.InlineResponse2003(); + //expect(instance).to.be(); + }); + + it('should have the property outgoingRequest (base name: "outgoingRequest")', function() { + // uncomment below and update the code to test the property outgoingRequest + //var instance = new vrchatapi.InlineResponse2003(); + //expect(instance).to.be(); + }); + + it('should have the property incomingRequest (base name: "incomingRequest")', function() { + // uncomment below and update the code to test the property incomingRequest + //var instance = new vrchatapi.InlineResponse2003(); + //expect(instance).to.be(); + }); + + }); + +})); diff --git a/test/model/InlineResponse2004.spec.js b/test/model/InlineResponse2004.spec.js new file mode 100644 index 0000000..9832a4b --- /dev/null +++ b/test/model/InlineResponse2004.spec.js @@ -0,0 +1,95 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. + define(['expect.js', process.cwd()+'/src/index'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + factory(require('expect.js'), require(process.cwd()+'/src/index')); + } else { + // Browser globals (root is window) + factory(root.expect, root.vrchatapi); + } +}(this, function(expect, vrchatapi) { + 'use strict'; + + var instance; + + beforeEach(function() { + instance = new vrchatapi.InlineResponse2004(); + }); + + var getProperty = function(object, getter, property) { + // Use getter method if present; otherwise, get the property directly. + if (typeof object[getter] === 'function') + return object[getter](); + else + return object[property]; + } + + var setProperty = function(object, setter, property, value) { + // Use setter method if present; otherwise, set the property directly. + if (typeof object[setter] === 'function') + object[setter](value); + else + object[property] = value; + } + + describe('InlineResponse2004', function() { + it('should create an instance of InlineResponse2004', function() { + // uncomment below and update the code to test InlineResponse2004 + //var instane = new vrchatapi.InlineResponse2004(); + //expect(instance).to.be.a(vrchatapi.InlineResponse2004); + }); + + it('should have the property uploadId (base name: "uploadId")', function() { + // uncomment below and update the code to test the property uploadId + //var instance = new vrchatapi.InlineResponse2004(); + //expect(instance).to.be(); + }); + + it('should have the property fileName (base name: "fileName")', function() { + // uncomment below and update the code to test the property fileName + //var instance = new vrchatapi.InlineResponse2004(); + //expect(instance).to.be(); + }); + + it('should have the property nextPartNumber (base name: "nextPartNumber")', function() { + // uncomment below and update the code to test the property nextPartNumber + //var instance = new vrchatapi.InlineResponse2004(); + //expect(instance).to.be(); + }); + + it('should have the property maxParts (base name: "maxParts")', function() { + // uncomment below and update the code to test the property maxParts + //var instance = new vrchatapi.InlineResponse2004(); + //expect(instance).to.be(); + }); + + it('should have the property parts (base name: "parts")', function() { + // uncomment below and update the code to test the property parts + //var instance = new vrchatapi.InlineResponse2004(); + //expect(instance).to.be(); + }); + + it('should have the property etags (base name: "etags")', function() { + // uncomment below and update the code to test the property etags + //var instance = new vrchatapi.InlineResponse2004(); + //expect(instance).to.be(); + }); + + }); + +})); diff --git a/test/model/InlineResponse2005.spec.js b/test/model/InlineResponse2005.spec.js new file mode 100644 index 0000000..3fc4521 --- /dev/null +++ b/test/model/InlineResponse2005.spec.js @@ -0,0 +1,65 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. + define(['expect.js', process.cwd()+'/src/index'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + factory(require('expect.js'), require(process.cwd()+'/src/index')); + } else { + // Browser globals (root is window) + factory(root.expect, root.vrchatapi); + } +}(this, function(expect, vrchatapi) { + 'use strict'; + + var instance; + + beforeEach(function() { + instance = new vrchatapi.InlineResponse2005(); + }); + + var getProperty = function(object, getter, property) { + // Use getter method if present; otherwise, get the property directly. + if (typeof object[getter] === 'function') + return object[getter](); + else + return object[property]; + } + + var setProperty = function(object, setter, property, value) { + // Use setter method if present; otherwise, set the property directly. + if (typeof object[setter] === 'function') + object[setter](value); + else + object[property] = value; + } + + describe('InlineResponse2005', function() { + it('should create an instance of InlineResponse2005', function() { + // uncomment below and update the code to test InlineResponse2005 + //var instane = new vrchatapi.InlineResponse2005(); + //expect(instance).to.be.a(vrchatapi.InlineResponse2005); + }); + + it('should have the property url (base name: "url")', function() { + // uncomment below and update the code to test the property url + //var instance = new vrchatapi.InlineResponse2005(); + //expect(instance).to.be(); + }); + + }); + +})); diff --git a/test/model/InlineResponse401.spec.js b/test/model/InlineResponse401.spec.js new file mode 100644 index 0000000..21083ee --- /dev/null +++ b/test/model/InlineResponse401.spec.js @@ -0,0 +1,65 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. + define(['expect.js', process.cwd()+'/src/index'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + factory(require('expect.js'), require(process.cwd()+'/src/index')); + } else { + // Browser globals (root is window) + factory(root.expect, root.vrchatapi); + } +}(this, function(expect, vrchatapi) { + 'use strict'; + + var instance; + + beforeEach(function() { + instance = new vrchatapi.InlineResponse401(); + }); + + var getProperty = function(object, getter, property) { + // Use getter method if present; otherwise, get the property directly. + if (typeof object[getter] === 'function') + return object[getter](); + else + return object[property]; + } + + var setProperty = function(object, setter, property, value) { + // Use setter method if present; otherwise, set the property directly. + if (typeof object[setter] === 'function') + object[setter](value); + else + object[property] = value; + } + + describe('InlineResponse401', function() { + it('should create an instance of InlineResponse401', function() { + // uncomment below and update the code to test InlineResponse401 + //var instane = new vrchatapi.InlineResponse401(); + //expect(instance).to.be.a(vrchatapi.InlineResponse401); + }); + + it('should have the property error (base name: "error")', function() { + // uncomment below and update the code to test the property error + //var instance = new vrchatapi.InlineResponse401(); + //expect(instance).to.be(); + }); + + }); + +})); diff --git a/test/model/LimitedUser.spec.js b/test/model/LimitedUser.spec.js new file mode 100644 index 0000000..63cd38d --- /dev/null +++ b/test/model/LimitedUser.spec.js @@ -0,0 +1,155 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. + define(['expect.js', process.cwd()+'/src/index'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + factory(require('expect.js'), require(process.cwd()+'/src/index')); + } else { + // Browser globals (root is window) + factory(root.expect, root.vrchatapi); + } +}(this, function(expect, vrchatapi) { + 'use strict'; + + var instance; + + beforeEach(function() { + instance = new vrchatapi.LimitedUser(); + }); + + var getProperty = function(object, getter, property) { + // Use getter method if present; otherwise, get the property directly. + if (typeof object[getter] === 'function') + return object[getter](); + else + return object[property]; + } + + var setProperty = function(object, setter, property, value) { + // Use setter method if present; otherwise, set the property directly. + if (typeof object[setter] === 'function') + object[setter](value); + else + object[property] = value; + } + + describe('LimitedUser', function() { + it('should create an instance of LimitedUser', function() { + // uncomment below and update the code to test LimitedUser + //var instane = new vrchatapi.LimitedUser(); + //expect(instance).to.be.a(vrchatapi.LimitedUser); + }); + + it('should have the property id (base name: "id")', function() { + // uncomment below and update the code to test the property id + //var instance = new vrchatapi.LimitedUser(); + //expect(instance).to.be(); + }); + + it('should have the property username (base name: "username")', function() { + // uncomment below and update the code to test the property username + //var instance = new vrchatapi.LimitedUser(); + //expect(instance).to.be(); + }); + + it('should have the property displayName (base name: "displayName")', function() { + // uncomment below and update the code to test the property displayName + //var instance = new vrchatapi.LimitedUser(); + //expect(instance).to.be(); + }); + + it('should have the property bio (base name: "bio")', function() { + // uncomment below and update the code to test the property bio + //var instance = new vrchatapi.LimitedUser(); + //expect(instance).to.be(); + }); + + it('should have the property userIcon (base name: "userIcon")', function() { + // uncomment below and update the code to test the property userIcon + //var instance = new vrchatapi.LimitedUser(); + //expect(instance).to.be(); + }); + + it('should have the property profilePicOverride (base name: "profilePicOverride")', function() { + // uncomment below and update the code to test the property profilePicOverride + //var instance = new vrchatapi.LimitedUser(); + //expect(instance).to.be(); + }); + + it('should have the property statusDescription (base name: "statusDescription")', function() { + // uncomment below and update the code to test the property statusDescription + //var instance = new vrchatapi.LimitedUser(); + //expect(instance).to.be(); + }); + + it('should have the property currentAvatarImageUrl (base name: "currentAvatarImageUrl")', function() { + // uncomment below and update the code to test the property currentAvatarImageUrl + //var instance = new vrchatapi.LimitedUser(); + //expect(instance).to.be(); + }); + + it('should have the property currentAvatarThumbnailImageUrl (base name: "currentAvatarThumbnailImageUrl")', function() { + // uncomment below and update the code to test the property currentAvatarThumbnailImageUrl + //var instance = new vrchatapi.LimitedUser(); + //expect(instance).to.be(); + }); + + it('should have the property fallbackAvatar (base name: "fallbackAvatar")', function() { + // uncomment below and update the code to test the property fallbackAvatar + //var instance = new vrchatapi.LimitedUser(); + //expect(instance).to.be(); + }); + + it('should have the property developerType (base name: "developerType")', function() { + // uncomment below and update the code to test the property developerType + //var instance = new vrchatapi.LimitedUser(); + //expect(instance).to.be(); + }); + + it('should have the property lastPlatform (base name: "last_platform")', function() { + // uncomment below and update the code to test the property lastPlatform + //var instance = new vrchatapi.LimitedUser(); + //expect(instance).to.be(); + }); + + it('should have the property status (base name: "status")', function() { + // uncomment below and update the code to test the property status + //var instance = new vrchatapi.LimitedUser(); + //expect(instance).to.be(); + }); + + it('should have the property isFriend (base name: "isFriend")', function() { + // uncomment below and update the code to test the property isFriend + //var instance = new vrchatapi.LimitedUser(); + //expect(instance).to.be(); + }); + + it('should have the property location (base name: "location")', function() { + // uncomment below and update the code to test the property location + //var instance = new vrchatapi.LimitedUser(); + //expect(instance).to.be(); + }); + + it('should have the property tags (base name: "tags")', function() { + // uncomment below and update the code to test the property tags + //var instance = new vrchatapi.LimitedUser(); + //expect(instance).to.be(); + }); + + }); + +})); diff --git a/test/model/LimitedWorld.spec.js b/test/model/LimitedWorld.spec.js new file mode 100644 index 0000000..7892bb4 --- /dev/null +++ b/test/model/LimitedWorld.spec.js @@ -0,0 +1,173 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. + define(['expect.js', process.cwd()+'/src/index'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + factory(require('expect.js'), require(process.cwd()+'/src/index')); + } else { + // Browser globals (root is window) + factory(root.expect, root.vrchatapi); + } +}(this, function(expect, vrchatapi) { + 'use strict'; + + var instance; + + beforeEach(function() { + instance = new vrchatapi.LimitedWorld(); + }); + + var getProperty = function(object, getter, property) { + // Use getter method if present; otherwise, get the property directly. + if (typeof object[getter] === 'function') + return object[getter](); + else + return object[property]; + } + + var setProperty = function(object, setter, property, value) { + // Use setter method if present; otherwise, set the property directly. + if (typeof object[setter] === 'function') + object[setter](value); + else + object[property] = value; + } + + describe('LimitedWorld', function() { + it('should create an instance of LimitedWorld', function() { + // uncomment below and update the code to test LimitedWorld + //var instane = new vrchatapi.LimitedWorld(); + //expect(instance).to.be.a(vrchatapi.LimitedWorld); + }); + + it('should have the property authorId (base name: "authorId")', function() { + // uncomment below and update the code to test the property authorId + //var instance = new vrchatapi.LimitedWorld(); + //expect(instance).to.be(); + }); + + it('should have the property authorName (base name: "authorName")', function() { + // uncomment below and update the code to test the property authorName + //var instance = new vrchatapi.LimitedWorld(); + //expect(instance).to.be(); + }); + + it('should have the property capacity (base name: "capacity")', function() { + // uncomment below and update the code to test the property capacity + //var instance = new vrchatapi.LimitedWorld(); + //expect(instance).to.be(); + }); + + it('should have the property createdAt (base name: "created_at")', function() { + // uncomment below and update the code to test the property createdAt + //var instance = new vrchatapi.LimitedWorld(); + //expect(instance).to.be(); + }); + + it('should have the property favorites (base name: "favorites")', function() { + // uncomment below and update the code to test the property favorites + //var instance = new vrchatapi.LimitedWorld(); + //expect(instance).to.be(); + }); + + it('should have the property heat (base name: "heat")', function() { + // uncomment below and update the code to test the property heat + //var instance = new vrchatapi.LimitedWorld(); + //expect(instance).to.be(); + }); + + it('should have the property id (base name: "id")', function() { + // uncomment below and update the code to test the property id + //var instance = new vrchatapi.LimitedWorld(); + //expect(instance).to.be(); + }); + + it('should have the property imageUrl (base name: "imageUrl")', function() { + // uncomment below and update the code to test the property imageUrl + //var instance = new vrchatapi.LimitedWorld(); + //expect(instance).to.be(); + }); + + it('should have the property labsPublicationDate (base name: "labsPublicationDate")', function() { + // uncomment below and update the code to test the property labsPublicationDate + //var instance = new vrchatapi.LimitedWorld(); + //expect(instance).to.be(); + }); + + it('should have the property name (base name: "name")', function() { + // uncomment below and update the code to test the property name + //var instance = new vrchatapi.LimitedWorld(); + //expect(instance).to.be(); + }); + + it('should have the property occupants (base name: "occupants")', function() { + // uncomment below and update the code to test the property occupants + //var instance = new vrchatapi.LimitedWorld(); + //expect(instance).to.be(); + }); + + it('should have the property organization (base name: "organization")', function() { + // uncomment below and update the code to test the property organization + //var instance = new vrchatapi.LimitedWorld(); + //expect(instance).to.be(); + }); + + it('should have the property popularity (base name: "popularity")', function() { + // uncomment below and update the code to test the property popularity + //var instance = new vrchatapi.LimitedWorld(); + //expect(instance).to.be(); + }); + + it('should have the property publicationDate (base name: "publicationDate")', function() { + // uncomment below and update the code to test the property publicationDate + //var instance = new vrchatapi.LimitedWorld(); + //expect(instance).to.be(); + }); + + it('should have the property releaseStatus (base name: "releaseStatus")', function() { + // uncomment below and update the code to test the property releaseStatus + //var instance = new vrchatapi.LimitedWorld(); + //expect(instance).to.be(); + }); + + it('should have the property tags (base name: "tags")', function() { + // uncomment below and update the code to test the property tags + //var instance = new vrchatapi.LimitedWorld(); + //expect(instance).to.be(); + }); + + it('should have the property thumbnailImageUrl (base name: "thumbnailImageUrl")', function() { + // uncomment below and update the code to test the property thumbnailImageUrl + //var instance = new vrchatapi.LimitedWorld(); + //expect(instance).to.be(); + }); + + it('should have the property unityPackages (base name: "unityPackages")', function() { + // uncomment below and update the code to test the property unityPackages + //var instance = new vrchatapi.LimitedWorld(); + //expect(instance).to.be(); + }); + + it('should have the property updatedAt (base name: "updated_at")', function() { + // uncomment below and update the code to test the property updatedAt + //var instance = new vrchatapi.LimitedWorld(); + //expect(instance).to.be(); + }); + + }); + +})); diff --git a/test/model/MIMEType.spec.js b/test/model/MIMEType.spec.js new file mode 100644 index 0000000..757f617 --- /dev/null +++ b/test/model/MIMEType.spec.js @@ -0,0 +1,58 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. + define(['expect.js', process.cwd()+'/src/index'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + factory(require('expect.js'), require(process.cwd()+'/src/index')); + } else { + // Browser globals (root is window) + factory(root.expect, root.vrchatapi); + } +}(this, function(expect, vrchatapi) { + 'use strict'; + + var instance; + + beforeEach(function() { + }); + + var getProperty = function(object, getter, property) { + // Use getter method if present; otherwise, get the property directly. + if (typeof object[getter] === 'function') + return object[getter](); + else + return object[property]; + } + + var setProperty = function(object, setter, property, value) { + // Use setter method if present; otherwise, set the property directly. + if (typeof object[setter] === 'function') + object[setter](value); + else + object[property] = value; + } + + describe('MIMEType', function() { + it('should create an instance of MIMEType', function() { + // uncomment below and update the code to test MIMEType + //var instane = new vrchatapi.MIMEType(); + //expect(instance).to.be.a(vrchatapi.MIMEType); + }); + + }); + +})); diff --git a/test/model/Notification.spec.js b/test/model/Notification.spec.js new file mode 100644 index 0000000..2fcf21b --- /dev/null +++ b/test/model/Notification.spec.js @@ -0,0 +1,107 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. + define(['expect.js', process.cwd()+'/src/index'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + factory(require('expect.js'), require(process.cwd()+'/src/index')); + } else { + // Browser globals (root is window) + factory(root.expect, root.vrchatapi); + } +}(this, function(expect, vrchatapi) { + 'use strict'; + + var instance; + + beforeEach(function() { + instance = new vrchatapi.Notification(); + }); + + var getProperty = function(object, getter, property) { + // Use getter method if present; otherwise, get the property directly. + if (typeof object[getter] === 'function') + return object[getter](); + else + return object[property]; + } + + var setProperty = function(object, setter, property, value) { + // Use setter method if present; otherwise, set the property directly. + if (typeof object[setter] === 'function') + object[setter](value); + else + object[property] = value; + } + + describe('Notification', function() { + it('should create an instance of Notification', function() { + // uncomment below and update the code to test Notification + //var instane = new vrchatapi.Notification(); + //expect(instance).to.be.a(vrchatapi.Notification); + }); + + it('should have the property id (base name: "id")', function() { + // uncomment below and update the code to test the property id + //var instance = new vrchatapi.Notification(); + //expect(instance).to.be(); + }); + + it('should have the property senderUserId (base name: "senderUserId")', function() { + // uncomment below and update the code to test the property senderUserId + //var instance = new vrchatapi.Notification(); + //expect(instance).to.be(); + }); + + it('should have the property senderUsername (base name: "senderUsername")', function() { + // uncomment below and update the code to test the property senderUsername + //var instance = new vrchatapi.Notification(); + //expect(instance).to.be(); + }); + + it('should have the property type (base name: "type")', function() { + // uncomment below and update the code to test the property type + //var instance = new vrchatapi.Notification(); + //expect(instance).to.be(); + }); + + it('should have the property message (base name: "message")', function() { + // uncomment below and update the code to test the property message + //var instance = new vrchatapi.Notification(); + //expect(instance).to.be(); + }); + + it('should have the property details (base name: "details")', function() { + // uncomment below and update the code to test the property details + //var instance = new vrchatapi.Notification(); + //expect(instance).to.be(); + }); + + it('should have the property seen (base name: "seen")', function() { + // uncomment below and update the code to test the property seen + //var instance = new vrchatapi.Notification(); + //expect(instance).to.be(); + }); + + it('should have the property createdAt (base name: "created_at")', function() { + // uncomment below and update the code to test the property createdAt + //var instance = new vrchatapi.Notification(); + //expect(instance).to.be(); + }); + + }); + +})); diff --git a/test/model/NotificationType.spec.js b/test/model/NotificationType.spec.js new file mode 100644 index 0000000..e9eed26 --- /dev/null +++ b/test/model/NotificationType.spec.js @@ -0,0 +1,58 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. + define(['expect.js', process.cwd()+'/src/index'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + factory(require('expect.js'), require(process.cwd()+'/src/index')); + } else { + // Browser globals (root is window) + factory(root.expect, root.vrchatapi); + } +}(this, function(expect, vrchatapi) { + 'use strict'; + + var instance; + + beforeEach(function() { + }); + + var getProperty = function(object, getter, property) { + // Use getter method if present; otherwise, get the property directly. + if (typeof object[getter] === 'function') + return object[getter](); + else + return object[property]; + } + + var setProperty = function(object, setter, property, value) { + // Use setter method if present; otherwise, set the property directly. + if (typeof object[setter] === 'function') + object[setter](value); + else + object[property] = value; + } + + describe('NotificationType', function() { + it('should create an instance of NotificationType', function() { + // uncomment below and update the code to test NotificationType + //var instane = new vrchatapi.NotificationType(); + //expect(instance).to.be.a(vrchatapi.NotificationType); + }); + + }); + +})); diff --git a/test/model/ReleaseStatus.spec.js b/test/model/ReleaseStatus.spec.js new file mode 100644 index 0000000..263150e --- /dev/null +++ b/test/model/ReleaseStatus.spec.js @@ -0,0 +1,58 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. + define(['expect.js', process.cwd()+'/src/index'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + factory(require('expect.js'), require(process.cwd()+'/src/index')); + } else { + // Browser globals (root is window) + factory(root.expect, root.vrchatapi); + } +}(this, function(expect, vrchatapi) { + 'use strict'; + + var instance; + + beforeEach(function() { + }); + + var getProperty = function(object, getter, property) { + // Use getter method if present; otherwise, get the property directly. + if (typeof object[getter] === 'function') + return object[getter](); + else + return object[property]; + } + + var setProperty = function(object, setter, property, value) { + // Use setter method if present; otherwise, set the property directly. + if (typeof object[setter] === 'function') + object[setter](value); + else + object[property] = value; + } + + describe('ReleaseStatus', function() { + it('should create an instance of ReleaseStatus', function() { + // uncomment below and update the code to test ReleaseStatus + //var instane = new vrchatapi.ReleaseStatus(); + //expect(instance).to.be.a(vrchatapi.ReleaseStatus); + }); + + }); + +})); diff --git a/test/model/Response.spec.js b/test/model/Response.spec.js new file mode 100644 index 0000000..063fa62 --- /dev/null +++ b/test/model/Response.spec.js @@ -0,0 +1,71 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. + define(['expect.js', process.cwd()+'/src/index'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + factory(require('expect.js'), require(process.cwd()+'/src/index')); + } else { + // Browser globals (root is window) + factory(root.expect, root.vrchatapi); + } +}(this, function(expect, vrchatapi) { + 'use strict'; + + var instance; + + beforeEach(function() { + instance = new vrchatapi.Response(); + }); + + var getProperty = function(object, getter, property) { + // Use getter method if present; otherwise, get the property directly. + if (typeof object[getter] === 'function') + return object[getter](); + else + return object[property]; + } + + var setProperty = function(object, setter, property, value) { + // Use setter method if present; otherwise, set the property directly. + if (typeof object[setter] === 'function') + object[setter](value); + else + object[property] = value; + } + + describe('Response', function() { + it('should create an instance of Response', function() { + // uncomment below and update the code to test Response + //var instane = new vrchatapi.Response(); + //expect(instance).to.be.a(vrchatapi.Response); + }); + + it('should have the property message (base name: "message")', function() { + // uncomment below and update the code to test the property message + //var instance = new vrchatapi.Response(); + //expect(instance).to.be(); + }); + + it('should have the property statusCode (base name: "status_code")', function() { + // uncomment below and update the code to test the property statusCode + //var instance = new vrchatapi.Response(); + //expect(instance).to.be(); + }); + + }); + +})); diff --git a/test/model/Success.spec.js b/test/model/Success.spec.js new file mode 100644 index 0000000..fbab21d --- /dev/null +++ b/test/model/Success.spec.js @@ -0,0 +1,65 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. + define(['expect.js', process.cwd()+'/src/index'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + factory(require('expect.js'), require(process.cwd()+'/src/index')); + } else { + // Browser globals (root is window) + factory(root.expect, root.vrchatapi); + } +}(this, function(expect, vrchatapi) { + 'use strict'; + + var instance; + + beforeEach(function() { + instance = new vrchatapi.Success(); + }); + + var getProperty = function(object, getter, property) { + // Use getter method if present; otherwise, get the property directly. + if (typeof object[getter] === 'function') + return object[getter](); + else + return object[property]; + } + + var setProperty = function(object, setter, property, value) { + // Use setter method if present; otherwise, set the property directly. + if (typeof object[setter] === 'function') + object[setter](value); + else + object[property] = value; + } + + describe('Success', function() { + it('should create an instance of Success', function() { + // uncomment below and update the code to test Success + //var instane = new vrchatapi.Success(); + //expect(instance).to.be.a(vrchatapi.Success); + }); + + it('should have the property success (base name: "success")', function() { + // uncomment below and update the code to test the property success + //var instance = new vrchatapi.Success(); + //expect(instance).to.be(); + }); + + }); + +})); diff --git a/test/model/User.spec.js b/test/model/User.spec.js new file mode 100644 index 0000000..1f0c66f --- /dev/null +++ b/test/model/User.spec.js @@ -0,0 +1,203 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. + define(['expect.js', process.cwd()+'/src/index'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + factory(require('expect.js'), require(process.cwd()+'/src/index')); + } else { + // Browser globals (root is window) + factory(root.expect, root.vrchatapi); + } +}(this, function(expect, vrchatapi) { + 'use strict'; + + var instance; + + beforeEach(function() { + instance = new vrchatapi.User(); + }); + + var getProperty = function(object, getter, property) { + // Use getter method if present; otherwise, get the property directly. + if (typeof object[getter] === 'function') + return object[getter](); + else + return object[property]; + } + + var setProperty = function(object, setter, property, value) { + // Use setter method if present; otherwise, set the property directly. + if (typeof object[setter] === 'function') + object[setter](value); + else + object[property] = value; + } + + describe('User', function() { + it('should create an instance of User', function() { + // uncomment below and update the code to test User + //var instane = new vrchatapi.User(); + //expect(instance).to.be.a(vrchatapi.User); + }); + + it('should have the property id (base name: "id")', function() { + // uncomment below and update the code to test the property id + //var instance = new vrchatapi.User(); + //expect(instance).to.be(); + }); + + it('should have the property username (base name: "username")', function() { + // uncomment below and update the code to test the property username + //var instance = new vrchatapi.User(); + //expect(instance).to.be(); + }); + + it('should have the property displayName (base name: "displayName")', function() { + // uncomment below and update the code to test the property displayName + //var instance = new vrchatapi.User(); + //expect(instance).to.be(); + }); + + it('should have the property userIcon (base name: "userIcon")', function() { + // uncomment below and update the code to test the property userIcon + //var instance = new vrchatapi.User(); + //expect(instance).to.be(); + }); + + it('should have the property bio (base name: "bio")', function() { + // uncomment below and update the code to test the property bio + //var instance = new vrchatapi.User(); + //expect(instance).to.be(); + }); + + it('should have the property bioLinks (base name: "bioLinks")', function() { + // uncomment below and update the code to test the property bioLinks + //var instance = new vrchatapi.User(); + //expect(instance).to.be(); + }); + + it('should have the property profilePicOverride (base name: "profilePicOverride")', function() { + // uncomment below and update the code to test the property profilePicOverride + //var instance = new vrchatapi.User(); + //expect(instance).to.be(); + }); + + it('should have the property statusDescription (base name: "statusDescription")', function() { + // uncomment below and update the code to test the property statusDescription + //var instance = new vrchatapi.User(); + //expect(instance).to.be(); + }); + + it('should have the property currentAvatarImageUrl (base name: "currentAvatarImageUrl")', function() { + // uncomment below and update the code to test the property currentAvatarImageUrl + //var instance = new vrchatapi.User(); + //expect(instance).to.be(); + }); + + it('should have the property currentAvatarThumbnailImageUrl (base name: "currentAvatarThumbnailImageUrl")', function() { + // uncomment below and update the code to test the property currentAvatarThumbnailImageUrl + //var instance = new vrchatapi.User(); + //expect(instance).to.be(); + }); + + it('should have the property fallbackAvatar (base name: "fallbackAvatar")', function() { + // uncomment below and update the code to test the property fallbackAvatar + //var instance = new vrchatapi.User(); + //expect(instance).to.be(); + }); + + it('should have the property state (base name: "state")', function() { + // uncomment below and update the code to test the property state + //var instance = new vrchatapi.User(); + //expect(instance).to.be(); + }); + + it('should have the property tags (base name: "tags")', function() { + // uncomment below and update the code to test the property tags + //var instance = new vrchatapi.User(); + //expect(instance).to.be(); + }); + + it('should have the property developerType (base name: "developerType")', function() { + // uncomment below and update the code to test the property developerType + //var instance = new vrchatapi.User(); + //expect(instance).to.be(); + }); + + it('should have the property lastLogin (base name: "last_login")', function() { + // uncomment below and update the code to test the property lastLogin + //var instance = new vrchatapi.User(); + //expect(instance).to.be(); + }); + + it('should have the property lastPlatform (base name: "last_platform")', function() { + // uncomment below and update the code to test the property lastPlatform + //var instance = new vrchatapi.User(); + //expect(instance).to.be(); + }); + + it('should have the property allowAvatarCopying (base name: "allowAvatarCopying")', function() { + // uncomment below and update the code to test the property allowAvatarCopying + //var instance = new vrchatapi.User(); + //expect(instance).to.be(); + }); + + it('should have the property status (base name: "status")', function() { + // uncomment below and update the code to test the property status + //var instance = new vrchatapi.User(); + //expect(instance).to.be(); + }); + + it('should have the property dateJoined (base name: "date_joined")', function() { + // uncomment below and update the code to test the property dateJoined + //var instance = new vrchatapi.User(); + //expect(instance).to.be(); + }); + + it('should have the property isFriend (base name: "isFriend")', function() { + // uncomment below and update the code to test the property isFriend + //var instance = new vrchatapi.User(); + //expect(instance).to.be(); + }); + + it('should have the property friendKey (base name: "friendKey")', function() { + // uncomment below and update the code to test the property friendKey + //var instance = new vrchatapi.User(); + //expect(instance).to.be(); + }); + + it('should have the property worldId (base name: "worldId")', function() { + // uncomment below and update the code to test the property worldId + //var instance = new vrchatapi.User(); + //expect(instance).to.be(); + }); + + it('should have the property instanceId (base name: "instanceId")', function() { + // uncomment below and update the code to test the property instanceId + //var instance = new vrchatapi.User(); + //expect(instance).to.be(); + }); + + it('should have the property location (base name: "location")', function() { + // uncomment below and update the code to test the property location + //var instance = new vrchatapi.User(); + //expect(instance).to.be(); + }); + + }); + +})); diff --git a/test/model/UserState.spec.js b/test/model/UserState.spec.js new file mode 100644 index 0000000..ea74aa6 --- /dev/null +++ b/test/model/UserState.spec.js @@ -0,0 +1,58 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. + define(['expect.js', process.cwd()+'/src/index'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + factory(require('expect.js'), require(process.cwd()+'/src/index')); + } else { + // Browser globals (root is window) + factory(root.expect, root.vrchatapi); + } +}(this, function(expect, vrchatapi) { + 'use strict'; + + var instance; + + beforeEach(function() { + }); + + var getProperty = function(object, getter, property) { + // Use getter method if present; otherwise, get the property directly. + if (typeof object[getter] === 'function') + return object[getter](); + else + return object[property]; + } + + var setProperty = function(object, setter, property, value) { + // Use setter method if present; otherwise, set the property directly. + if (typeof object[setter] === 'function') + object[setter](value); + else + object[property] = value; + } + + describe('UserState', function() { + it('should create an instance of UserState', function() { + // uncomment below and update the code to test UserState + //var instane = new vrchatapi.UserState(); + //expect(instance).to.be.a(vrchatapi.UserState); + }); + + }); + +})); diff --git a/test/model/UserStatus.spec.js b/test/model/UserStatus.spec.js new file mode 100644 index 0000000..9283c9a --- /dev/null +++ b/test/model/UserStatus.spec.js @@ -0,0 +1,58 @@ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + * + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. + define(['expect.js', process.cwd()+'/src/index'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + factory(require('expect.js'), require(process.cwd()+'/src/index')); + } else { + // Browser globals (root is window) + factory(root.expect, root.vrchatapi); + } +}(this, function(expect, vrchatapi) { + 'use strict'; + + var instance; + + beforeEach(function() { + }); + + var getProperty = function(object, getter, property) { + // Use getter method if present; otherwise, get the property directly. + if (typeof object[getter] === 'function') + return object[getter](); + else + return object[property]; + } + + var setProperty = function(object, setter, property, value) { + // Use setter method if present; otherwise, set the property directly. + if (typeof object[setter] === 'function') + object[setter](value); + else + object[property] = value; + } + + describe('UserStatus', function() { + it('should create an instance of UserStatus', function() { + // uncomment below and update the code to test UserStatus + //var instane = new vrchatapi.UserStatus(); + //expect(instance).to.be.a(vrchatapi.UserStatus); + }); + + }); + +})); From 76beb786cb6768e45fdb38d5677a7e2171e710ee Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Foorack=20/=20Max=20Fax=C3=A4lv?= Date: Mon, 26 Jul 2021 09:18:01 +0200 Subject: [PATCH 004/130] Minor docs improvement --- README.md | 2 +- docs/AuthenticationApi.md | 20 -------------------- docs/FilesApi.md | 40 --------------------------------------- docs/FriendsApi.md | 20 -------------------- docs/NotificationsApi.md | 20 -------------------- docs/UsersApi.md | 20 -------------------- docs/WorldsApi.md | 4 ---- generate.sh | 5 ++++- 8 files changed, 5 insertions(+), 126 deletions(-) diff --git a/README.md b/README.md index 582cc1c..eb68020 100644 --- a/README.md +++ b/README.md @@ -134,7 +134,7 @@ authCookie.apiKey = "YOUR API KEY" var api = new vrchatapi.AuthenticationApi() var userId = "userId_example"; // {String} -api.deleteUserById(userId).then(function(data) { +api.getUser(userId).then(function(data) { console.log('API called successfully. Returned data: ' + data); }, function(error) { console.error(error); diff --git a/docs/AuthenticationApi.md b/docs/AuthenticationApi.md index c689ee8..52e2615 100644 --- a/docs/AuthenticationApi.md +++ b/docs/AuthenticationApi.md @@ -29,13 +29,9 @@ let defaultClient = vrchatapi.ApiClient.instance; // Configure API key authorization: apiKeyCookie let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; apiKeyCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//apiKeyCookie.apiKeyPrefix = 'Token'; // Configure API key authorization: authCookie let authCookie = defaultClient.authentications['authCookie']; authCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//authCookie.apiKeyPrefix = 'Token'; let apiInstance = new vrchatapi.AuthenticationApi(); let userId = "userId_example"; // String | @@ -84,8 +80,6 @@ let defaultClient = vrchatapi.ApiClient.instance; // Configure API key authorization: authCookie let authCookie = defaultClient.authentications['authCookie']; authCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//authCookie.apiKeyPrefix = 'Token'; // Configure HTTP basic authorization: authHeader let authHeader = defaultClient.authentications['authHeader']; authHeader.username = 'YOUR USERNAME'; @@ -93,8 +87,6 @@ authHeader.password = 'YOUR PASSWORD'; // Configure API key authorization: twoFactorAuthCookie let twoFactorAuthCookie = defaultClient.authentications['twoFactorAuthCookie']; twoFactorAuthCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//twoFactorAuthCookie.apiKeyPrefix = 'Token'; let apiInstance = new vrchatapi.AuthenticationApi(); apiInstance.getCurrentUser().then((data) => { @@ -139,13 +131,9 @@ let defaultClient = vrchatapi.ApiClient.instance; // Configure API key authorization: apiKeyCookie let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; apiKeyCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//apiKeyCookie.apiKeyPrefix = 'Token'; // Configure API key authorization: authCookie let authCookie = defaultClient.authentications['authCookie']; authCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//authCookie.apiKeyPrefix = 'Token'; let apiInstance = new vrchatapi.AuthenticationApi(); apiInstance.logout().then((data) => { @@ -190,8 +178,6 @@ let defaultClient = vrchatapi.ApiClient.instance; // Configure API key authorization: authCookie let authCookie = defaultClient.authentications['authCookie']; authCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//authCookie.apiKeyPrefix = 'Token'; let apiInstance = new vrchatapi.AuthenticationApi(); let opts = { @@ -242,13 +228,9 @@ let defaultClient = vrchatapi.ApiClient.instance; // Configure API key authorization: apiKeyCookie let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; apiKeyCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//apiKeyCookie.apiKeyPrefix = 'Token'; // Configure API key authorization: authCookie let authCookie = defaultClient.authentications['authCookie']; authCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//authCookie.apiKeyPrefix = 'Token'; let apiInstance = new vrchatapi.AuthenticationApi(); apiInstance.verifyAuthToken().then((data) => { @@ -293,8 +275,6 @@ let defaultClient = vrchatapi.ApiClient.instance; // Configure API key authorization: authCookie let authCookie = defaultClient.authentications['authCookie']; authCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//authCookie.apiKeyPrefix = 'Token'; let apiInstance = new vrchatapi.AuthenticationApi(); let opts = { diff --git a/docs/FilesApi.md b/docs/FilesApi.md index 492b4e5..c73b1f3 100644 --- a/docs/FilesApi.md +++ b/docs/FilesApi.md @@ -33,13 +33,9 @@ let defaultClient = vrchatapi.ApiClient.instance; // Configure API key authorization: apiKeyCookie let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; apiKeyCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//apiKeyCookie.apiKeyPrefix = 'Token'; // Configure API key authorization: authCookie let authCookie = defaultClient.authentications['authCookie']; authCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//authCookie.apiKeyPrefix = 'Token'; let apiInstance = new vrchatapi.FilesApi(); let opts = { @@ -90,13 +86,9 @@ let defaultClient = vrchatapi.ApiClient.instance; // Configure API key authorization: apiKeyCookie let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; apiKeyCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//apiKeyCookie.apiKeyPrefix = 'Token'; // Configure API key authorization: authCookie let authCookie = defaultClient.authentications['authCookie']; authCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//authCookie.apiKeyPrefix = 'Token'; let apiInstance = new vrchatapi.FilesApi(); let fileId = file_00000000-0000-0000-0000-000000000000; // String | @@ -145,13 +137,9 @@ let defaultClient = vrchatapi.ApiClient.instance; // Configure API key authorization: apiKeyCookie let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; apiKeyCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//apiKeyCookie.apiKeyPrefix = 'Token'; // Configure API key authorization: authCookie let authCookie = defaultClient.authentications['authCookie']; authCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//authCookie.apiKeyPrefix = 'Token'; let apiInstance = new vrchatapi.FilesApi(); let fileId = file_00000000-0000-0000-0000-000000000000; // String | @@ -200,13 +188,9 @@ let defaultClient = vrchatapi.ApiClient.instance; // Configure API key authorization: apiKeyCookie let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; apiKeyCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//apiKeyCookie.apiKeyPrefix = 'Token'; // Configure API key authorization: authCookie let authCookie = defaultClient.authentications['authCookie']; authCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//authCookie.apiKeyPrefix = 'Token'; let apiInstance = new vrchatapi.FilesApi(); let fileId = file_00000000-0000-0000-0000-000000000000; // String | @@ -257,13 +241,9 @@ let defaultClient = vrchatapi.ApiClient.instance; // Configure API key authorization: apiKeyCookie let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; apiKeyCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//apiKeyCookie.apiKeyPrefix = 'Token'; // Configure API key authorization: authCookie let authCookie = defaultClient.authentications['authCookie']; authCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//authCookie.apiKeyPrefix = 'Token'; let apiInstance = new vrchatapi.FilesApi(); let fileId = file_00000000-0000-0000-0000-000000000000; // String | @@ -314,13 +294,9 @@ let defaultClient = vrchatapi.ApiClient.instance; // Configure API key authorization: apiKeyCookie let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; apiKeyCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//apiKeyCookie.apiKeyPrefix = 'Token'; // Configure API key authorization: authCookie let authCookie = defaultClient.authentications['authCookie']; authCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//authCookie.apiKeyPrefix = 'Token'; let apiInstance = new vrchatapi.FilesApi(); let fileId = file_00000000-0000-0000-0000-000000000000; // String | @@ -377,13 +353,9 @@ let defaultClient = vrchatapi.ApiClient.instance; // Configure API key authorization: apiKeyCookie let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; apiKeyCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//apiKeyCookie.apiKeyPrefix = 'Token'; // Configure API key authorization: authCookie let authCookie = defaultClient.authentications['authCookie']; authCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//authCookie.apiKeyPrefix = 'Token'; let apiInstance = new vrchatapi.FilesApi(); let fileId = file_00000000-0000-0000-0000-000000000000; // String | @@ -432,13 +404,9 @@ let defaultClient = vrchatapi.ApiClient.instance; // Configure API key authorization: apiKeyCookie let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; apiKeyCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//apiKeyCookie.apiKeyPrefix = 'Token'; // Configure API key authorization: authCookie let authCookie = defaultClient.authentications['authCookie']; authCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//authCookie.apiKeyPrefix = 'Token'; let apiInstance = new vrchatapi.FilesApi(); let fileId = file_00000000-0000-0000-0000-000000000000; // String | @@ -491,13 +459,9 @@ let defaultClient = vrchatapi.ApiClient.instance; // Configure API key authorization: apiKeyCookie let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; apiKeyCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//apiKeyCookie.apiKeyPrefix = 'Token'; // Configure API key authorization: authCookie let authCookie = defaultClient.authentications['authCookie']; authCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//authCookie.apiKeyPrefix = 'Token'; let apiInstance = new vrchatapi.FilesApi(); let opts = { @@ -554,13 +518,9 @@ let defaultClient = vrchatapi.ApiClient.instance; // Configure API key authorization: apiKeyCookie let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; apiKeyCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//apiKeyCookie.apiKeyPrefix = 'Token'; // Configure API key authorization: authCookie let authCookie = defaultClient.authentications['authCookie']; authCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//authCookie.apiKeyPrefix = 'Token'; let apiInstance = new vrchatapi.FilesApi(); let fileId = file_00000000-0000-0000-0000-000000000000; // String | diff --git a/docs/FriendsApi.md b/docs/FriendsApi.md index db79599..e14b27d 100644 --- a/docs/FriendsApi.md +++ b/docs/FriendsApi.md @@ -28,13 +28,9 @@ let defaultClient = vrchatapi.ApiClient.instance; // Configure API key authorization: apiKeyCookie let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; apiKeyCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//apiKeyCookie.apiKeyPrefix = 'Token'; // Configure API key authorization: authCookie let authCookie = defaultClient.authentications['authCookie']; authCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//authCookie.apiKeyPrefix = 'Token'; let apiInstance = new vrchatapi.FriendsApi(); let userId = "userId_example"; // String | @@ -83,13 +79,9 @@ let defaultClient = vrchatapi.ApiClient.instance; // Configure API key authorization: apiKeyCookie let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; apiKeyCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//apiKeyCookie.apiKeyPrefix = 'Token'; // Configure API key authorization: authCookie let authCookie = defaultClient.authentications['authCookie']; authCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//authCookie.apiKeyPrefix = 'Token'; let apiInstance = new vrchatapi.FriendsApi(); let userId = "userId_example"; // String | @@ -138,13 +130,9 @@ let defaultClient = vrchatapi.ApiClient.instance; // Configure API key authorization: apiKeyCookie let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; apiKeyCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//apiKeyCookie.apiKeyPrefix = 'Token'; // Configure API key authorization: authCookie let authCookie = defaultClient.authentications['authCookie']; authCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//authCookie.apiKeyPrefix = 'Token'; let apiInstance = new vrchatapi.FriendsApi(); let userId = "userId_example"; // String | @@ -193,13 +181,9 @@ let defaultClient = vrchatapi.ApiClient.instance; // Configure API key authorization: apiKeyCookie let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; apiKeyCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//apiKeyCookie.apiKeyPrefix = 'Token'; // Configure API key authorization: authCookie let authCookie = defaultClient.authentications['authCookie']; authCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//authCookie.apiKeyPrefix = 'Token'; let apiInstance = new vrchatapi.FriendsApi(); let opts = { @@ -254,13 +238,9 @@ let defaultClient = vrchatapi.ApiClient.instance; // Configure API key authorization: apiKeyCookie let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; apiKeyCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//apiKeyCookie.apiKeyPrefix = 'Token'; // Configure API key authorization: authCookie let authCookie = defaultClient.authentications['authCookie']; authCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//authCookie.apiKeyPrefix = 'Token'; let apiInstance = new vrchatapi.FriendsApi(); let userId = "userId_example"; // String | diff --git a/docs/NotificationsApi.md b/docs/NotificationsApi.md index c1a5c8f..4c95615 100644 --- a/docs/NotificationsApi.md +++ b/docs/NotificationsApi.md @@ -28,13 +28,9 @@ let defaultClient = vrchatapi.ApiClient.instance; // Configure API key authorization: apiKeyCookie let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; apiKeyCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//apiKeyCookie.apiKeyPrefix = 'Token'; // Configure API key authorization: authCookie let authCookie = defaultClient.authentications['authCookie']; authCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//authCookie.apiKeyPrefix = 'Token'; let apiInstance = new vrchatapi.NotificationsApi(); let notificationId = "notificationId_example"; // String | @@ -83,13 +79,9 @@ let defaultClient = vrchatapi.ApiClient.instance; // Configure API key authorization: apiKeyCookie let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; apiKeyCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//apiKeyCookie.apiKeyPrefix = 'Token'; // Configure API key authorization: authCookie let authCookie = defaultClient.authentications['authCookie']; authCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//authCookie.apiKeyPrefix = 'Token'; let apiInstance = new vrchatapi.NotificationsApi(); apiInstance.clearNotifications().then((data) => { @@ -134,13 +126,9 @@ let defaultClient = vrchatapi.ApiClient.instance; // Configure API key authorization: apiKeyCookie let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; apiKeyCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//apiKeyCookie.apiKeyPrefix = 'Token'; // Configure API key authorization: authCookie let authCookie = defaultClient.authentications['authCookie']; authCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//authCookie.apiKeyPrefix = 'Token'; let apiInstance = new vrchatapi.NotificationsApi(); let notificationId = "notificationId_example"; // String | @@ -189,13 +177,9 @@ let defaultClient = vrchatapi.ApiClient.instance; // Configure API key authorization: apiKeyCookie let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; apiKeyCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//apiKeyCookie.apiKeyPrefix = 'Token'; // Configure API key authorization: authCookie let authCookie = defaultClient.authentications['authCookie']; authCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//authCookie.apiKeyPrefix = 'Token'; let apiInstance = new vrchatapi.NotificationsApi(); let opts = { @@ -256,13 +240,9 @@ let defaultClient = vrchatapi.ApiClient.instance; // Configure API key authorization: apiKeyCookie let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; apiKeyCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//apiKeyCookie.apiKeyPrefix = 'Token'; // Configure API key authorization: authCookie let authCookie = defaultClient.authentications['authCookie']; authCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//authCookie.apiKeyPrefix = 'Token'; let apiInstance = new vrchatapi.NotificationsApi(); let notificationId = "notificationId_example"; // String | diff --git a/docs/UsersApi.md b/docs/UsersApi.md index 477bd76..ef3b8f7 100644 --- a/docs/UsersApi.md +++ b/docs/UsersApi.md @@ -28,13 +28,9 @@ let defaultClient = vrchatapi.ApiClient.instance; // Configure API key authorization: apiKeyCookie let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; apiKeyCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//apiKeyCookie.apiKeyPrefix = 'Token'; // Configure API key authorization: authCookie let authCookie = defaultClient.authentications['authCookie']; authCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//authCookie.apiKeyPrefix = 'Token'; let apiInstance = new vrchatapi.UsersApi(); let userId = "userId_example"; // String | @@ -83,13 +79,9 @@ let defaultClient = vrchatapi.ApiClient.instance; // Configure API key authorization: apiKeyCookie let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; apiKeyCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//apiKeyCookie.apiKeyPrefix = 'Token'; // Configure API key authorization: authCookie let authCookie = defaultClient.authentications['authCookie']; authCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//authCookie.apiKeyPrefix = 'Token'; let apiInstance = new vrchatapi.UsersApi(); let username = "username_example"; // String | @@ -138,13 +130,9 @@ let defaultClient = vrchatapi.ApiClient.instance; // Configure API key authorization: apiKeyCookie let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; apiKeyCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//apiKeyCookie.apiKeyPrefix = 'Token'; // Configure API key authorization: authCookie let authCookie = defaultClient.authentications['authCookie']; authCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//authCookie.apiKeyPrefix = 'Token'; let apiInstance = new vrchatapi.UsersApi(); let search = "search_example"; // String | Username to search for @@ -201,13 +189,9 @@ let defaultClient = vrchatapi.ApiClient.instance; // Configure API key authorization: apiKeyCookie let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; apiKeyCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//apiKeyCookie.apiKeyPrefix = 'Token'; // Configure API key authorization: authCookie let authCookie = defaultClient.authentications['authCookie']; authCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//authCookie.apiKeyPrefix = 'Token'; let apiInstance = new vrchatapi.UsersApi(); let opts = { @@ -264,13 +248,9 @@ let defaultClient = vrchatapi.ApiClient.instance; // Configure API key authorization: apiKeyCookie let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; apiKeyCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//apiKeyCookie.apiKeyPrefix = 'Token'; // Configure API key authorization: authCookie let authCookie = defaultClient.authentications['authCookie']; authCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//authCookie.apiKeyPrefix = 'Token'; let apiInstance = new vrchatapi.UsersApi(); let userId = "userId_example"; // String | diff --git a/docs/WorldsApi.md b/docs/WorldsApi.md index 0938b15..553acd5 100644 --- a/docs/WorldsApi.md +++ b/docs/WorldsApi.md @@ -24,13 +24,9 @@ let defaultClient = vrchatapi.ApiClient.instance; // Configure API key authorization: apiKeyCookie let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; apiKeyCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//apiKeyCookie.apiKeyPrefix = 'Token'; // Configure API key authorization: authCookie let authCookie = defaultClient.authentications['authCookie']; authCookie.apiKey = 'YOUR API KEY'; -// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null) -//authCookie.apiKeyPrefix = 'Token'; let apiInstance = new vrchatapi.WorldsApi(); let opts = { diff --git a/generate.sh b/generate.sh index 2c75746..8ce279b 100644 --- a/generate.sh +++ b/generate.sh @@ -13,4 +13,7 @@ openapi-generator-cli generate \ # Remove unwanted lines from README sed -i '/Uncomment the following line to set a prefix/d' ./README.md -sed -i '/apiKeyPrefix/d' ./README.md \ No newline at end of file +sed -i '/apiKeyPrefix/d' ./README.md +sed -i '/Uncomment the following line to set a prefix/d' ./docs/*.md +sed -i '/apiKeyPrefix/d' ./docs/*.md +sed -i 's/api.deleteUserById/api.getUser/g' ./README.md \ No newline at end of file From a200240d9b3f73f6c354cf32b9343f260ecc4276 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Foorack=20/=20Max=20Fax=C3=A4lv?= Date: Mon, 26 Jul 2021 10:48:08 +0200 Subject: [PATCH 005/130] Enable saving cookies by default --- generate.sh | 7 ++++++- src/ApiClient.js | 4 ++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/generate.sh b/generate.sh index 8ce279b..ddc8deb 100644 --- a/generate.sh +++ b/generate.sh @@ -16,4 +16,9 @@ sed -i '/Uncomment the following line to set a prefix/d' ./README.md sed -i '/apiKeyPrefix/d' ./README.md sed -i '/Uncomment the following line to set a prefix/d' ./docs/*.md sed -i '/apiKeyPrefix/d' ./docs/*.md -sed -i 's/api.deleteUserById/api.getUser/g' ./README.md \ No newline at end of file +sed -i 's/api.deleteUserById/api.getUser/g' ./README.md + +sed -i 's/@default false/@default true/g' ./src/ApiClient.js +sed -i 's/enableCookies = false/enableCookies = true/g' ./src/ApiClient.js + +npm run build \ No newline at end of file diff --git a/src/ApiClient.js b/src/ApiClient.js index ba19768..0126a2a 100644 --- a/src/ApiClient.js +++ b/src/ApiClient.js @@ -75,9 +75,9 @@ class ApiClient { /** * If set to true, the client will save the cookies from each server * response, and return them in the next request. - * @default false + * @default true */ - this.enableCookies = false; + this.enableCookies = true; /* * Used to save and return cookies in a node.js (non-browser) setting, From 69457b64413eb66887748e623c67d585026d8587 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Foorack=20/=20Max=20Fax=C3=A4lv?= Date: Mon, 26 Jul 2021 11:00:38 +0200 Subject: [PATCH 006/130] Remove dist from git --- dist/ApiClient.js | 786 ---------------------- dist/api/AuthenticationApi.js | 273 -------- dist/api/FilesApi.js | 555 --------------- dist/api/FriendsApi.js | 268 -------- dist/api/NotificationsApi.js | 264 -------- dist/api/SystemApi.js | 178 ----- dist/api/UsersApi.js | 286 -------- dist/api/WorldsApi.js | 131 ---- dist/index.js | 359 ---------- dist/model/Config.js | 973 --------------------------- dist/model/ConfigAnnouncements.js | 92 --- dist/model/ConfigDownloadUrls.js | 104 --- dist/model/ConfigDynamicWorldRows.js | 143 ---- dist/model/ConfigEvents.js | 187 ----- dist/model/CurrentUser.js | 578 ---------------- dist/model/DeploymentGroup.js | 54 -- dist/model/DeveloperType.js | 54 -- dist/model/Error.js | 77 --- dist/model/File.js | 150 ----- dist/model/FileData.js | 173 ----- dist/model/FileStatus.js | 52 -- dist/model/FileVersion.js | 145 ---- dist/model/InlineObject.js | 78 --- dist/model/InlineObject1.js | 78 --- dist/model/InlineObject2.js | 150 ----- dist/model/InlineObject3.js | 111 --- dist/model/InlineObject4.js | 129 ---- dist/model/InlineResponse200.js | 89 --- dist/model/InlineResponse2001.js | 78 --- dist/model/InlineResponse2002.js | 100 --- dist/model/InlineResponse2003.js | 103 --- dist/model/InlineResponse2004.js | 134 ---- dist/model/InlineResponse2005.js | 78 --- dist/model/InlineResponse401.js | 80 --- dist/model/LimitedUser.js | 246 ------- dist/model/LimitedWorld.js | 270 -------- dist/model/MIMEType.js | 74 -- dist/model/Notification.js | 162 ----- dist/model/NotificationType.js | 60 -- dist/model/ReleaseStatus.js | 52 -- dist/model/Response.js | 89 --- dist/model/Success.js | 77 --- dist/model/User.js | 331 --------- dist/model/UserState.js | 52 -- dist/model/UserStatus.js | 56 -- 45 files changed, 8559 deletions(-) delete mode 100644 dist/ApiClient.js delete mode 100644 dist/api/AuthenticationApi.js delete mode 100644 dist/api/FilesApi.js delete mode 100644 dist/api/FriendsApi.js delete mode 100644 dist/api/NotificationsApi.js delete mode 100644 dist/api/SystemApi.js delete mode 100644 dist/api/UsersApi.js delete mode 100644 dist/api/WorldsApi.js delete mode 100644 dist/index.js delete mode 100644 dist/model/Config.js delete mode 100644 dist/model/ConfigAnnouncements.js delete mode 100644 dist/model/ConfigDownloadUrls.js delete mode 100644 dist/model/ConfigDynamicWorldRows.js delete mode 100644 dist/model/ConfigEvents.js delete mode 100644 dist/model/CurrentUser.js delete mode 100644 dist/model/DeploymentGroup.js delete mode 100644 dist/model/DeveloperType.js delete mode 100644 dist/model/Error.js delete mode 100644 dist/model/File.js delete mode 100644 dist/model/FileData.js delete mode 100644 dist/model/FileStatus.js delete mode 100644 dist/model/FileVersion.js delete mode 100644 dist/model/InlineObject.js delete mode 100644 dist/model/InlineObject1.js delete mode 100644 dist/model/InlineObject2.js delete mode 100644 dist/model/InlineObject3.js delete mode 100644 dist/model/InlineObject4.js delete mode 100644 dist/model/InlineResponse200.js delete mode 100644 dist/model/InlineResponse2001.js delete mode 100644 dist/model/InlineResponse2002.js delete mode 100644 dist/model/InlineResponse2003.js delete mode 100644 dist/model/InlineResponse2004.js delete mode 100644 dist/model/InlineResponse2005.js delete mode 100644 dist/model/InlineResponse401.js delete mode 100644 dist/model/LimitedUser.js delete mode 100644 dist/model/LimitedWorld.js delete mode 100644 dist/model/MIMEType.js delete mode 100644 dist/model/Notification.js delete mode 100644 dist/model/NotificationType.js delete mode 100644 dist/model/ReleaseStatus.js delete mode 100644 dist/model/Response.js delete mode 100644 dist/model/Success.js delete mode 100644 dist/model/User.js delete mode 100644 dist/model/UserState.js delete mode 100644 dist/model/UserStatus.js diff --git a/dist/ApiClient.js b/dist/ApiClient.js deleted file mode 100644 index dc4b91f..0000000 --- a/dist/ApiClient.js +++ /dev/null @@ -1,786 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; - -var _superagent = _interopRequireDefault(require("superagent")); - -var _querystring = _interopRequireDefault(require("querystring")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -/** -* @module ApiClient -* @version 1.0.0 -*/ - -/** -* Manages low level client-server communications, parameter marshalling, etc. There should not be any need for an -* application to use this class directly - the *Api and model classes provide the public API for the service. The -* contents of this file should be regarded as internal but are documented for completeness. -* @alias module:ApiClient -* @class -*/ -var ApiClient = /*#__PURE__*/function () { - function ApiClient() { - _classCallCheck(this, ApiClient); - - /** - * The base URL against which to resolve every API call's (relative) path. - * @type {String} - * @default https://api.vrchat.cloud/api/1 - */ - this.basePath = 'https://api.vrchat.cloud/api/1'.replace(/\/+$/, ''); - /** - * The authentication methods to be included for all API calls. - * @type {Array.} - */ - - this.authentications = { - 'apiKeyCookie': { - type: 'apiKey', - 'in': 'query', - name: 'apiKey' - }, - 'apiKeyQuery': { - type: 'apiKey', - 'in': 'query', - name: 'apiKey' - }, - 'authCookie': { - type: 'apiKey', - 'in': 'query', - name: 'auth' - }, - 'authHeader': { - type: 'basic' - }, - 'twoFactorAuthCookie': { - type: 'apiKey', - 'in': 'query', - name: 'twoFactorAuth' - } - }; - /** - * The default HTTP headers to be included for all API calls. - * @type {Array.} - * @default {} - */ - - this.defaultHeaders = { - 'User-Agent': 'vrchatapi-node' - }; - /** - * The default HTTP timeout for all API calls. - * @type {Number} - * @default 60000 - */ - - this.timeout = 60000; - /** - * If set to false an additional timestamp parameter is added to all API GET calls to - * prevent browser caching - * @type {Boolean} - * @default true - */ - - this.cache = true; - /** - * If set to true, the client will save the cookies from each server - * response, and return them in the next request. - * @default false - */ - - this.enableCookies = false; - /* - * Used to save and return cookies in a node.js (non-browser) setting, - * if this.enableCookies is set to true. - */ - - if (typeof window === 'undefined') { - this.agent = new _superagent["default"].agent(); - } - /* - * Allow user to override superagent agent - */ - - - this.requestAgent = null; - /* - * Allow user to add superagent plugins - */ - - this.plugins = null; - } - /** - * Returns a string representation for an actual parameter. - * @param param The actual parameter. - * @returns {String} The string representation of param. - */ - - - _createClass(ApiClient, [{ - key: "paramToString", - value: function paramToString(param) { - if (param == undefined || param == null) { - return ''; - } - - if (param instanceof Date) { - return param.toJSON(); - } - - if (ApiClient.canBeJsonified(param)) { - return JSON.stringify(param); - } - - return param.toString(); - } - /** - * Returns a boolean indicating if the parameter could be JSON.stringified - * @param param The actual parameter - * @returns {Boolean} Flag indicating if param can be JSON.stringified - */ - - }, { - key: "buildUrl", - value: - /** - * Builds full URL by appending the given path to the base URL and replacing path parameter place-holders with parameter values. - * NOTE: query parameters are not handled here. - * @param {String} path The path to append to the base URL. - * @param {Object} pathParams The parameter values to append. - * @param {String} apiBasePath Base path defined in the path, operation level to override the default one - * @returns {String} The encoded path with parameter values substituted. - */ - function buildUrl(path, pathParams, apiBasePath) { - var _this = this; - - if (!path.match(/^\//)) { - path = '/' + path; - } - - var url = this.basePath + path; // use API (operation, path) base path if defined - - if (apiBasePath !== null && apiBasePath !== undefined) { - url = apiBasePath + path; - } - - url = url.replace(/\{([\w-\.]+)\}/g, function (fullMatch, key) { - var value; - - if (pathParams.hasOwnProperty(key)) { - value = _this.paramToString(pathParams[key]); - } else { - value = fullMatch; - } - - return encodeURIComponent(value); - }); - return url; - } - /** - * Checks whether the given content type represents JSON.
- * JSON content type examples:
- *
    - *
  • application/json
  • - *
  • application/json; charset=UTF8
  • - *
  • APPLICATION/JSON
  • - *
- * @param {String} contentType The MIME content type to check. - * @returns {Boolean} true if contentType represents JSON, otherwise false. - */ - - }, { - key: "isJsonMime", - value: function isJsonMime(contentType) { - return Boolean(contentType != null && contentType.match(/^application\/json(;.*)?$/i)); - } - /** - * Chooses a content type from the given array, with JSON preferred; i.e. return JSON if included, otherwise return the first. - * @param {Array.} contentTypes - * @returns {String} The chosen content type, preferring JSON. - */ - - }, { - key: "jsonPreferredMime", - value: function jsonPreferredMime(contentTypes) { - for (var i = 0; i < contentTypes.length; i++) { - if (this.isJsonMime(contentTypes[i])) { - return contentTypes[i]; - } - } - - return contentTypes[0]; - } - /** - * Checks whether the given parameter value represents file-like content. - * @param param The parameter to check. - * @returns {Boolean} true if param represents a file. - */ - - }, { - key: "isFileParam", - value: function isFileParam(param) { - // fs.ReadStream in Node.js and Electron (but not in runtime like browserify) - if (typeof require === 'function') { - var fs; - - try { - fs = require('fs'); - } catch (err) {} - - if (fs && fs.ReadStream && param instanceof fs.ReadStream) { - return true; - } - } // Buffer in Node.js - - - if (typeof Buffer === 'function' && param instanceof Buffer) { - return true; - } // Blob in browser - - - if (typeof Blob === 'function' && param instanceof Blob) { - return true; - } // File in browser (it seems File object is also instance of Blob, but keep this for safe) - - - if (typeof File === 'function' && param instanceof File) { - return true; - } - - return false; - } - /** - * Normalizes parameter values: - *
    - *
  • remove nils
  • - *
  • keep files and arrays
  • - *
  • format to string with `paramToString` for other cases
  • - *
- * @param {Object.} params The parameters as object properties. - * @returns {Object.} normalized parameters. - */ - - }, { - key: "normalizeParams", - value: function normalizeParams(params) { - var newParams = {}; - - for (var key in params) { - if (params.hasOwnProperty(key) && params[key] != undefined && params[key] != null) { - var value = params[key]; - - if (this.isFileParam(value) || Array.isArray(value)) { - newParams[key] = value; - } else { - newParams[key] = this.paramToString(value); - } - } - } - - return newParams; - } - /** - * Builds a string representation of an array-type actual parameter, according to the given collection format. - * @param {Array} param An array parameter. - * @param {module:ApiClient.CollectionFormatEnum} collectionFormat The array element separator strategy. - * @returns {String|Array} A string representation of the supplied collection, using the specified delimiter. Returns - * param as is if collectionFormat is multi. - */ - - }, { - key: "buildCollectionParam", - value: function buildCollectionParam(param, collectionFormat) { - if (param == null) { - return null; - } - - switch (collectionFormat) { - case 'csv': - return param.map(this.paramToString, this).join(','); - - case 'ssv': - return param.map(this.paramToString, this).join(' '); - - case 'tsv': - return param.map(this.paramToString, this).join('\t'); - - case 'pipes': - return param.map(this.paramToString, this).join('|'); - - case 'multi': - //return the array directly as SuperAgent will handle it as expected - return param.map(this.paramToString, this); - - case 'passthrough': - return param; - - default: - throw new Error('Unknown collection format: ' + collectionFormat); - } - } - /** - * Applies authentication headers to the request. - * @param {Object} request The request object created by a superagent() call. - * @param {Array.} authNames An array of authentication method names. - */ - - }, { - key: "applyAuthToRequest", - value: function applyAuthToRequest(request, authNames) { - var _this2 = this; - - authNames.forEach(function (authName) { - var auth = _this2.authentications[authName]; - - switch (auth.type) { - case 'basic': - if (auth.username || auth.password) { - request.auth(auth.username || '', auth.password || ''); - } - - break; - - case 'bearer': - if (auth.accessToken) { - var localVarBearerToken = typeof auth.accessToken === 'function' ? auth.accessToken() : auth.accessToken; - request.set({ - 'Authorization': 'Bearer ' + localVarBearerToken - }); - } - - break; - - case 'apiKey': - if (auth.apiKey) { - var data = {}; - - if (auth.apiKeyPrefix) { - data[auth.name] = auth.apiKeyPrefix + ' ' + auth.apiKey; - } else { - data[auth.name] = auth.apiKey; - } - - if (auth['in'] === 'header') { - request.set(data); - } else { - request.query(data); - } - } - - break; - - case 'oauth2': - if (auth.accessToken) { - request.set({ - 'Authorization': 'Bearer ' + auth.accessToken - }); - } - - break; - - default: - throw new Error('Unknown authentication type: ' + auth.type); - } - }); - } - /** - * Deserializes an HTTP response body into a value of the specified type. - * @param {Object} response A SuperAgent response object. - * @param {(String|Array.|Object.|Function)} returnType The type to return. Pass a string for simple types - * or the constructor function for a complex type. Pass an array containing the type name to return an array of that type. To - * return an object, pass an object with one property whose name is the key type and whose value is the corresponding value type: - * all properties on data will be converted to this type. - * @returns A value of the specified type. - */ - - }, { - key: "deserialize", - value: function deserialize(response, returnType) { - if (response == null || returnType == null || response.status == 204) { - return null; - } // Rely on SuperAgent for parsing response body. - // See http://visionmedia.github.io/superagent/#parsing-response-bodies - - - var data = response.body; - - if (data == null || _typeof(data) === 'object' && typeof data.length === 'undefined' && !Object.keys(data).length) { - // SuperAgent does not always produce a body; use the unparsed response as a fallback - data = response.text; - } - - return ApiClient.convertToType(data, returnType); - } - /** - * Invokes the REST service using the supplied settings and parameters. - * @param {String} path The base URL to invoke. - * @param {String} httpMethod The HTTP method to use. - * @param {Object.} pathParams A map of path parameters and their values. - * @param {Object.} queryParams A map of query parameters and their values. - * @param {Object.} headerParams A map of header parameters and their values. - * @param {Object.} formParams A map of form parameters and their values. - * @param {Object} bodyParam The value to pass as the request body. - * @param {Array.} authNames An array of authentication type names. - * @param {Array.} contentTypes An array of request MIME types. - * @param {Array.} accepts An array of acceptable response MIME types. - * @param {(String|Array|ObjectFunction)} returnType The required type to return; can be a string for simple types or the - * constructor for a complex type. - * @param {String} apiBasePath base path defined in the operation/path level to override the default one - * @returns {Promise} A {@link https://www.promisejs.org/|Promise} object. - */ - - }, { - key: "callApi", - value: function callApi(path, httpMethod, pathParams, queryParams, headerParams, formParams, bodyParam, authNames, contentTypes, accepts, returnType, apiBasePath) { - var _this3 = this; - - var url = this.buildUrl(path, pathParams, apiBasePath); - var request = (0, _superagent["default"])(httpMethod, url); - - if (this.plugins !== null) { - for (var index in this.plugins) { - if (this.plugins.hasOwnProperty(index)) { - request.use(this.plugins[index]); - } - } - } // apply authentications - - - this.applyAuthToRequest(request, authNames); // set query parameters - - if (httpMethod.toUpperCase() === 'GET' && this.cache === false) { - queryParams['_'] = new Date().getTime(); - } - - request.query(this.normalizeParams(queryParams)); // set header parameters - - request.set(this.defaultHeaders).set(this.normalizeParams(headerParams)); // set requestAgent if it is set by user - - if (this.requestAgent) { - request.agent(this.requestAgent); - } // set request timeout - - - request.timeout(this.timeout); - var contentType = this.jsonPreferredMime(contentTypes); - - if (contentType) { - // Issue with superagent and multipart/form-data (https://github.com/visionmedia/superagent/issues/746) - if (contentType != 'multipart/form-data') { - request.type(contentType); - } - } - - if (contentType === 'application/x-www-form-urlencoded') { - request.send(_querystring["default"].stringify(this.normalizeParams(formParams))); - } else if (contentType == 'multipart/form-data') { - var _formParams = this.normalizeParams(formParams); - - for (var key in _formParams) { - if (_formParams.hasOwnProperty(key)) { - var _formParamsValue = _formParams[key]; - - if (this.isFileParam(_formParamsValue)) { - // file field - request.attach(key, _formParamsValue); - } else if (Array.isArray(_formParamsValue) && _formParamsValue.length && this.isFileParam(_formParamsValue[0])) { - // multiple files - _formParamsValue.forEach(function (file) { - return request.attach(key, file); - }); - } else { - request.field(key, _formParamsValue); - } - } - } - } else if (bodyParam !== null && bodyParam !== undefined) { - if (!request.header['Content-Type']) { - request.type('application/json'); - } - - request.send(bodyParam); - } - - var accept = this.jsonPreferredMime(accepts); - - if (accept) { - request.accept(accept); - } - - if (returnType === 'Blob') { - request.responseType('blob'); - } else if (returnType === 'String') { - request.responseType('string'); - } // Attach previously saved cookies, if enabled - - - if (this.enableCookies) { - if (typeof window === 'undefined') { - this.agent._attachCookies(request); - } else { - request.withCredentials(); - } - } - - return new Promise(function (resolve, reject) { - request.end(function (error, response) { - if (error) { - var err = {}; - - if (response) { - err.status = response.status; - err.statusText = response.statusText; - err.body = response.body; - err.response = response; - } - - err.error = error; - reject(err); - } else { - try { - var data = _this3.deserialize(response, returnType); - - if (_this3.enableCookies && typeof window === 'undefined') { - _this3.agent._saveCookies(response); - } - - resolve({ - data: data, - response: response - }); - } catch (err) { - reject(err); - } - } - }); - }); - } - /** - * Parses an ISO-8601 string representation or epoch representation of a date value. - * @param {String} str The date value as a string. - * @returns {Date} The parsed date object. - */ - - }, { - key: "hostSettings", - value: - /** - * Gets an array of host settings - * @returns An array of host settings - */ - function hostSettings() { - return [{ - 'url': "https://api.vrchat.cloud/api/1", - 'description': "No description provided" - }]; - } - }, { - key: "getBasePathFromSettings", - value: function getBasePathFromSettings(index) { - var variables = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; - var servers = this.hostSettings(); // check array index out of bound - - if (index < 0 || index >= servers.length) { - throw new Error("Invalid index " + index + " when selecting the host settings. Must be less than " + servers.length); - } - - var server = servers[index]; - var url = server['url']; // go through variable and assign a value - - for (var variable_name in server['variables']) { - if (variable_name in variables) { - var variable = server['variables'][variable_name]; - - if (!('enum_values' in variable) || variable['enum_values'].includes(variables[variable_name])) { - url = url.replace("{" + variable_name + "}", variables[variable_name]); - } else { - throw new Error("The variable `" + variable_name + "` in the host URL has invalid value " + variables[variable_name] + ". Must be " + server['variables'][variable_name]['enum_values'] + "."); - } - } else { - // use default value - url = url.replace("{" + variable_name + "}", server['variables'][variable_name]['default_value']); - } - } - - return url; - } - /** - * Constructs a new map or array model from REST data. - * @param data {Object|Array} The REST data. - * @param obj {Object|Array} The target object or array. - */ - - }], [{ - key: "canBeJsonified", - value: function canBeJsonified(str) { - if (typeof str !== 'string' && _typeof(str) !== 'object') return false; - - try { - var type = str.toString(); - return type === '[object Object]' || type === '[object Array]'; - } catch (err) { - return false; - } - } - }, { - key: "parseDate", - value: function parseDate(str) { - if (isNaN(str)) { - return new Date(str.replace(/(\d)(T)(\d)/i, '$1 $3')); - } - - return new Date(+str); - } - /** - * Converts a value to the specified type. - * @param {(String|Object)} data The data to convert, as a string or object. - * @param {(String|Array.|Object.|Function)} type The type to return. Pass a string for simple types - * or the constructor function for a complex type. Pass an array containing the type name to return an array of that type. To - * return an object, pass an object with one property whose name is the key type and whose value is the corresponding value type: - * all properties on data will be converted to this type. - * @returns An instance of the specified type or null or undefined if data is null or undefined. - */ - - }, { - key: "convertToType", - value: function convertToType(data, type) { - if (data === null || data === undefined) return data; - - switch (type) { - case 'Boolean': - return Boolean(data); - - case 'Integer': - return parseInt(data, 10); - - case 'Number': - return parseFloat(data); - - case 'String': - return String(data); - - case 'Date': - return ApiClient.parseDate(String(data)); - - case 'Blob': - return data; - - default: - if (type === Object) { - // generic object, return directly - return data; - } else if (typeof type.constructFromObject === 'function') { - // for model type like User and enum class - return type.constructFromObject(data); - } else if (Array.isArray(type)) { - // for array type like: ['String'] - var itemType = type[0]; - return data.map(function (item) { - return ApiClient.convertToType(item, itemType); - }); - } else if (_typeof(type) === 'object') { - // for plain object type like: {'String': 'Integer'} - var keyType, valueType; - - for (var k in type) { - if (type.hasOwnProperty(k)) { - keyType = k; - valueType = type[k]; - break; - } - } - - var result = {}; - - for (var k in data) { - if (data.hasOwnProperty(k)) { - var key = ApiClient.convertToType(k, keyType); - var value = ApiClient.convertToType(data[k], valueType); - result[key] = value; - } - } - - return result; - } else { - // for unknown type, return the data directly - return data; - } - - } - } - }, { - key: "constructFromObject", - value: function constructFromObject(data, obj, itemType) { - if (Array.isArray(data)) { - for (var i = 0; i < data.length; i++) { - if (data.hasOwnProperty(i)) obj[i] = ApiClient.convertToType(data[i], itemType); - } - } else { - for (var k in data) { - if (data.hasOwnProperty(k)) obj[k] = ApiClient.convertToType(data[k], itemType); - } - } - } - }]); - - return ApiClient; -}(); -/** - * Enumeration of collection format separator strategies. - * @enum {String} - * @readonly - */ - - -ApiClient.CollectionFormatEnum = { - /** - * Comma-separated values. Value: csv - * @const - */ - CSV: ',', - - /** - * Space-separated values. Value: ssv - * @const - */ - SSV: ' ', - - /** - * Tab-separated values. Value: tsv - * @const - */ - TSV: '\t', - - /** - * Pipe(|)-separated values. Value: pipes - * @const - */ - PIPES: '|', - - /** - * Native array. Value: multi - * @const - */ - MULTI: 'multi' -}; -/** -* The default API client implementation. -* @type {module:ApiClient} -*/ - -ApiClient.instance = new ApiClient(); -var _default = ApiClient; -exports["default"] = _default; \ No newline at end of file diff --git a/dist/api/AuthenticationApi.js b/dist/api/AuthenticationApi.js deleted file mode 100644 index 884c727..0000000 --- a/dist/api/AuthenticationApi.js +++ /dev/null @@ -1,273 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; - -var _ApiClient = _interopRequireDefault(require("../ApiClient")); - -var _CurrentUser = _interopRequireDefault(require("../model/CurrentUser")); - -var _InlineObject = _interopRequireDefault(require("../model/InlineObject")); - -var _InlineObject2 = _interopRequireDefault(require("../model/InlineObject1")); - -var _InlineResponse = _interopRequireDefault(require("../model/InlineResponse200")); - -var _InlineResponse2 = _interopRequireDefault(require("../model/InlineResponse2001")); - -var _InlineResponse3 = _interopRequireDefault(require("../model/InlineResponse401")); - -var _Success = _interopRequireDefault(require("../model/Success")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -/** -* Authentication service. -* @module api/AuthenticationApi -* @version 1.0.0 -*/ -var AuthenticationApi = /*#__PURE__*/function () { - /** - * Constructs a new AuthenticationApi. - * @alias module:api/AuthenticationApi - * @class - * @param {module:ApiClient} [apiClient] Optional API client implementation to use, - * default to {@link module:ApiClient#instance} if unspecified. - */ - function AuthenticationApi(apiClient) { - _classCallCheck(this, AuthenticationApi); - - this.apiClient = apiClient || _ApiClient["default"].instance; - } - /** - * Delete User - * Deletes the account with given ID. Normal users only have permission to delete their own account. Account deletion is 14 days from this request, and will be cancelled if you do an authenticated request with the account afterwards. **VRC+ NOTE:** Despite the 14-days cooldown, any VRC+ subscription will be cancelled **immediately**. **METHOD NOTE:** Despite this being a Delete action, the method type required is PUT. - * @param {String} userId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/CurrentUser} and HTTP response - */ - - - _createClass(AuthenticationApi, [{ - key: "deleteUserByIdWithHttpInfo", - value: function deleteUserByIdWithHttpInfo(userId) { - var postBody = null; // verify the required parameter 'userId' is set - - if (userId === undefined || userId === null) { - throw new Error("Missing the required parameter 'userId' when calling deleteUserById"); - } - - var pathParams = { - 'userId': userId - }; - var queryParams = {}; - var headerParams = {}; - var formParams = {}; - var authNames = ['apiKeyCookie', 'authCookie']; - var contentTypes = []; - var accepts = ['application/json']; - var returnType = _CurrentUser["default"]; - return this.apiClient.callApi('/user/{userId}/delete', 'PUT', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); - } - /** - * Delete User - * Deletes the account with given ID. Normal users only have permission to delete their own account. Account deletion is 14 days from this request, and will be cancelled if you do an authenticated request with the account afterwards. **VRC+ NOTE:** Despite the 14-days cooldown, any VRC+ subscription will be cancelled **immediately**. **METHOD NOTE:** Despite this being a Delete action, the method type required is PUT. - * @param {String} userId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/CurrentUser} - */ - - }, { - key: "deleteUserById", - value: function deleteUserById(userId) { - return this.deleteUserByIdWithHttpInfo(userId).then(function (response_and_data) { - return response_and_data.data; - }); - } - /** - * Login and/or Get Current User Info - * Login and/or Get user data from your VRChat account. If `Authorization` header is present then a new login session will be generated, and a new `auth` cookie is returned. **WARNING: Session Limit:** Each authentication with login credentials counts as a separate session, out of which you have a limited amount. Make sure to save and reuse the `auth` cookie whenever you can, and avoid sending the Authorization header unless strictly neccesary. While the exact number of simultaneous open sessions is secret, expect to **very fast** run into the rate-limit and be temporarily blocked from making new sessions until the old ones expire. - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/CurrentUser} and HTTP response - */ - - }, { - key: "getCurrentUserWithHttpInfo", - value: function getCurrentUserWithHttpInfo() { - var postBody = null; - var pathParams = {}; - var queryParams = {}; - var headerParams = {}; - var formParams = {}; - var authNames = ['authCookie', 'authHeader', 'twoFactorAuthCookie']; - var contentTypes = []; - var accepts = ['application/json']; - var returnType = _CurrentUser["default"]; - return this.apiClient.callApi('/auth/user', 'GET', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); - } - /** - * Login and/or Get Current User Info - * Login and/or Get user data from your VRChat account. If `Authorization` header is present then a new login session will be generated, and a new `auth` cookie is returned. **WARNING: Session Limit:** Each authentication with login credentials counts as a separate session, out of which you have a limited amount. Make sure to save and reuse the `auth` cookie whenever you can, and avoid sending the Authorization header unless strictly neccesary. While the exact number of simultaneous open sessions is secret, expect to **very fast** run into the rate-limit and be temporarily blocked from making new sessions until the old ones expire. - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/CurrentUser} - */ - - }, { - key: "getCurrentUser", - value: function getCurrentUser() { - return this.getCurrentUserWithHttpInfo().then(function (response_and_data) { - return response_and_data.data; - }); - } - /** - * Logout - * Invalidates the auth cookie. - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/Success} and HTTP response - */ - - }, { - key: "logoutWithHttpInfo", - value: function logoutWithHttpInfo() { - var postBody = null; - var pathParams = {}; - var queryParams = {}; - var headerParams = {}; - var formParams = {}; - var authNames = ['apiKeyCookie', 'authCookie']; - var contentTypes = []; - var accepts = ['application/json']; - var returnType = _Success["default"]; - return this.apiClient.callApi('/logout', 'PUT', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); - } - /** - * Logout - * Invalidates the auth cookie. - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/Success} - */ - - }, { - key: "logout", - value: function logout() { - return this.logoutWithHttpInfo().then(function (response_and_data) { - return response_and_data.data; - }); - } - /** - * Verify 2FA code - * Finishes the login sequence with a normal 2FA-generated code for accounts with 2FA-protection enabled. - * @param {Object} opts Optional parameters - * @param {module:model/InlineObject} opts.inlineObject - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/InlineResponse2001} and HTTP response - */ - - }, { - key: "verify2FAWithHttpInfo", - value: function verify2FAWithHttpInfo(opts) { - opts = opts || {}; - var postBody = opts['inlineObject']; - var pathParams = {}; - var queryParams = {}; - var headerParams = {}; - var formParams = {}; - var authNames = ['authCookie']; - var contentTypes = ['application/json']; - var accepts = ['application/json']; - var returnType = _InlineResponse2["default"]; - return this.apiClient.callApi('/auth/twofactorauth/totp/verify', 'POST', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); - } - /** - * Verify 2FA code - * Finishes the login sequence with a normal 2FA-generated code for accounts with 2FA-protection enabled. - * @param {Object} opts Optional parameters - * @param {module:model/InlineObject} opts.inlineObject - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/InlineResponse2001} - */ - - }, { - key: "verify2FA", - value: function verify2FA(opts) { - return this.verify2FAWithHttpInfo(opts).then(function (response_and_data) { - return response_and_data.data; - }); - } - /** - * Verify Auth Token - * Verify whether the currently provided Auth Token is valid. - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/InlineResponse200} and HTTP response - */ - - }, { - key: "verifyAuthTokenWithHttpInfo", - value: function verifyAuthTokenWithHttpInfo() { - var postBody = null; - var pathParams = {}; - var queryParams = {}; - var headerParams = {}; - var formParams = {}; - var authNames = ['apiKeyCookie', 'authCookie']; - var contentTypes = []; - var accepts = ['application/json']; - var returnType = _InlineResponse["default"]; - return this.apiClient.callApi('/auth', 'GET', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); - } - /** - * Verify Auth Token - * Verify whether the currently provided Auth Token is valid. - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/InlineResponse200} - */ - - }, { - key: "verifyAuthToken", - value: function verifyAuthToken() { - return this.verifyAuthTokenWithHttpInfo().then(function (response_and_data) { - return response_and_data.data; - }); - } - /** - * Verify 2FA code with Recovery code - * Finishes the login sequence with an OTP (One Time Password) recovery code for accounts with 2FA-protection enabled. - * @param {Object} opts Optional parameters - * @param {module:model/InlineObject1} opts.inlineObject1 - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/InlineResponse2001} and HTTP response - */ - - }, { - key: "verifyRecoveryCodeWithHttpInfo", - value: function verifyRecoveryCodeWithHttpInfo(opts) { - opts = opts || {}; - var postBody = opts['inlineObject1']; - var pathParams = {}; - var queryParams = {}; - var headerParams = {}; - var formParams = {}; - var authNames = ['authCookie']; - var contentTypes = ['application/json']; - var accepts = ['application/json']; - var returnType = _InlineResponse2["default"]; - return this.apiClient.callApi('/auth/twofactorauth/otp/verify', 'POST', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); - } - /** - * Verify 2FA code with Recovery code - * Finishes the login sequence with an OTP (One Time Password) recovery code for accounts with 2FA-protection enabled. - * @param {Object} opts Optional parameters - * @param {module:model/InlineObject1} opts.inlineObject1 - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/InlineResponse2001} - */ - - }, { - key: "verifyRecoveryCode", - value: function verifyRecoveryCode(opts) { - return this.verifyRecoveryCodeWithHttpInfo(opts).then(function (response_and_data) { - return response_and_data.data; - }); - } - }]); - - return AuthenticationApi; -}(); - -exports["default"] = AuthenticationApi; \ No newline at end of file diff --git a/dist/api/FilesApi.js b/dist/api/FilesApi.js deleted file mode 100644 index 6b2341e..0000000 --- a/dist/api/FilesApi.js +++ /dev/null @@ -1,555 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; - -var _ApiClient = _interopRequireDefault(require("../ApiClient")); - -var _Error = _interopRequireDefault(require("../model/Error")); - -var _InlineObject = _interopRequireDefault(require("../model/InlineObject3")); - -var _InlineObject2 = _interopRequireDefault(require("../model/InlineObject4")); - -var _InlineResponse = _interopRequireDefault(require("../model/InlineResponse2004")); - -var _InlineResponse2 = _interopRequireDefault(require("../model/InlineResponse2005")); - -var _Success = _interopRequireDefault(require("../model/Success")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -/** -* Files service. -* @module api/FilesApi -* @version 1.0.0 -*/ -var FilesApi = /*#__PURE__*/function () { - /** - * Constructs a new FilesApi. - * @alias module:api/FilesApi - * @class - * @param {module:ApiClient} [apiClient] Optional API client implementation to use, - * default to {@link module:ApiClient#instance} if unspecified. - */ - function FilesApi(apiClient) { - _classCallCheck(this, FilesApi); - - this.apiClient = apiClient || _ApiClient["default"].instance; - } - /** - * Create File - * Creates a new File object - * @param {Object} opts Optional parameters - * @param {module:model/InlineObject3} opts.inlineObject3 - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link File} and HTTP response - */ - - - _createClass(FilesApi, [{ - key: "createFileWithHttpInfo", - value: function createFileWithHttpInfo(opts) { - opts = opts || {}; - var postBody = opts['inlineObject3']; - var pathParams = {}; - var queryParams = {}; - var headerParams = {}; - var formParams = {}; - var authNames = ['apiKeyCookie', 'authCookie']; - var contentTypes = ['application/json']; - var accepts = ['application/json']; - var returnType = File; - return this.apiClient.callApi('/file', 'POST', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); - } - /** - * Create File - * Creates a new File object - * @param {Object} opts Optional parameters - * @param {module:model/InlineObject3} opts.inlineObject3 - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link File} - */ - - }, { - key: "createFile", - value: function createFile(opts) { - return this.createFileWithHttpInfo(opts).then(function (response_and_data) { - return response_and_data.data; - }); - } - /** - * Create File Version - * Creates a new FileVersion. Once a Version has been created, proceed to the `/file/{fileId}/{versionId}/file/start` endpoint to start a file upload. - * @param {String} fileId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link File} and HTTP response - */ - - }, { - key: "createFileVersionWithHttpInfo", - value: function createFileVersionWithHttpInfo(fileId) { - var postBody = null; // verify the required parameter 'fileId' is set - - if (fileId === undefined || fileId === null) { - throw new _Error["default"]("Missing the required parameter 'fileId' when calling createFileVersion"); - } - - var pathParams = { - 'fileId': fileId - }; - var queryParams = {}; - var headerParams = {}; - var formParams = {}; - var authNames = ['apiKeyCookie', 'authCookie']; - var contentTypes = []; - var accepts = ['application/json']; - var returnType = File; - return this.apiClient.callApi('/file/{fileId}', 'POST', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); - } - /** - * Create File Version - * Creates a new FileVersion. Once a Version has been created, proceed to the `/file/{fileId}/{versionId}/file/start` endpoint to start a file upload. - * @param {String} fileId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link File} - */ - - }, { - key: "createFileVersion", - value: function createFileVersion(fileId) { - return this.createFileVersionWithHttpInfo(fileId).then(function (response_and_data) { - return response_and_data.data; - }); - } - /** - * Delete File - * Deletes a File object. - * @param {String} fileId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/Success} and HTTP response - */ - - }, { - key: "deleteFileWithHttpInfo", - value: function deleteFileWithHttpInfo(fileId) { - var postBody = null; // verify the required parameter 'fileId' is set - - if (fileId === undefined || fileId === null) { - throw new _Error["default"]("Missing the required parameter 'fileId' when calling deleteFile"); - } - - var pathParams = { - 'fileId': fileId - }; - var queryParams = {}; - var headerParams = {}; - var formParams = {}; - var authNames = ['apiKeyCookie', 'authCookie']; - var contentTypes = []; - var accepts = ['application/json']; - var returnType = _Success["default"]; - return this.apiClient.callApi('/file/{fileId}', 'DELETE', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); - } - /** - * Delete File - * Deletes a File object. - * @param {String} fileId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/Success} - */ - - }, { - key: "deleteFile", - value: function deleteFile(fileId) { - return this.deleteFileWithHttpInfo(fileId).then(function (response_and_data) { - return response_and_data.data; - }); - } - /** - * Delete File Version - * Delete a specific version of a file. You can only delete the latest version. - * @param {String} fileId - * @param {Number} versionId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link File} and HTTP response - */ - - }, { - key: "deleteFileVersionWithHttpInfo", - value: function deleteFileVersionWithHttpInfo(fileId, versionId) { - var postBody = null; // verify the required parameter 'fileId' is set - - if (fileId === undefined || fileId === null) { - throw new _Error["default"]("Missing the required parameter 'fileId' when calling deleteFileVersion"); - } // verify the required parameter 'versionId' is set - - - if (versionId === undefined || versionId === null) { - throw new _Error["default"]("Missing the required parameter 'versionId' when calling deleteFileVersion"); - } - - var pathParams = { - 'fileId': fileId, - 'versionId': versionId - }; - var queryParams = {}; - var headerParams = {}; - var formParams = {}; - var authNames = ['apiKeyCookie', 'authCookie']; - var contentTypes = []; - var accepts = ['application/json']; - var returnType = File; - return this.apiClient.callApi('/file/{fileId}/{versionId}', 'DELETE', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); - } - /** - * Delete File Version - * Delete a specific version of a file. You can only delete the latest version. - * @param {String} fileId - * @param {Number} versionId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link File} - */ - - }, { - key: "deleteFileVersion", - value: function deleteFileVersion(fileId, versionId) { - return this.deleteFileVersionWithHttpInfo(fileId, versionId).then(function (response_and_data) { - return response_and_data.data; - }); - } - /** - * Download File Version - * Downloads the file with the provided version number. **Version Note:** Version 0 is always when the file was created. The real data is usually always located in version 1 and up. **Extension Note:** Files are not guaranteed to have a file extensions. UnityPackage files tends to have it, images through this endpoint do not. You are responsible for appending file extension from the `extension` field when neccesary. - * @param {String} fileId - * @param {Number} versionId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing HTTP response - */ - - }, { - key: "downloadFileVersionWithHttpInfo", - value: function downloadFileVersionWithHttpInfo(fileId, versionId) { - var postBody = null; // verify the required parameter 'fileId' is set - - if (fileId === undefined || fileId === null) { - throw new _Error["default"]("Missing the required parameter 'fileId' when calling downloadFileVersion"); - } // verify the required parameter 'versionId' is set - - - if (versionId === undefined || versionId === null) { - throw new _Error["default"]("Missing the required parameter 'versionId' when calling downloadFileVersion"); - } - - var pathParams = { - 'fileId': fileId, - 'versionId': versionId - }; - var queryParams = {}; - var headerParams = {}; - var formParams = {}; - var authNames = ['apiKeyCookie', 'authCookie']; - var contentTypes = []; - var accepts = []; - var returnType = null; - return this.apiClient.callApi('/file/{fileId}/{versionId}', 'GET', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); - } - /** - * Download File Version - * Downloads the file with the provided version number. **Version Note:** Version 0 is always when the file was created. The real data is usually always located in version 1 and up. **Extension Note:** Files are not guaranteed to have a file extensions. UnityPackage files tends to have it, images through this endpoint do not. You are responsible for appending file extension from the `extension` field when neccesary. - * @param {String} fileId - * @param {Number} versionId - * @return {Promise} a {@link https://www.promisejs.org/|Promise} - */ - - }, { - key: "downloadFileVersion", - value: function downloadFileVersion(fileId, versionId) { - return this.downloadFileVersionWithHttpInfo(fileId, versionId).then(function (response_and_data) { - return response_and_data.data; - }); - } - /** - * Finish FileData Upload - * Finish an upload of a FileData. This will mark it as \"complete\". After uploading the `file` for Avatars and Worlds you then have to upload a `signature` file. - * @param {String} fileId - * @param {Number} versionId - * @param {module:model/String} fileType - * @param {Object} opts Optional parameters - * @param {module:model/InlineObject4} opts.inlineObject4 - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link File} and HTTP response - */ - - }, { - key: "finishFileDataUploadWithHttpInfo", - value: function finishFileDataUploadWithHttpInfo(fileId, versionId, fileType, opts) { - opts = opts || {}; - var postBody = opts['inlineObject4']; // verify the required parameter 'fileId' is set - - if (fileId === undefined || fileId === null) { - throw new _Error["default"]("Missing the required parameter 'fileId' when calling finishFileDataUpload"); - } // verify the required parameter 'versionId' is set - - - if (versionId === undefined || versionId === null) { - throw new _Error["default"]("Missing the required parameter 'versionId' when calling finishFileDataUpload"); - } // verify the required parameter 'fileType' is set - - - if (fileType === undefined || fileType === null) { - throw new _Error["default"]("Missing the required parameter 'fileType' when calling finishFileDataUpload"); - } - - var pathParams = { - 'fileId': fileId, - 'versionId': versionId, - 'fileType': fileType - }; - var queryParams = {}; - var headerParams = {}; - var formParams = {}; - var authNames = ['apiKeyCookie', 'authCookie']; - var contentTypes = ['application/json']; - var accepts = ['application/json']; - var returnType = File; - return this.apiClient.callApi('/file/{fileId}/{versionId}/{fileType}/finish', 'PUT', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); - } - /** - * Finish FileData Upload - * Finish an upload of a FileData. This will mark it as \"complete\". After uploading the `file` for Avatars and Worlds you then have to upload a `signature` file. - * @param {String} fileId - * @param {Number} versionId - * @param {module:model/String} fileType - * @param {Object} opts Optional parameters - * @param {module:model/InlineObject4} opts.inlineObject4 - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link File} - */ - - }, { - key: "finishFileDataUpload", - value: function finishFileDataUpload(fileId, versionId, fileType, opts) { - return this.finishFileDataUploadWithHttpInfo(fileId, versionId, fileType, opts).then(function (response_and_data) { - return response_and_data.data; - }); - } - /** - * Show File - * Shows general information about the \"File\" object. Each File can have several \"Version\"'s, and each Version can have multiple real files or \"Data\" blobs. - * @param {String} fileId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link File} and HTTP response - */ - - }, { - key: "getFileWithHttpInfo", - value: function getFileWithHttpInfo(fileId) { - var postBody = null; // verify the required parameter 'fileId' is set - - if (fileId === undefined || fileId === null) { - throw new _Error["default"]("Missing the required parameter 'fileId' when calling getFile"); - } - - var pathParams = { - 'fileId': fileId - }; - var queryParams = {}; - var headerParams = {}; - var formParams = {}; - var authNames = ['apiKeyCookie', 'authCookie']; - var contentTypes = []; - var accepts = ['application/json']; - var returnType = File; - return this.apiClient.callApi('/file/{fileId}', 'GET', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); - } - /** - * Show File - * Shows general information about the \"File\" object. Each File can have several \"Version\"'s, and each Version can have multiple real files or \"Data\" blobs. - * @param {String} fileId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link File} - */ - - }, { - key: "getFile", - value: function getFile(fileId) { - return this.getFileWithHttpInfo(fileId).then(function (response_and_data) { - return response_and_data.data; - }); - } - /** - * Check FileData Upload Status - * Retrieves the upload status for file upload. Can currently only be accessed when `status` is `waiting`. Trying to access it on a file version already uploaded currently times out. - * @param {String} fileId - * @param {Number} versionId - * @param {module:model/String} fileType - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/InlineResponse2004} and HTTP response - */ - - }, { - key: "getFileDataUploadStatusWithHttpInfo", - value: function getFileDataUploadStatusWithHttpInfo(fileId, versionId, fileType) { - var postBody = null; // verify the required parameter 'fileId' is set - - if (fileId === undefined || fileId === null) { - throw new _Error["default"]("Missing the required parameter 'fileId' when calling getFileDataUploadStatus"); - } // verify the required parameter 'versionId' is set - - - if (versionId === undefined || versionId === null) { - throw new _Error["default"]("Missing the required parameter 'versionId' when calling getFileDataUploadStatus"); - } // verify the required parameter 'fileType' is set - - - if (fileType === undefined || fileType === null) { - throw new _Error["default"]("Missing the required parameter 'fileType' when calling getFileDataUploadStatus"); - } - - var pathParams = { - 'fileId': fileId, - 'versionId': versionId, - 'fileType': fileType - }; - var queryParams = {}; - var headerParams = {}; - var formParams = {}; - var authNames = ['apiKeyCookie', 'authCookie']; - var contentTypes = []; - var accepts = ['application/json']; - var returnType = _InlineResponse["default"]; - return this.apiClient.callApi('/file/{fileId}/{versionId}/{fileType}/status', 'GET', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); - } - /** - * Check FileData Upload Status - * Retrieves the upload status for file upload. Can currently only be accessed when `status` is `waiting`. Trying to access it on a file version already uploaded currently times out. - * @param {String} fileId - * @param {Number} versionId - * @param {module:model/String} fileType - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/InlineResponse2004} - */ - - }, { - key: "getFileDataUploadStatus", - value: function getFileDataUploadStatus(fileId, versionId, fileType) { - return this.getFileDataUploadStatusWithHttpInfo(fileId, versionId, fileType).then(function (response_and_data) { - return response_and_data.data; - }); - } - /** - * List Files - * Returns a list of files - * @param {Object} opts Optional parameters - * @param {String} opts.tag Tag, for example \"icon\" or \"gallery\", not included by default. - * @param {String} opts.userId UserID, will always generate a 500 permission error. - * @param {Number} opts.n The number of objects to return. (default to 60) - * @param {Number} opts.offset A zero-based offset from the default object sorting from where search results start. - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link Array.} and HTTP response - */ - - }, { - key: "getFilesWithHttpInfo", - value: function getFilesWithHttpInfo(opts) { - opts = opts || {}; - var postBody = null; - var pathParams = {}; - var queryParams = { - 'tag': opts['tag'], - 'userId': opts['userId'], - 'n': opts['n'], - 'offset': opts['offset'] - }; - var headerParams = {}; - var formParams = {}; - var authNames = ['apiKeyCookie', 'authCookie']; - var contentTypes = []; - var accepts = ['application/json']; - var returnType = [File]; - return this.apiClient.callApi('/files', 'GET', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); - } - /** - * List Files - * Returns a list of files - * @param {Object} opts Optional parameters - * @param {String} opts.tag Tag, for example \"icon\" or \"gallery\", not included by default. - * @param {String} opts.userId UserID, will always generate a 500 permission error. - * @param {Number} opts.n The number of objects to return. (default to 60) - * @param {Number} opts.offset A zero-based offset from the default object sorting from where search results start. - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link Array.} - */ - - }, { - key: "getFiles", - value: function getFiles(opts) { - return this.getFilesWithHttpInfo(opts).then(function (response_and_data) { - return response_and_data.data; - }); - } - /** - * Start FileData Upload - * Starts an upload of a specific FilePart. This endpoint will return an AWS URL which you can PUT data to. You need to call this and receive a new AWS API URL for each `partNumber`. Please see AWS's REST documentation on \"PUT Object to S3\" on how to upload. Once all parts has been uploaded, proceed to `/finish` endpoint. **Note:** `nextPartNumber` seems like it is always ignored. Despite it returning 0, first partNumber is always 1. - * @param {String} fileId - * @param {Number} versionId - * @param {module:model/String} fileType - * @param {Number} partNumber - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/InlineResponse2005} and HTTP response - */ - - }, { - key: "startFileDataUploadWithHttpInfo", - value: function startFileDataUploadWithHttpInfo(fileId, versionId, fileType, partNumber) { - var postBody = null; // verify the required parameter 'fileId' is set - - if (fileId === undefined || fileId === null) { - throw new _Error["default"]("Missing the required parameter 'fileId' when calling startFileDataUpload"); - } // verify the required parameter 'versionId' is set - - - if (versionId === undefined || versionId === null) { - throw new _Error["default"]("Missing the required parameter 'versionId' when calling startFileDataUpload"); - } // verify the required parameter 'fileType' is set - - - if (fileType === undefined || fileType === null) { - throw new _Error["default"]("Missing the required parameter 'fileType' when calling startFileDataUpload"); - } // verify the required parameter 'partNumber' is set - - - if (partNumber === undefined || partNumber === null) { - throw new _Error["default"]("Missing the required parameter 'partNumber' when calling startFileDataUpload"); - } - - var pathParams = { - 'fileId': fileId, - 'versionId': versionId, - 'fileType': fileType - }; - var queryParams = { - 'partNumber': partNumber - }; - var headerParams = {}; - var formParams = {}; - var authNames = ['apiKeyCookie', 'authCookie']; - var contentTypes = []; - var accepts = ['application/json']; - var returnType = _InlineResponse2["default"]; - return this.apiClient.callApi('/file/{fileId}/{versionId}/{fileType}/start', 'PUT', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); - } - /** - * Start FileData Upload - * Starts an upload of a specific FilePart. This endpoint will return an AWS URL which you can PUT data to. You need to call this and receive a new AWS API URL for each `partNumber`. Please see AWS's REST documentation on \"PUT Object to S3\" on how to upload. Once all parts has been uploaded, proceed to `/finish` endpoint. **Note:** `nextPartNumber` seems like it is always ignored. Despite it returning 0, first partNumber is always 1. - * @param {String} fileId - * @param {Number} versionId - * @param {module:model/String} fileType - * @param {Number} partNumber - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/InlineResponse2005} - */ - - }, { - key: "startFileDataUpload", - value: function startFileDataUpload(fileId, versionId, fileType, partNumber) { - return this.startFileDataUploadWithHttpInfo(fileId, versionId, fileType, partNumber).then(function (response_and_data) { - return response_and_data.data; - }); - } - }]); - - return FilesApi; -}(); - -exports["default"] = FilesApi; \ No newline at end of file diff --git a/dist/api/FriendsApi.js b/dist/api/FriendsApi.js deleted file mode 100644 index f8bd6c3..0000000 --- a/dist/api/FriendsApi.js +++ /dev/null @@ -1,268 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; - -var _ApiClient = _interopRequireDefault(require("../ApiClient")); - -var _Error = _interopRequireDefault(require("../model/Error")); - -var _InlineResponse = _interopRequireDefault(require("../model/InlineResponse2003")); - -var _InlineResponse2 = _interopRequireDefault(require("../model/InlineResponse401")); - -var _LimitedUser = _interopRequireDefault(require("../model/LimitedUser")); - -var _Notification = _interopRequireDefault(require("../model/Notification")); - -var _Success = _interopRequireDefault(require("../model/Success")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -/** -* Friends service. -* @module api/FriendsApi -* @version 1.0.0 -*/ -var FriendsApi = /*#__PURE__*/function () { - /** - * Constructs a new FriendsApi. - * @alias module:api/FriendsApi - * @class - * @param {module:ApiClient} [apiClient] Optional API client implementation to use, - * default to {@link module:ApiClient#instance} if unspecified. - */ - function FriendsApi(apiClient) { - _classCallCheck(this, FriendsApi); - - this.apiClient = apiClient || _ApiClient["default"].instance; - } - /** - * Delete Friend Request - * Deletes an outgoing pending friend request to another user. To delete an incoming friend request, use the `deleteNotification` endpoint instead. - * @param {String} userId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/Success} and HTTP response - */ - - - _createClass(FriendsApi, [{ - key: "deleteFriendRequestWithHttpInfo", - value: function deleteFriendRequestWithHttpInfo(userId) { - var postBody = null; // verify the required parameter 'userId' is set - - if (userId === undefined || userId === null) { - throw new _Error["default"]("Missing the required parameter 'userId' when calling deleteFriendRequest"); - } - - var pathParams = { - 'userId': userId - }; - var queryParams = {}; - var headerParams = {}; - var formParams = {}; - var authNames = ['apiKeyCookie', 'authCookie']; - var contentTypes = []; - var accepts = ['application/json']; - var returnType = _Success["default"]; - return this.apiClient.callApi('/user/{userId}/friendRequest', 'DELETE', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); - } - /** - * Delete Friend Request - * Deletes an outgoing pending friend request to another user. To delete an incoming friend request, use the `deleteNotification` endpoint instead. - * @param {String} userId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/Success} - */ - - }, { - key: "deleteFriendRequest", - value: function deleteFriendRequest(userId) { - return this.deleteFriendRequestWithHttpInfo(userId).then(function (response_and_data) { - return response_and_data.data; - }); - } - /** - * Send Friend Request - * Send a friend request to another user. - * @param {String} userId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/Notification} and HTTP response - */ - - }, { - key: "friendWithHttpInfo", - value: function friendWithHttpInfo(userId) { - var postBody = null; // verify the required parameter 'userId' is set - - if (userId === undefined || userId === null) { - throw new _Error["default"]("Missing the required parameter 'userId' when calling friend"); - } - - var pathParams = { - 'userId': userId - }; - var queryParams = {}; - var headerParams = {}; - var formParams = {}; - var authNames = ['apiKeyCookie', 'authCookie']; - var contentTypes = []; - var accepts = ['application/json']; - var returnType = _Notification["default"]; - return this.apiClient.callApi('/user/{userId}/friendRequest', 'POST', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); - } - /** - * Send Friend Request - * Send a friend request to another user. - * @param {String} userId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/Notification} - */ - - }, { - key: "friend", - value: function friend(userId) { - return this.friendWithHttpInfo(userId).then(function (response_and_data) { - return response_and_data.data; - }); - } - /** - * Check Friend Status - * Retrieve if the user is currently a friend with a given user, if they have an outgoing friend request, and if they have an incoming friend request. The proper way to receive and accept friend request is by checking if the user has an incoming `Notification` of type `friendRequest`, and then accepting that notification. - * @param {String} userId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/InlineResponse2003} and HTTP response - */ - - }, { - key: "getFriendStatusWithHttpInfo", - value: function getFriendStatusWithHttpInfo(userId) { - var postBody = null; // verify the required parameter 'userId' is set - - if (userId === undefined || userId === null) { - throw new _Error["default"]("Missing the required parameter 'userId' when calling getFriendStatus"); - } - - var pathParams = { - 'userId': userId - }; - var queryParams = {}; - var headerParams = {}; - var formParams = {}; - var authNames = ['apiKeyCookie', 'authCookie']; - var contentTypes = []; - var accepts = ['application/json']; - var returnType = _InlineResponse["default"]; - return this.apiClient.callApi('/user/{userId}/friendStatus', 'GET', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); - } - /** - * Check Friend Status - * Retrieve if the user is currently a friend with a given user, if they have an outgoing friend request, and if they have an incoming friend request. The proper way to receive and accept friend request is by checking if the user has an incoming `Notification` of type `friendRequest`, and then accepting that notification. - * @param {String} userId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/InlineResponse2003} - */ - - }, { - key: "getFriendStatus", - value: function getFriendStatus(userId) { - return this.getFriendStatusWithHttpInfo(userId).then(function (response_and_data) { - return response_and_data.data; - }); - } - /** - * List Friends - * List information about friends. - * @param {Object} opts Optional parameters - * @param {Number} opts.offset A zero-based offset from the default object sorting from where search results start. - * @param {Number} opts.n The number of objects to return. (default to 60) - * @param {Boolean} opts.offline Returns *only* offline users if true, returns only online and active users if false - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link Array.} and HTTP response - */ - - }, { - key: "getFriendsWithHttpInfo", - value: function getFriendsWithHttpInfo(opts) { - opts = opts || {}; - var postBody = null; - var pathParams = {}; - var queryParams = { - 'offset': opts['offset'], - 'n': opts['n'], - 'offline': opts['offline'] - }; - var headerParams = {}; - var formParams = {}; - var authNames = ['apiKeyCookie', 'authCookie']; - var contentTypes = []; - var accepts = ['application/json']; - var returnType = [_LimitedUser["default"]]; - return this.apiClient.callApi('/auth/user/friends', 'GET', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); - } - /** - * List Friends - * List information about friends. - * @param {Object} opts Optional parameters - * @param {Number} opts.offset A zero-based offset from the default object sorting from where search results start. - * @param {Number} opts.n The number of objects to return. (default to 60) - * @param {Boolean} opts.offline Returns *only* offline users if true, returns only online and active users if false - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link Array.} - */ - - }, { - key: "getFriends", - value: function getFriends(opts) { - return this.getFriendsWithHttpInfo(opts).then(function (response_and_data) { - return response_and_data.data; - }); - } - /** - * Unfriend - * Unfriend a user by ID. - * @param {String} userId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/Success} and HTTP response - */ - - }, { - key: "unfriendWithHttpInfo", - value: function unfriendWithHttpInfo(userId) { - var postBody = null; // verify the required parameter 'userId' is set - - if (userId === undefined || userId === null) { - throw new _Error["default"]("Missing the required parameter 'userId' when calling unfriend"); - } - - var pathParams = { - 'userId': userId - }; - var queryParams = {}; - var headerParams = {}; - var formParams = {}; - var authNames = ['apiKeyCookie', 'authCookie']; - var contentTypes = []; - var accepts = ['application/json']; - var returnType = _Success["default"]; - return this.apiClient.callApi('/auth/user/friends/{userId}', 'DELETE', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); - } - /** - * Unfriend - * Unfriend a user by ID. - * @param {String} userId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/Success} - */ - - }, { - key: "unfriend", - value: function unfriend(userId) { - return this.unfriendWithHttpInfo(userId).then(function (response_and_data) { - return response_and_data.data; - }); - } - }]); - - return FriendsApi; -}(); - -exports["default"] = FriendsApi; \ No newline at end of file diff --git a/dist/api/NotificationsApi.js b/dist/api/NotificationsApi.js deleted file mode 100644 index 1255870..0000000 --- a/dist/api/NotificationsApi.js +++ /dev/null @@ -1,264 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; - -var _ApiClient = _interopRequireDefault(require("../ApiClient")); - -var _Error = _interopRequireDefault(require("../model/Error")); - -var _InlineResponse = _interopRequireDefault(require("../model/InlineResponse401")); - -var _Notification = _interopRequireDefault(require("../model/Notification")); - -var _Success = _interopRequireDefault(require("../model/Success")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -/** -* Notifications service. -* @module api/NotificationsApi -* @version 1.0.0 -*/ -var NotificationsApi = /*#__PURE__*/function () { - /** - * Constructs a new NotificationsApi. - * @alias module:api/NotificationsApi - * @class - * @param {module:ApiClient} [apiClient] Optional API client implementation to use, - * default to {@link module:ApiClient#instance} if unspecified. - */ - function NotificationsApi(apiClient) { - _classCallCheck(this, NotificationsApi); - - this.apiClient = apiClient || _ApiClient["default"].instance; - } - /** - * Accept Friend Request - * Accept a friend request by notification `frq_` ID. Friend requests can be found using the NotificationsAPI `getNotifications` by filtering of type `friendRequest`. - * @param {String} notificationId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/Success} and HTTP response - */ - - - _createClass(NotificationsApi, [{ - key: "acceptFriendRequestWithHttpInfo", - value: function acceptFriendRequestWithHttpInfo(notificationId) { - var postBody = null; // verify the required parameter 'notificationId' is set - - if (notificationId === undefined || notificationId === null) { - throw new _Error["default"]("Missing the required parameter 'notificationId' when calling acceptFriendRequest"); - } - - var pathParams = { - 'notificationId': notificationId - }; - var queryParams = {}; - var headerParams = {}; - var formParams = {}; - var authNames = ['apiKeyCookie', 'authCookie']; - var contentTypes = []; - var accepts = ['application/json']; - var returnType = _Success["default"]; - return this.apiClient.callApi('/auth/user/notifications/{notificationId}/accept', 'PUT', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); - } - /** - * Accept Friend Request - * Accept a friend request by notification `frq_` ID. Friend requests can be found using the NotificationsAPI `getNotifications` by filtering of type `friendRequest`. - * @param {String} notificationId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/Success} - */ - - }, { - key: "acceptFriendRequest", - value: function acceptFriendRequest(notificationId) { - return this.acceptFriendRequestWithHttpInfo(notificationId).then(function (response_and_data) { - return response_and_data.data; - }); - } - /** - * Clear All Notifications - * Clear **all** notifications. - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/Success} and HTTP response - */ - - }, { - key: "clearNotificationsWithHttpInfo", - value: function clearNotificationsWithHttpInfo() { - var postBody = null; - var pathParams = {}; - var queryParams = {}; - var headerParams = {}; - var formParams = {}; - var authNames = ['apiKeyCookie', 'authCookie']; - var contentTypes = []; - var accepts = ['application/json']; - var returnType = _Success["default"]; - return this.apiClient.callApi('/auth/user/notifications/clear', 'PUT', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); - } - /** - * Clear All Notifications - * Clear **all** notifications. - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/Success} - */ - - }, { - key: "clearNotifications", - value: function clearNotifications() { - return this.clearNotificationsWithHttpInfo().then(function (response_and_data) { - return response_and_data.data; - }); - } - /** - * Delete Notification - * Delete a notification. - * @param {String} notificationId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/Notification} and HTTP response - */ - - }, { - key: "deleteNotificationWithHttpInfo", - value: function deleteNotificationWithHttpInfo(notificationId) { - var postBody = null; // verify the required parameter 'notificationId' is set - - if (notificationId === undefined || notificationId === null) { - throw new _Error["default"]("Missing the required parameter 'notificationId' when calling deleteNotification"); - } - - var pathParams = { - 'notificationId': notificationId - }; - var queryParams = {}; - var headerParams = {}; - var formParams = {}; - var authNames = ['apiKeyCookie', 'authCookie']; - var contentTypes = []; - var accepts = ['application/json']; - var returnType = _Notification["default"]; - return this.apiClient.callApi('/auth/user/notifications/{notificationId}/hide', 'PUT', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); - } - /** - * Delete Notification - * Delete a notification. - * @param {String} notificationId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/Notification} - */ - - }, { - key: "deleteNotification", - value: function deleteNotification(notificationId) { - return this.deleteNotificationWithHttpInfo(notificationId).then(function (response_and_data) { - return response_and_data.data; - }); - } - /** - * List Notifications - * Retrieve all of the current user's notifications. - * @param {Object} opts Optional parameters - * @param {String} opts.type Only send notifications of this type (can use `all` for all). - * @param {Boolean} opts.sent Return notifications sent by the user. Must be false or omitted. - * @param {Boolean} opts.hidden Whether to return hidden or non-hidden notifications. True only allowed on type `friendRequest`. - * @param {String} opts.after Only return notifications sent after this Date. Ignored if type is `friendRequest`. - * @param {Number} opts.n The number of objects to return. (default to 60) - * @param {Number} opts.offset A zero-based offset from the default object sorting from where search results start. - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link Array.} and HTTP response - */ - - }, { - key: "getNotificationsWithHttpInfo", - value: function getNotificationsWithHttpInfo(opts) { - opts = opts || {}; - var postBody = null; - var pathParams = {}; - var queryParams = { - 'type': opts['type'], - 'sent': opts['sent'], - 'hidden': opts['hidden'], - 'after': opts['after'], - 'n': opts['n'], - 'offset': opts['offset'] - }; - var headerParams = {}; - var formParams = {}; - var authNames = ['apiKeyCookie', 'authCookie']; - var contentTypes = []; - var accepts = ['application/json']; - var returnType = [_Notification["default"]]; - return this.apiClient.callApi('/auth/user/notifications', 'GET', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); - } - /** - * List Notifications - * Retrieve all of the current user's notifications. - * @param {Object} opts Optional parameters - * @param {String} opts.type Only send notifications of this type (can use `all` for all). - * @param {Boolean} opts.sent Return notifications sent by the user. Must be false or omitted. - * @param {Boolean} opts.hidden Whether to return hidden or non-hidden notifications. True only allowed on type `friendRequest`. - * @param {String} opts.after Only return notifications sent after this Date. Ignored if type is `friendRequest`. - * @param {Number} opts.n The number of objects to return. (default to 60) - * @param {Number} opts.offset A zero-based offset from the default object sorting from where search results start. - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link Array.} - */ - - }, { - key: "getNotifications", - value: function getNotifications(opts) { - return this.getNotificationsWithHttpInfo(opts).then(function (response_and_data) { - return response_and_data.data; - }); - } - /** - * Mark As Read - * Mark a notification as seen. - * @param {String} notificationId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/Notification} and HTTP response - */ - - }, { - key: "markNotificationAsReadWithHttpInfo", - value: function markNotificationAsReadWithHttpInfo(notificationId) { - var postBody = null; // verify the required parameter 'notificationId' is set - - if (notificationId === undefined || notificationId === null) { - throw new _Error["default"]("Missing the required parameter 'notificationId' when calling markNotificationAsRead"); - } - - var pathParams = { - 'notificationId': notificationId - }; - var queryParams = {}; - var headerParams = {}; - var formParams = {}; - var authNames = ['apiKeyCookie', 'authCookie']; - var contentTypes = []; - var accepts = ['application/json']; - var returnType = _Notification["default"]; - return this.apiClient.callApi('/auth/user/notifications/{notificationId}/see', 'PUT', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); - } - /** - * Mark As Read - * Mark a notification as seen. - * @param {String} notificationId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/Notification} - */ - - }, { - key: "markNotificationAsRead", - value: function markNotificationAsRead(notificationId) { - return this.markNotificationAsReadWithHttpInfo(notificationId).then(function (response_and_data) { - return response_and_data.data; - }); - } - }]); - - return NotificationsApi; -}(); - -exports["default"] = NotificationsApi; \ No newline at end of file diff --git a/dist/api/SystemApi.js b/dist/api/SystemApi.js deleted file mode 100644 index b278693..0000000 --- a/dist/api/SystemApi.js +++ /dev/null @@ -1,178 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; - -var _ApiClient = _interopRequireDefault(require("../ApiClient")); - -var _Config = _interopRequireDefault(require("../model/Config")); - -var _InlineResponse = _interopRequireDefault(require("../model/InlineResponse2002")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -/** -* System service. -* @module api/SystemApi -* @version 1.0.0 -*/ -var SystemApi = /*#__PURE__*/function () { - /** - * Constructs a new SystemApi. - * @alias module:api/SystemApi - * @class - * @param {module:ApiClient} [apiClient] Optional API client implementation to use, - * default to {@link module:ApiClient#instance} if unspecified. - */ - function SystemApi(apiClient) { - _classCallCheck(this, SystemApi); - - this.apiClient = apiClient || _ApiClient["default"].instance; - } - /** - * Fetch API Config - * API config contains configuration that the clients needs to work properly. Currently the most important value here is `clientApiKey` which is used for all other API endpoints. - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/Config} and HTTP response - */ - - - _createClass(SystemApi, [{ - key: "getConfigWithHttpInfo", - value: function getConfigWithHttpInfo() { - var postBody = null; - var pathParams = {}; - var queryParams = {}; - var headerParams = {}; - var formParams = {}; - var authNames = []; - var contentTypes = []; - var accepts = ['application/json']; - var returnType = _Config["default"]; - return this.apiClient.callApi('/config', 'GET', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); - } - /** - * Fetch API Config - * API config contains configuration that the clients needs to work properly. Currently the most important value here is `clientApiKey` which is used for all other API endpoints. - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/Config} - */ - - }, { - key: "getConfig", - value: function getConfig() { - return this.getConfigWithHttpInfo().then(function (response_and_data) { - return response_and_data.data; - }); - } - /** - * Current Online Users - * Returns in plain format the number of currently online users. **NOTE:** The response type is not of JSON, but is an integer in plain ASCII format. - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link Number} and HTTP response - */ - - }, { - key: "getCurrentOnlineUsersWithHttpInfo", - value: function getCurrentOnlineUsersWithHttpInfo() { - var postBody = null; - var pathParams = {}; - var queryParams = {}; - var headerParams = {}; - var formParams = {}; - var authNames = []; - var contentTypes = []; - var accepts = ['text/plain']; - var returnType = 'Number'; - return this.apiClient.callApi('/visits', 'GET', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); - } - /** - * Current Online Users - * Returns in plain format the number of currently online users. **NOTE:** The response type is not of JSON, but is an integer in plain ASCII format. - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link Number} - */ - - }, { - key: "getCurrentOnlineUsers", - value: function getCurrentOnlineUsers() { - return this.getCurrentOnlineUsersWithHttpInfo().then(function (response_and_data) { - return response_and_data.data; - }); - } - /** - * Check API Health - * Gets the overall health status, the server name, and the current build version tag of the API. - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/InlineResponse2002} and HTTP response - */ - - }, { - key: "getHealthWithHttpInfo", - value: function getHealthWithHttpInfo() { - var postBody = null; - var pathParams = {}; - var queryParams = {}; - var headerParams = {}; - var formParams = {}; - var authNames = []; - var contentTypes = []; - var accepts = ['application/json']; - var returnType = _InlineResponse["default"]; - return this.apiClient.callApi('/health', 'GET', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); - } - /** - * Check API Health - * Gets the overall health status, the server name, and the current build version tag of the API. - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/InlineResponse2002} - */ - - }, { - key: "getHealth", - value: function getHealth() { - return this.getHealthWithHttpInfo().then(function (response_and_data) { - return response_and_data.data; - }); - } - /** - * Current System Time - * Returns in plain format the current time of the API server. **NOTE:** The response type is not of JSON, but is a string in plain ASCII format. - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link Date} and HTTP response - */ - - }, { - key: "getSystemTimeWithHttpInfo", - value: function getSystemTimeWithHttpInfo() { - var postBody = null; - var pathParams = {}; - var queryParams = {}; - var headerParams = {}; - var formParams = {}; - var authNames = []; - var contentTypes = []; - var accepts = ['text/plain']; - var returnType = 'Date'; - return this.apiClient.callApi('/time', 'GET', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); - } - /** - * Current System Time - * Returns in plain format the current time of the API server. **NOTE:** The response type is not of JSON, but is a string in plain ASCII format. - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link Date} - */ - - }, { - key: "getSystemTime", - value: function getSystemTime() { - return this.getSystemTimeWithHttpInfo().then(function (response_and_data) { - return response_and_data.data; - }); - } - }]); - - return SystemApi; -}(); - -exports["default"] = SystemApi; \ No newline at end of file diff --git a/dist/api/UsersApi.js b/dist/api/UsersApi.js deleted file mode 100644 index 5f176a9..0000000 --- a/dist/api/UsersApi.js +++ /dev/null @@ -1,286 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; - -var _ApiClient = _interopRequireDefault(require("../ApiClient")); - -var _CurrentUser = _interopRequireDefault(require("../model/CurrentUser")); - -var _InlineObject = _interopRequireDefault(require("../model/InlineObject2")); - -var _InlineResponse = _interopRequireDefault(require("../model/InlineResponse401")); - -var _LimitedUser = _interopRequireDefault(require("../model/LimitedUser")); - -var _User = _interopRequireDefault(require("../model/User")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -/** -* Users service. -* @module api/UsersApi -* @version 1.0.0 -*/ -var UsersApi = /*#__PURE__*/function () { - /** - * Constructs a new UsersApi. - * @alias module:api/UsersApi - * @class - * @param {module:ApiClient} [apiClient] Optional API client implementation to use, - * default to {@link module:ApiClient#instance} if unspecified. - */ - function UsersApi(apiClient) { - _classCallCheck(this, UsersApi); - - this.apiClient = apiClient || _ApiClient["default"].instance; - } - /** - * Get User by ID - * Get public user information about a specific user using their ID. - * @param {String} userId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/User} and HTTP response - */ - - - _createClass(UsersApi, [{ - key: "getUserWithHttpInfo", - value: function getUserWithHttpInfo(userId) { - var postBody = null; // verify the required parameter 'userId' is set - - if (userId === undefined || userId === null) { - throw new Error("Missing the required parameter 'userId' when calling getUser"); - } - - var pathParams = { - 'userId': userId - }; - var queryParams = {}; - var headerParams = {}; - var formParams = {}; - var authNames = ['apiKeyCookie', 'authCookie']; - var contentTypes = []; - var accepts = ['application/json']; - var returnType = _User["default"]; - return this.apiClient.callApi('/users/{userId}', 'GET', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); - } - /** - * Get User by ID - * Get public user information about a specific user using their ID. - * @param {String} userId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/User} - */ - - }, { - key: "getUser", - value: function getUser(userId) { - return this.getUserWithHttpInfo(userId).then(function (response_and_data) { - return response_and_data.data; - }); - } - /** - * Get User by Username - * Get public user information about a specific user using their name. - * @param {String} username - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/User} and HTTP response - */ - - }, { - key: "getUserByNameWithHttpInfo", - value: function getUserByNameWithHttpInfo(username) { - var postBody = null; // verify the required parameter 'username' is set - - if (username === undefined || username === null) { - throw new Error("Missing the required parameter 'username' when calling getUserByName"); - } - - var pathParams = { - 'username': username - }; - var queryParams = {}; - var headerParams = {}; - var formParams = {}; - var authNames = ['apiKeyCookie', 'authCookie']; - var contentTypes = []; - var accepts = ['application/json']; - var returnType = _User["default"]; - return this.apiClient.callApi('/users/{username}/name', 'GET', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); - } - /** - * Get User by Username - * Get public user information about a specific user using their name. - * @param {String} username - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/User} - */ - - }, { - key: "getUserByName", - value: function getUserByName(username) { - return this.getUserByNameWithHttpInfo(username).then(function (response_and_data) { - return response_and_data.data; - }); - } - /** - * Search Active Users - * Search and list any Active users by text query. **Has been locked down and now always respond with \"Invalid Admin Credentials\".** - * @param {String} search Username to search for - * @param {Object} opts Optional parameters - * @param {String} opts.developerType Active user by developer type, none for normal users and internal for moderators - * @param {Number} opts.offset A zero-based offset from the default object sorting from where search results start. - * @param {Number} opts.n The number of objects to return. (default to 60) - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link Array.} and HTTP response - */ - - }, { - key: "searchActiveUsersWithHttpInfo", - value: function searchActiveUsersWithHttpInfo(search, opts) { - opts = opts || {}; - var postBody = null; // verify the required parameter 'search' is set - - if (search === undefined || search === null) { - throw new Error("Missing the required parameter 'search' when calling searchActiveUsers"); - } - - var pathParams = {}; - var queryParams = { - 'search': search, - 'developerType': opts['developerType'], - 'offset': opts['offset'], - 'n': opts['n'] - }; - var headerParams = {}; - var formParams = {}; - var authNames = ['apiKeyCookie', 'authCookie']; - var contentTypes = []; - var accepts = ['application/json']; - var returnType = [_LimitedUser["default"]]; - return this.apiClient.callApi('/users/active', 'GET', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); - } - /** - * Search Active Users - * Search and list any Active users by text query. **Has been locked down and now always respond with \"Invalid Admin Credentials\".** - * @param {String} search Username to search for - * @param {Object} opts Optional parameters - * @param {String} opts.developerType Active user by developer type, none for normal users and internal for moderators - * @param {Number} opts.offset A zero-based offset from the default object sorting from where search results start. - * @param {Number} opts.n The number of objects to return. (default to 60) - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link Array.} - */ - - }, { - key: "searchActiveUsers", - value: function searchActiveUsers(search, opts) { - return this.searchActiveUsersWithHttpInfo(search, opts).then(function (response_and_data) { - return response_and_data.data; - }); - } - /** - * Search All Users - * Search and list any users by text query - * @param {Object} opts Optional parameters - * @param {String} opts.search Searches by `displayName`. Will return empty array if search query is empty or missing. - * @param {String} opts.developerType Active user by developer type, none for normal users and internal for moderators - * @param {Number} opts.n The number of objects to return. (default to 60) - * @param {Number} opts.offset A zero-based offset from the default object sorting from where search results start. - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link Array.} and HTTP response - */ - - }, { - key: "searchUsersWithHttpInfo", - value: function searchUsersWithHttpInfo(opts) { - opts = opts || {}; - var postBody = null; - var pathParams = {}; - var queryParams = { - 'search': opts['search'], - 'developerType': opts['developerType'], - 'n': opts['n'], - 'offset': opts['offset'] - }; - var headerParams = {}; - var formParams = {}; - var authNames = ['apiKeyCookie', 'authCookie']; - var contentTypes = []; - var accepts = ['application/json']; - var returnType = [_LimitedUser["default"]]; - return this.apiClient.callApi('/users', 'GET', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); - } - /** - * Search All Users - * Search and list any users by text query - * @param {Object} opts Optional parameters - * @param {String} opts.search Searches by `displayName`. Will return empty array if search query is empty or missing. - * @param {String} opts.developerType Active user by developer type, none for normal users and internal for moderators - * @param {Number} opts.n The number of objects to return. (default to 60) - * @param {Number} opts.offset A zero-based offset from the default object sorting from where search results start. - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link Array.} - */ - - }, { - key: "searchUsers", - value: function searchUsers(opts) { - return this.searchUsersWithHttpInfo(opts).then(function (response_and_data) { - return response_and_data.data; - }); - } - /** - * Update User Info - * Update a users information such as the email and birthday. - * @param {String} userId - * @param {Object} opts Optional parameters - * @param {module:model/InlineObject2} opts.inlineObject2 - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/CurrentUser} and HTTP response - */ - - }, { - key: "updateUserWithHttpInfo", - value: function updateUserWithHttpInfo(userId, opts) { - opts = opts || {}; - var postBody = opts['inlineObject2']; // verify the required parameter 'userId' is set - - if (userId === undefined || userId === null) { - throw new Error("Missing the required parameter 'userId' when calling updateUser"); - } - - var pathParams = { - 'userId': userId - }; - var queryParams = {}; - var headerParams = {}; - var formParams = {}; - var authNames = ['apiKeyCookie', 'authCookie']; - var contentTypes = ['application/json']; - var accepts = ['application/json']; - var returnType = _CurrentUser["default"]; - return this.apiClient.callApi('/users/{userId}', 'PUT', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); - } - /** - * Update User Info - * Update a users information such as the email and birthday. - * @param {String} userId - * @param {Object} opts Optional parameters - * @param {module:model/InlineObject2} opts.inlineObject2 - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/CurrentUser} - */ - - }, { - key: "updateUser", - value: function updateUser(userId, opts) { - return this.updateUserWithHttpInfo(userId, opts).then(function (response_and_data) { - return response_and_data.data; - }); - } - }]); - - return UsersApi; -}(); - -exports["default"] = UsersApi; \ No newline at end of file diff --git a/dist/api/WorldsApi.js b/dist/api/WorldsApi.js deleted file mode 100644 index 7b01921..0000000 --- a/dist/api/WorldsApi.js +++ /dev/null @@ -1,131 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; - -var _ApiClient = _interopRequireDefault(require("../ApiClient")); - -var _InlineResponse = _interopRequireDefault(require("../model/InlineResponse401")); - -var _LimitedWorld = _interopRequireDefault(require("../model/LimitedWorld")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -/** -* Worlds service. -* @module api/WorldsApi -* @version 1.0.0 -*/ -var WorldsApi = /*#__PURE__*/function () { - /** - * Constructs a new WorldsApi. - * @alias module:api/WorldsApi - * @class - * @param {module:ApiClient} [apiClient] Optional API client implementation to use, - * default to {@link module:ApiClient#instance} if unspecified. - */ - function WorldsApi(apiClient) { - _classCallCheck(this, WorldsApi); - - this.apiClient = apiClient || _ApiClient["default"].instance; - } - /** - * Search all worlds - * Search and list any worlds by text query - * @param {Object} opts Optional parameters - * @param {Boolean} opts.featured is the world featured - * @param {module:model/String} opts.sort (default to 'order') - * @param {String} opts.user Set to `me` for searching own worlds - * @param {String} opts.userId Filter by creator id, use `me` for only worlds owned by current user - * @param {Number} opts.n The number of objects to return. (default to 60) - * @param {module:model/String} opts.order (default to 'descending') - * @param {Number} opts.offset A zero-based offset from the default object sorting from where search results start. - * @param {String} opts.search Searches by `name`. Will return empty array if search query is empty or missing. - * @param {Array.} opts.tag Filter by Tag - * @param {Array.} opts.notag Tags to exclude - * @param {module:model/String} opts.releaseStatus (default to 'hidden') - * @param {String} opts.maxUnityVersion Current unity version the game is using - * @param {String} opts.minUnityVersion The min unity version the world support - * @param {String} opts.maxAssetVersion Current asset version the game is using - * @param {String} opts.minAssetVersion The min asset version the world support - * @param {String} opts.platform The platform the world supports (usually standalonewindows) - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link Array.} and HTTP response - */ - - - _createClass(WorldsApi, [{ - key: "searchWorldsWithHttpInfo", - value: function searchWorldsWithHttpInfo(opts) { - opts = opts || {}; - var postBody = null; - var pathParams = {}; - var queryParams = { - 'featured': opts['featured'], - 'sort': opts['sort'], - 'user': opts['user'], - 'userId': opts['userId'], - 'n': opts['n'], - 'order': opts['order'], - 'offset': opts['offset'], - 'search': opts['search'], - 'tag': this.apiClient.buildCollectionParam(opts['tag'], 'multi'), - 'notag': this.apiClient.buildCollectionParam(opts['notag'], 'multi'), - 'releaseStatus': opts['releaseStatus'], - 'maxUnityVersion': opts['maxUnityVersion'], - 'minUnityVersion': opts['minUnityVersion'], - 'maxAssetVersion': opts['maxAssetVersion'], - 'minAssetVersion': opts['minAssetVersion'], - 'platform': opts['platform'] - }; - var headerParams = {}; - var formParams = {}; - var authNames = ['apiKeyCookie', 'authCookie']; - var contentTypes = []; - var accepts = ['application/json']; - var returnType = [_LimitedWorld["default"]]; - return this.apiClient.callApi('/worlds', 'GET', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, null); - } - /** - * Search all worlds - * Search and list any worlds by text query - * @param {Object} opts Optional parameters - * @param {Boolean} opts.featured is the world featured - * @param {module:model/String} opts.sort (default to 'order') - * @param {String} opts.user Set to `me` for searching own worlds - * @param {String} opts.userId Filter by creator id, use `me` for only worlds owned by current user - * @param {Number} opts.n The number of objects to return. (default to 60) - * @param {module:model/String} opts.order (default to 'descending') - * @param {Number} opts.offset A zero-based offset from the default object sorting from where search results start. - * @param {String} opts.search Searches by `name`. Will return empty array if search query is empty or missing. - * @param {Array.} opts.tag Filter by Tag - * @param {Array.} opts.notag Tags to exclude - * @param {module:model/String} opts.releaseStatus (default to 'hidden') - * @param {String} opts.maxUnityVersion Current unity version the game is using - * @param {String} opts.minUnityVersion The min unity version the world support - * @param {String} opts.maxAssetVersion Current asset version the game is using - * @param {String} opts.minAssetVersion The min asset version the world support - * @param {String} opts.platform The platform the world supports (usually standalonewindows) - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link Array.} - */ - - }, { - key: "searchWorlds", - value: function searchWorlds(opts) { - return this.searchWorldsWithHttpInfo(opts).then(function (response_and_data) { - return response_and_data.data; - }); - } - }]); - - return WorldsApi; -}(); - -exports["default"] = WorldsApi; \ No newline at end of file diff --git a/dist/index.js b/dist/index.js deleted file mode 100644 index 8b3c3e2..0000000 --- a/dist/index.js +++ /dev/null @@ -1,359 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -Object.defineProperty(exports, "ApiClient", { - enumerable: true, - get: function get() { - return _ApiClient["default"]; - } -}); -Object.defineProperty(exports, "Config", { - enumerable: true, - get: function get() { - return _Config["default"]; - } -}); -Object.defineProperty(exports, "ConfigAnnouncements", { - enumerable: true, - get: function get() { - return _ConfigAnnouncements["default"]; - } -}); -Object.defineProperty(exports, "ConfigDownloadUrls", { - enumerable: true, - get: function get() { - return _ConfigDownloadUrls["default"]; - } -}); -Object.defineProperty(exports, "ConfigDynamicWorldRows", { - enumerable: true, - get: function get() { - return _ConfigDynamicWorldRows["default"]; - } -}); -Object.defineProperty(exports, "ConfigEvents", { - enumerable: true, - get: function get() { - return _ConfigEvents["default"]; - } -}); -Object.defineProperty(exports, "CurrentUser", { - enumerable: true, - get: function get() { - return _CurrentUser["default"]; - } -}); -Object.defineProperty(exports, "DeploymentGroup", { - enumerable: true, - get: function get() { - return _DeploymentGroup["default"]; - } -}); -Object.defineProperty(exports, "DeveloperType", { - enumerable: true, - get: function get() { - return _DeveloperType["default"]; - } -}); -Object.defineProperty(exports, "Error", { - enumerable: true, - get: function get() { - return _Error["default"]; - } -}); -Object.defineProperty(exports, "File", { - enumerable: true, - get: function get() { - return _File["default"]; - } -}); -Object.defineProperty(exports, "FileData", { - enumerable: true, - get: function get() { - return _FileData["default"]; - } -}); -Object.defineProperty(exports, "FileStatus", { - enumerable: true, - get: function get() { - return _FileStatus["default"]; - } -}); -Object.defineProperty(exports, "FileVersion", { - enumerable: true, - get: function get() { - return _FileVersion["default"]; - } -}); -Object.defineProperty(exports, "InlineObject", { - enumerable: true, - get: function get() { - return _InlineObject["default"]; - } -}); -Object.defineProperty(exports, "InlineObject1", { - enumerable: true, - get: function get() { - return _InlineObject2["default"]; - } -}); -Object.defineProperty(exports, "InlineObject2", { - enumerable: true, - get: function get() { - return _InlineObject3["default"]; - } -}); -Object.defineProperty(exports, "InlineObject3", { - enumerable: true, - get: function get() { - return _InlineObject4["default"]; - } -}); -Object.defineProperty(exports, "InlineObject4", { - enumerable: true, - get: function get() { - return _InlineObject5["default"]; - } -}); -Object.defineProperty(exports, "InlineResponse200", { - enumerable: true, - get: function get() { - return _InlineResponse["default"]; - } -}); -Object.defineProperty(exports, "InlineResponse2001", { - enumerable: true, - get: function get() { - return _InlineResponse2["default"]; - } -}); -Object.defineProperty(exports, "InlineResponse2002", { - enumerable: true, - get: function get() { - return _InlineResponse3["default"]; - } -}); -Object.defineProperty(exports, "InlineResponse2003", { - enumerable: true, - get: function get() { - return _InlineResponse4["default"]; - } -}); -Object.defineProperty(exports, "InlineResponse2004", { - enumerable: true, - get: function get() { - return _InlineResponse5["default"]; - } -}); -Object.defineProperty(exports, "InlineResponse2005", { - enumerable: true, - get: function get() { - return _InlineResponse6["default"]; - } -}); -Object.defineProperty(exports, "InlineResponse401", { - enumerable: true, - get: function get() { - return _InlineResponse7["default"]; - } -}); -Object.defineProperty(exports, "LimitedUser", { - enumerable: true, - get: function get() { - return _LimitedUser["default"]; - } -}); -Object.defineProperty(exports, "LimitedWorld", { - enumerable: true, - get: function get() { - return _LimitedWorld["default"]; - } -}); -Object.defineProperty(exports, "MIMEType", { - enumerable: true, - get: function get() { - return _MIMEType["default"]; - } -}); -Object.defineProperty(exports, "Notification", { - enumerable: true, - get: function get() { - return _Notification["default"]; - } -}); -Object.defineProperty(exports, "NotificationType", { - enumerable: true, - get: function get() { - return _NotificationType["default"]; - } -}); -Object.defineProperty(exports, "ReleaseStatus", { - enumerable: true, - get: function get() { - return _ReleaseStatus["default"]; - } -}); -Object.defineProperty(exports, "Response", { - enumerable: true, - get: function get() { - return _Response["default"]; - } -}); -Object.defineProperty(exports, "Success", { - enumerable: true, - get: function get() { - return _Success["default"]; - } -}); -Object.defineProperty(exports, "User", { - enumerable: true, - get: function get() { - return _User["default"]; - } -}); -Object.defineProperty(exports, "UserState", { - enumerable: true, - get: function get() { - return _UserState["default"]; - } -}); -Object.defineProperty(exports, "UserStatus", { - enumerable: true, - get: function get() { - return _UserStatus["default"]; - } -}); -Object.defineProperty(exports, "AuthenticationApi", { - enumerable: true, - get: function get() { - return _AuthenticationApi["default"]; - } -}); -Object.defineProperty(exports, "FilesApi", { - enumerable: true, - get: function get() { - return _FilesApi["default"]; - } -}); -Object.defineProperty(exports, "FriendsApi", { - enumerable: true, - get: function get() { - return _FriendsApi["default"]; - } -}); -Object.defineProperty(exports, "NotificationsApi", { - enumerable: true, - get: function get() { - return _NotificationsApi["default"]; - } -}); -Object.defineProperty(exports, "SystemApi", { - enumerable: true, - get: function get() { - return _SystemApi["default"]; - } -}); -Object.defineProperty(exports, "UsersApi", { - enumerable: true, - get: function get() { - return _UsersApi["default"]; - } -}); -Object.defineProperty(exports, "WorldsApi", { - enumerable: true, - get: function get() { - return _WorldsApi["default"]; - } -}); - -var _ApiClient = _interopRequireDefault(require("./ApiClient")); - -var _Config = _interopRequireDefault(require("./model/Config")); - -var _ConfigAnnouncements = _interopRequireDefault(require("./model/ConfigAnnouncements")); - -var _ConfigDownloadUrls = _interopRequireDefault(require("./model/ConfigDownloadUrls")); - -var _ConfigDynamicWorldRows = _interopRequireDefault(require("./model/ConfigDynamicWorldRows")); - -var _ConfigEvents = _interopRequireDefault(require("./model/ConfigEvents")); - -var _CurrentUser = _interopRequireDefault(require("./model/CurrentUser")); - -var _DeploymentGroup = _interopRequireDefault(require("./model/DeploymentGroup")); - -var _DeveloperType = _interopRequireDefault(require("./model/DeveloperType")); - -var _Error = _interopRequireDefault(require("./model/Error")); - -var _File = _interopRequireDefault(require("./model/File")); - -var _FileData = _interopRequireDefault(require("./model/FileData")); - -var _FileStatus = _interopRequireDefault(require("./model/FileStatus")); - -var _FileVersion = _interopRequireDefault(require("./model/FileVersion")); - -var _InlineObject = _interopRequireDefault(require("./model/InlineObject")); - -var _InlineObject2 = _interopRequireDefault(require("./model/InlineObject1")); - -var _InlineObject3 = _interopRequireDefault(require("./model/InlineObject2")); - -var _InlineObject4 = _interopRequireDefault(require("./model/InlineObject3")); - -var _InlineObject5 = _interopRequireDefault(require("./model/InlineObject4")); - -var _InlineResponse = _interopRequireDefault(require("./model/InlineResponse200")); - -var _InlineResponse2 = _interopRequireDefault(require("./model/InlineResponse2001")); - -var _InlineResponse3 = _interopRequireDefault(require("./model/InlineResponse2002")); - -var _InlineResponse4 = _interopRequireDefault(require("./model/InlineResponse2003")); - -var _InlineResponse5 = _interopRequireDefault(require("./model/InlineResponse2004")); - -var _InlineResponse6 = _interopRequireDefault(require("./model/InlineResponse2005")); - -var _InlineResponse7 = _interopRequireDefault(require("./model/InlineResponse401")); - -var _LimitedUser = _interopRequireDefault(require("./model/LimitedUser")); - -var _LimitedWorld = _interopRequireDefault(require("./model/LimitedWorld")); - -var _MIMEType = _interopRequireDefault(require("./model/MIMEType")); - -var _Notification = _interopRequireDefault(require("./model/Notification")); - -var _NotificationType = _interopRequireDefault(require("./model/NotificationType")); - -var _ReleaseStatus = _interopRequireDefault(require("./model/ReleaseStatus")); - -var _Response = _interopRequireDefault(require("./model/Response")); - -var _Success = _interopRequireDefault(require("./model/Success")); - -var _User = _interopRequireDefault(require("./model/User")); - -var _UserState = _interopRequireDefault(require("./model/UserState")); - -var _UserStatus = _interopRequireDefault(require("./model/UserStatus")); - -var _AuthenticationApi = _interopRequireDefault(require("./api/AuthenticationApi")); - -var _FilesApi = _interopRequireDefault(require("./api/FilesApi")); - -var _FriendsApi = _interopRequireDefault(require("./api/FriendsApi")); - -var _NotificationsApi = _interopRequireDefault(require("./api/NotificationsApi")); - -var _SystemApi = _interopRequireDefault(require("./api/SystemApi")); - -var _UsersApi = _interopRequireDefault(require("./api/UsersApi")); - -var _WorldsApi = _interopRequireDefault(require("./api/WorldsApi")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } \ No newline at end of file diff --git a/dist/model/Config.js b/dist/model/Config.js deleted file mode 100644 index 1f2389b..0000000 --- a/dist/model/Config.js +++ /dev/null @@ -1,973 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; - -var _ApiClient = _interopRequireDefault(require("../ApiClient")); - -var _ConfigAnnouncements = _interopRequireDefault(require("./ConfigAnnouncements")); - -var _ConfigDownloadUrls = _interopRequireDefault(require("./ConfigDownloadUrls")); - -var _ConfigDynamicWorldRows = _interopRequireDefault(require("./ConfigDynamicWorldRows")); - -var _ConfigEvents = _interopRequireDefault(require("./ConfigEvents")); - -var _DeploymentGroup = _interopRequireDefault(require("./DeploymentGroup")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -/** - * The Config model module. - * @module model/Config - * @version 1.0.0 - */ -var Config = /*#__PURE__*/function () { - /** - * Constructs a new Config. - * @alias module:model/Config - * @param address {String} VRChat's office address - * @param announcements {Array.} PSA, Public Announcements - * @param apiKey {String} apiKey to be used for all other requests - * @param appName {String} Game name - * @param buildVersionTag {String} Build tag of the API server - * @param clientApiKey {String} apiKey to be used for all other requests - * @param contactEmail {String} VRChat's contact email - * @param copyrightEmail {String} VRChat's copyright-issues-related email - * @param currentTOSVersion {Number} Current version number of the Terms of Service - * @param defaultAvatar {String} - * @param deploymentGroup {module:model/DeploymentGroup} - * @param devAppVersionStandalone {String} Version number for game development build - * @param devDownloadLinkWindows {String} Developer Download link - * @param devSdkUrl {String} Link to download the development SDK, use downloadUrls instead - * @param devSdkVersion {String} Version of the development SDK - * @param devServerVersionStandalone {String} Version number for server development build - * @param disableAvatarCopying {Boolean} Toggles if copying avatars should be disabled - * @param disableAvatarGating {Boolean} Toggles if avatar gating should be disabled. Avatar gating restricts uploading of avatars to people with the `system_avatar_access` Tag or `admin_avatar_access` Tag - * @param disableCommunityLabs {Boolean} Toggles if the Community Labs should be disabled - * @param disableCommunityLabsPromotion {Boolean} Toggles if promotion out of Community Labs should be disabled - * @param disableEventStream {Boolean} Toggles if Analytics should be disabled (this sreportedly not used in the Client) - * @param disableFeedbackGating {Boolean} Toggles if feedback gating should be disabled. Feedback gating restricts submission of feedback (reporting a World or User) to people with the `system_feedback_access` Tag. - * @param disableRegistration {Boolean} Toggles if new user account registration should be disabled - * @param disableSteamNetworking {Boolean} Toggles if Steam Networking should be disabled. VRChat these days uses Photon Unity Networking (PUN) instead. - * @param disableTwoFactorAuth {Boolean} Toggles if 2FA should be disabled. - * @param disableUdon {Boolean} Toggles if Udon should be universally disabled in-game. - * @param disableUpgradeAccount {Boolean} Toggles if account upgrading \"linking with Steam/Oculus\" should be disabled. - * @param downloadLinkWindows {String} Download link for game on the Oculus Rift website. - * @param downloadUrls {module:model/ConfigDownloadUrls} - * @param dynamicWorldRows {Array.} Array of DynamicWorldRow objects, used by the game to display the list of world rows - * @param events {module:model/ConfigEvents} - * @param gearDemoRoomId {String} Unknown - * @param homepageRedirectTarget {String} Redirect target if you try to open the base API domain in your browser - * @param homeWorldId {String} - * @param hubWorldId {String} - * @param jobsEmail {String} VRChat's job application email - * @param messageOfTheDay {String} MOTD - * @param moderationEmail {String} VRChat's moderation related email - * @param moderationQueryPeriod {Number} Unknown - * @param notAllowedToSelectAvatarInPrivateWorldMessage {String} Used in-game to notify a user they aren't allowed to select avatars in private worlds - * @param plugin {String} Extra [plugin](https://doc.photonengine.com/en-us/server/current/plugins/manual) to run in each instance - * @param releaseAppVersionStandalone {String} Version number for game release build - * @param releaseSdkUrl {String} Link to download the release SDK - * @param releaseSdkVersion {String} Version of the release SDK - * @param releaseServerVersionStandalone {String} Version number for server release build - * @param sdkDeveloperFaqUrl {String} Link to the developer FAQ - * @param sdkDiscordUrl {String} Link to the official VRChat Discord - * @param sdkNotAllowedToPublishMessage {String} Used in the SDK to notify a user they aren't allowed to upload avatars/worlds yet - * @param sdkUnityVersion {String} Unity version supported by the SDK - * @param serverName {String} Server name of the API server currently responding - * @param supportEmail {String} VRChat's support email - * @param timeOutWorldId {String} - * @param tutorialWorldId {String} - * @param updateRateMsMaximum {Number} Unknown - * @param updateRateMsMinimum {Number} Unknown - * @param updateRateMsNormal {Number} Unknown - * @param updateRateMsUdonManual {Number} Unknown - * @param uploadAnalysisPercent {Number} Unknown - * @param urlList {Array.} List of allowed URLs that bypass the \"Allow untrusted URL's\" setting in-game - * @param useReliableUdpForVoice {Boolean} Unknown - * @param userUpdatePeriod {Number} Unknown - * @param userVerificationDelay {Number} Unknown - * @param userVerificationRetry {Number} Unknown - * @param userVerificationTimeout {Number} Unknown - * @param viveWindowsUrl {String} Download link for game on the Steam website. - * @param whiteListedAssetUrls {Array.} List of allowed URLs that are allowed to host avatar assets - * @param worldUpdatePeriod {Number} Unknown - * @param youtubedlHash {String} Currently used youtube-dl.exe hash in SHA-256-delimited format - * @param youtubedlVersion {String} Currently used youtube-dl.exe version - */ - function Config(address, announcements, apiKey, appName, buildVersionTag, clientApiKey, contactEmail, copyrightEmail, currentTOSVersion, defaultAvatar, deploymentGroup, devAppVersionStandalone, devDownloadLinkWindows, devSdkUrl, devSdkVersion, devServerVersionStandalone, disableAvatarCopying, disableAvatarGating, disableCommunityLabs, disableCommunityLabsPromotion, disableEventStream, disableFeedbackGating, disableRegistration, disableSteamNetworking, disableTwoFactorAuth, disableUdon, disableUpgradeAccount, downloadLinkWindows, downloadUrls, dynamicWorldRows, events, gearDemoRoomId, homepageRedirectTarget, homeWorldId, hubWorldId, jobsEmail, messageOfTheDay, moderationEmail, moderationQueryPeriod, notAllowedToSelectAvatarInPrivateWorldMessage, plugin, releaseAppVersionStandalone, releaseSdkUrl, releaseSdkVersion, releaseServerVersionStandalone, sdkDeveloperFaqUrl, sdkDiscordUrl, sdkNotAllowedToPublishMessage, sdkUnityVersion, serverName, supportEmail, timeOutWorldId, tutorialWorldId, updateRateMsMaximum, updateRateMsMinimum, updateRateMsNormal, updateRateMsUdonManual, uploadAnalysisPercent, urlList, useReliableUdpForVoice, userUpdatePeriod, userVerificationDelay, userVerificationRetry, userVerificationTimeout, viveWindowsUrl, whiteListedAssetUrls, worldUpdatePeriod, youtubedlHash, youtubedlVersion) { - _classCallCheck(this, Config); - - Config.initialize(this, address, announcements, apiKey, appName, buildVersionTag, clientApiKey, contactEmail, copyrightEmail, currentTOSVersion, defaultAvatar, deploymentGroup, devAppVersionStandalone, devDownloadLinkWindows, devSdkUrl, devSdkVersion, devServerVersionStandalone, disableAvatarCopying, disableAvatarGating, disableCommunityLabs, disableCommunityLabsPromotion, disableEventStream, disableFeedbackGating, disableRegistration, disableSteamNetworking, disableTwoFactorAuth, disableUdon, disableUpgradeAccount, downloadLinkWindows, downloadUrls, dynamicWorldRows, events, gearDemoRoomId, homepageRedirectTarget, homeWorldId, hubWorldId, jobsEmail, messageOfTheDay, moderationEmail, moderationQueryPeriod, notAllowedToSelectAvatarInPrivateWorldMessage, plugin, releaseAppVersionStandalone, releaseSdkUrl, releaseSdkVersion, releaseServerVersionStandalone, sdkDeveloperFaqUrl, sdkDiscordUrl, sdkNotAllowedToPublishMessage, sdkUnityVersion, serverName, supportEmail, timeOutWorldId, tutorialWorldId, updateRateMsMaximum, updateRateMsMinimum, updateRateMsNormal, updateRateMsUdonManual, uploadAnalysisPercent, urlList, useReliableUdpForVoice, userUpdatePeriod, userVerificationDelay, userVerificationRetry, userVerificationTimeout, viveWindowsUrl, whiteListedAssetUrls, worldUpdatePeriod, youtubedlHash, youtubedlVersion); - } - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - - - _createClass(Config, null, [{ - key: "initialize", - value: function initialize(obj, address, announcements, apiKey, appName, buildVersionTag, clientApiKey, contactEmail, copyrightEmail, currentTOSVersion, defaultAvatar, deploymentGroup, devAppVersionStandalone, devDownloadLinkWindows, devSdkUrl, devSdkVersion, devServerVersionStandalone, disableAvatarCopying, disableAvatarGating, disableCommunityLabs, disableCommunityLabsPromotion, disableEventStream, disableFeedbackGating, disableRegistration, disableSteamNetworking, disableTwoFactorAuth, disableUdon, disableUpgradeAccount, downloadLinkWindows, downloadUrls, dynamicWorldRows, events, gearDemoRoomId, homepageRedirectTarget, homeWorldId, hubWorldId, jobsEmail, messageOfTheDay, moderationEmail, moderationQueryPeriod, notAllowedToSelectAvatarInPrivateWorldMessage, plugin, releaseAppVersionStandalone, releaseSdkUrl, releaseSdkVersion, releaseServerVersionStandalone, sdkDeveloperFaqUrl, sdkDiscordUrl, sdkNotAllowedToPublishMessage, sdkUnityVersion, serverName, supportEmail, timeOutWorldId, tutorialWorldId, updateRateMsMaximum, updateRateMsMinimum, updateRateMsNormal, updateRateMsUdonManual, uploadAnalysisPercent, urlList, useReliableUdpForVoice, userUpdatePeriod, userVerificationDelay, userVerificationRetry, userVerificationTimeout, viveWindowsUrl, whiteListedAssetUrls, worldUpdatePeriod, youtubedlHash, youtubedlVersion) { - obj['address'] = address; - obj['announcements'] = announcements; - obj['apiKey'] = apiKey; - obj['appName'] = appName || 'VrChat'; - obj['buildVersionTag'] = buildVersionTag; - obj['clientApiKey'] = clientApiKey; - obj['contactEmail'] = contactEmail; - obj['copyrightEmail'] = copyrightEmail; - obj['currentTOSVersion'] = currentTOSVersion; - obj['defaultAvatar'] = defaultAvatar; - obj['deploymentGroup'] = deploymentGroup; - obj['devAppVersionStandalone'] = devAppVersionStandalone; - obj['devDownloadLinkWindows'] = devDownloadLinkWindows; - obj['devSdkUrl'] = devSdkUrl; - obj['devSdkVersion'] = devSdkVersion; - obj['devServerVersionStandalone'] = devServerVersionStandalone; - obj['disableAvatarCopying'] = disableAvatarCopying || false; - obj['disableAvatarGating'] = disableAvatarGating || false; - obj['disableCommunityLabs'] = disableCommunityLabs || false; - obj['disableCommunityLabsPromotion'] = disableCommunityLabsPromotion || false; - obj['disableEventStream'] = disableEventStream || false; - obj['disableFeedbackGating'] = disableFeedbackGating || false; - obj['disableRegistration'] = disableRegistration || false; - obj['disableSteamNetworking'] = disableSteamNetworking || true; - obj['disableTwoFactorAuth'] = disableTwoFactorAuth || false; - obj['disableUdon'] = disableUdon || false; - obj['disableUpgradeAccount'] = disableUpgradeAccount || false; - obj['downloadLinkWindows'] = downloadLinkWindows; - obj['downloadUrls'] = downloadUrls; - obj['dynamicWorldRows'] = dynamicWorldRows; - obj['events'] = events; - obj['gearDemoRoomId'] = gearDemoRoomId; - obj['homepageRedirectTarget'] = homepageRedirectTarget || 'https://hello.vrchat.com'; - obj['homeWorldId'] = homeWorldId; - obj['hubWorldId'] = hubWorldId; - obj['jobsEmail'] = jobsEmail; - obj['messageOfTheDay'] = messageOfTheDay; - obj['moderationEmail'] = moderationEmail; - obj['moderationQueryPeriod'] = moderationQueryPeriod; - obj['notAllowedToSelectAvatarInPrivateWorldMessage'] = notAllowedToSelectAvatarInPrivateWorldMessage; - obj['plugin'] = plugin; - obj['releaseAppVersionStandalone'] = releaseAppVersionStandalone; - obj['releaseSdkUrl'] = releaseSdkUrl; - obj['releaseSdkVersion'] = releaseSdkVersion; - obj['releaseServerVersionStandalone'] = releaseServerVersionStandalone; - obj['sdkDeveloperFaqUrl'] = sdkDeveloperFaqUrl; - obj['sdkDiscordUrl'] = sdkDiscordUrl; - obj['sdkNotAllowedToPublishMessage'] = sdkNotAllowedToPublishMessage; - obj['sdkUnityVersion'] = sdkUnityVersion; - obj['serverName'] = serverName; - obj['supportEmail'] = supportEmail; - obj['timeOutWorldId'] = timeOutWorldId; - obj['tutorialWorldId'] = tutorialWorldId; - obj['updateRateMsMaximum'] = updateRateMsMaximum; - obj['updateRateMsMinimum'] = updateRateMsMinimum; - obj['updateRateMsNormal'] = updateRateMsNormal; - obj['updateRateMsUdonManual'] = updateRateMsUdonManual; - obj['uploadAnalysisPercent'] = uploadAnalysisPercent; - obj['urlList'] = urlList; - obj['useReliableUdpForVoice'] = useReliableUdpForVoice || false; - obj['userUpdatePeriod'] = userUpdatePeriod; - obj['userVerificationDelay'] = userVerificationDelay; - obj['userVerificationRetry'] = userVerificationRetry; - obj['userVerificationTimeout'] = userVerificationTimeout; - obj['viveWindowsUrl'] = viveWindowsUrl; - obj['whiteListedAssetUrls'] = whiteListedAssetUrls; - obj['worldUpdatePeriod'] = worldUpdatePeriod; - obj['youtubedl-hash'] = youtubedlHash; - obj['youtubedl-version'] = youtubedlVersion; - } - /** - * Constructs a Config from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/Config} obj Optional instance to populate. - * @return {module:model/Config} The populated Config instance. - */ - - }, { - key: "constructFromObject", - value: function constructFromObject(data, obj) { - if (data) { - obj = obj || new Config(); - - if (data.hasOwnProperty('address')) { - obj['address'] = _ApiClient["default"].convertToType(data['address'], 'String'); - } - - if (data.hasOwnProperty('announcements')) { - obj['announcements'] = _ApiClient["default"].convertToType(data['announcements'], [_ConfigAnnouncements["default"]]); - } - - if (data.hasOwnProperty('apiKey')) { - obj['apiKey'] = _ApiClient["default"].convertToType(data['apiKey'], 'String'); - } - - if (data.hasOwnProperty('appName')) { - obj['appName'] = _ApiClient["default"].convertToType(data['appName'], 'String'); - } - - if (data.hasOwnProperty('buildVersionTag')) { - obj['buildVersionTag'] = _ApiClient["default"].convertToType(data['buildVersionTag'], 'String'); - } - - if (data.hasOwnProperty('clientApiKey')) { - obj['clientApiKey'] = _ApiClient["default"].convertToType(data['clientApiKey'], 'String'); - } - - if (data.hasOwnProperty('clientBPSCeiling')) { - obj['clientBPSCeiling'] = _ApiClient["default"].convertToType(data['clientBPSCeiling'], 'Number'); - } - - if (data.hasOwnProperty('clientDisconnectTimeout')) { - obj['clientDisconnectTimeout'] = _ApiClient["default"].convertToType(data['clientDisconnectTimeout'], 'Number'); - } - - if (data.hasOwnProperty('clientReservedPlayerBPS')) { - obj['clientReservedPlayerBPS'] = _ApiClient["default"].convertToType(data['clientReservedPlayerBPS'], 'Number'); - } - - if (data.hasOwnProperty('clientSentCountAllowance')) { - obj['clientSentCountAllowance'] = _ApiClient["default"].convertToType(data['clientSentCountAllowance'], 'Number'); - } - - if (data.hasOwnProperty('contactEmail')) { - obj['contactEmail'] = _ApiClient["default"].convertToType(data['contactEmail'], 'String'); - } - - if (data.hasOwnProperty('copyrightEmail')) { - obj['copyrightEmail'] = _ApiClient["default"].convertToType(data['copyrightEmail'], 'String'); - } - - if (data.hasOwnProperty('currentTOSVersion')) { - obj['currentTOSVersion'] = _ApiClient["default"].convertToType(data['currentTOSVersion'], 'Number'); - } - - if (data.hasOwnProperty('defaultAvatar')) { - obj['defaultAvatar'] = _ApiClient["default"].convertToType(data['defaultAvatar'], 'String'); - } - - if (data.hasOwnProperty('deploymentGroup')) { - obj['deploymentGroup'] = _DeploymentGroup["default"].constructFromObject(data['deploymentGroup']); - } - - if (data.hasOwnProperty('devAppVersionStandalone')) { - obj['devAppVersionStandalone'] = _ApiClient["default"].convertToType(data['devAppVersionStandalone'], 'String'); - } - - if (data.hasOwnProperty('devDownloadLinkWindows')) { - obj['devDownloadLinkWindows'] = _ApiClient["default"].convertToType(data['devDownloadLinkWindows'], 'String'); - } - - if (data.hasOwnProperty('devSdkUrl')) { - obj['devSdkUrl'] = _ApiClient["default"].convertToType(data['devSdkUrl'], 'String'); - } - - if (data.hasOwnProperty('devSdkVersion')) { - obj['devSdkVersion'] = _ApiClient["default"].convertToType(data['devSdkVersion'], 'String'); - } - - if (data.hasOwnProperty('devServerVersionStandalone')) { - obj['devServerVersionStandalone'] = _ApiClient["default"].convertToType(data['devServerVersionStandalone'], 'String'); - } - - if (data.hasOwnProperty('disableAvatarCopying')) { - obj['disableAvatarCopying'] = _ApiClient["default"].convertToType(data['disableAvatarCopying'], 'Boolean'); - } - - if (data.hasOwnProperty('disableAvatarGating')) { - obj['disableAvatarGating'] = _ApiClient["default"].convertToType(data['disableAvatarGating'], 'Boolean'); - } - - if (data.hasOwnProperty('disableCommunityLabs')) { - obj['disableCommunityLabs'] = _ApiClient["default"].convertToType(data['disableCommunityLabs'], 'Boolean'); - } - - if (data.hasOwnProperty('disableCommunityLabsPromotion')) { - obj['disableCommunityLabsPromotion'] = _ApiClient["default"].convertToType(data['disableCommunityLabsPromotion'], 'Boolean'); - } - - if (data.hasOwnProperty('disableEmail')) { - obj['disableEmail'] = _ApiClient["default"].convertToType(data['disableEmail'], 'Boolean'); - } - - if (data.hasOwnProperty('disableEventStream')) { - obj['disableEventStream'] = _ApiClient["default"].convertToType(data['disableEventStream'], 'Boolean'); - } - - if (data.hasOwnProperty('disableFeedbackGating')) { - obj['disableFeedbackGating'] = _ApiClient["default"].convertToType(data['disableFeedbackGating'], 'Boolean'); - } - - if (data.hasOwnProperty('disableHello')) { - obj['disableHello'] = _ApiClient["default"].convertToType(data['disableHello'], 'Boolean'); - } - - if (data.hasOwnProperty('disableRegistration')) { - obj['disableRegistration'] = _ApiClient["default"].convertToType(data['disableRegistration'], 'Boolean'); - } - - if (data.hasOwnProperty('disableSteamNetworking')) { - obj['disableSteamNetworking'] = _ApiClient["default"].convertToType(data['disableSteamNetworking'], 'Boolean'); - } - - if (data.hasOwnProperty('disableTwoFactorAuth')) { - obj['disableTwoFactorAuth'] = _ApiClient["default"].convertToType(data['disableTwoFactorAuth'], 'Boolean'); - } - - if (data.hasOwnProperty('disableUdon')) { - obj['disableUdon'] = _ApiClient["default"].convertToType(data['disableUdon'], 'Boolean'); - } - - if (data.hasOwnProperty('disableUpgradeAccount')) { - obj['disableUpgradeAccount'] = _ApiClient["default"].convertToType(data['disableUpgradeAccount'], 'Boolean'); - } - - if (data.hasOwnProperty('downloadLinkWindows')) { - obj['downloadLinkWindows'] = _ApiClient["default"].convertToType(data['downloadLinkWindows'], 'String'); - } - - if (data.hasOwnProperty('downloadUrls')) { - obj['downloadUrls'] = _ConfigDownloadUrls["default"].constructFromObject(data['downloadUrls']); - } - - if (data.hasOwnProperty('dynamicWorldRows')) { - obj['dynamicWorldRows'] = _ApiClient["default"].convertToType(data['dynamicWorldRows'], [_ConfigDynamicWorldRows["default"]]); - } - - if (data.hasOwnProperty('events')) { - obj['events'] = _ConfigEvents["default"].constructFromObject(data['events']); - } - - if (data.hasOwnProperty('gearDemoRoomId')) { - obj['gearDemoRoomId'] = _ApiClient["default"].convertToType(data['gearDemoRoomId'], 'String'); - } - - if (data.hasOwnProperty('homepageRedirectTarget')) { - obj['homepageRedirectTarget'] = _ApiClient["default"].convertToType(data['homepageRedirectTarget'], 'String'); - } - - if (data.hasOwnProperty('homeWorldId')) { - obj['homeWorldId'] = _ApiClient["default"].convertToType(data['homeWorldId'], 'String'); - } - - if (data.hasOwnProperty('hubWorldId')) { - obj['hubWorldId'] = _ApiClient["default"].convertToType(data['hubWorldId'], 'String'); - } - - if (data.hasOwnProperty('jobsEmail')) { - obj['jobsEmail'] = _ApiClient["default"].convertToType(data['jobsEmail'], 'String'); - } - - if (data.hasOwnProperty('messageOfTheDay')) { - obj['messageOfTheDay'] = _ApiClient["default"].convertToType(data['messageOfTheDay'], 'String'); - } - - if (data.hasOwnProperty('moderationEmail')) { - obj['moderationEmail'] = _ApiClient["default"].convertToType(data['moderationEmail'], 'String'); - } - - if (data.hasOwnProperty('moderationQueryPeriod')) { - obj['moderationQueryPeriod'] = _ApiClient["default"].convertToType(data['moderationQueryPeriod'], 'Number'); - } - - if (data.hasOwnProperty('notAllowedToSelectAvatarInPrivateWorldMessage')) { - obj['notAllowedToSelectAvatarInPrivateWorldMessage'] = _ApiClient["default"].convertToType(data['notAllowedToSelectAvatarInPrivateWorldMessage'], 'String'); - } - - if (data.hasOwnProperty('plugin')) { - obj['plugin'] = _ApiClient["default"].convertToType(data['plugin'], 'String'); - } - - if (data.hasOwnProperty('releaseAppVersionStandalone')) { - obj['releaseAppVersionStandalone'] = _ApiClient["default"].convertToType(data['releaseAppVersionStandalone'], 'String'); - } - - if (data.hasOwnProperty('releaseSdkUrl')) { - obj['releaseSdkUrl'] = _ApiClient["default"].convertToType(data['releaseSdkUrl'], 'String'); - } - - if (data.hasOwnProperty('releaseSdkVersion')) { - obj['releaseSdkVersion'] = _ApiClient["default"].convertToType(data['releaseSdkVersion'], 'String'); - } - - if (data.hasOwnProperty('releaseServerVersionStandalone')) { - obj['releaseServerVersionStandalone'] = _ApiClient["default"].convertToType(data['releaseServerVersionStandalone'], 'String'); - } - - if (data.hasOwnProperty('sdkDeveloperFaqUrl')) { - obj['sdkDeveloperFaqUrl'] = _ApiClient["default"].convertToType(data['sdkDeveloperFaqUrl'], 'String'); - } - - if (data.hasOwnProperty('sdkDiscordUrl')) { - obj['sdkDiscordUrl'] = _ApiClient["default"].convertToType(data['sdkDiscordUrl'], 'String'); - } - - if (data.hasOwnProperty('sdkNotAllowedToPublishMessage')) { - obj['sdkNotAllowedToPublishMessage'] = _ApiClient["default"].convertToType(data['sdkNotAllowedToPublishMessage'], 'String'); - } - - if (data.hasOwnProperty('sdkUnityVersion')) { - obj['sdkUnityVersion'] = _ApiClient["default"].convertToType(data['sdkUnityVersion'], 'String'); - } - - if (data.hasOwnProperty('serverName')) { - obj['serverName'] = _ApiClient["default"].convertToType(data['serverName'], 'String'); - } - - if (data.hasOwnProperty('supportEmail')) { - obj['supportEmail'] = _ApiClient["default"].convertToType(data['supportEmail'], 'String'); - } - - if (data.hasOwnProperty('timeOutWorldId')) { - obj['timeOutWorldId'] = _ApiClient["default"].convertToType(data['timeOutWorldId'], 'String'); - } - - if (data.hasOwnProperty('tutorialWorldId')) { - obj['tutorialWorldId'] = _ApiClient["default"].convertToType(data['tutorialWorldId'], 'String'); - } - - if (data.hasOwnProperty('updateRateMsMaximum')) { - obj['updateRateMsMaximum'] = _ApiClient["default"].convertToType(data['updateRateMsMaximum'], 'Number'); - } - - if (data.hasOwnProperty('updateRateMsMinimum')) { - obj['updateRateMsMinimum'] = _ApiClient["default"].convertToType(data['updateRateMsMinimum'], 'Number'); - } - - if (data.hasOwnProperty('updateRateMsNormal')) { - obj['updateRateMsNormal'] = _ApiClient["default"].convertToType(data['updateRateMsNormal'], 'Number'); - } - - if (data.hasOwnProperty('updateRateMsUdonManual')) { - obj['updateRateMsUdonManual'] = _ApiClient["default"].convertToType(data['updateRateMsUdonManual'], 'Number'); - } - - if (data.hasOwnProperty('uploadAnalysisPercent')) { - obj['uploadAnalysisPercent'] = _ApiClient["default"].convertToType(data['uploadAnalysisPercent'], 'Number'); - } - - if (data.hasOwnProperty('urlList')) { - obj['urlList'] = _ApiClient["default"].convertToType(data['urlList'], ['String']); - } - - if (data.hasOwnProperty('useReliableUdpForVoice')) { - obj['useReliableUdpForVoice'] = _ApiClient["default"].convertToType(data['useReliableUdpForVoice'], 'Boolean'); - } - - if (data.hasOwnProperty('userUpdatePeriod')) { - obj['userUpdatePeriod'] = _ApiClient["default"].convertToType(data['userUpdatePeriod'], 'Number'); - } - - if (data.hasOwnProperty('userVerificationDelay')) { - obj['userVerificationDelay'] = _ApiClient["default"].convertToType(data['userVerificationDelay'], 'Number'); - } - - if (data.hasOwnProperty('userVerificationRetry')) { - obj['userVerificationRetry'] = _ApiClient["default"].convertToType(data['userVerificationRetry'], 'Number'); - } - - if (data.hasOwnProperty('userVerificationTimeout')) { - obj['userVerificationTimeout'] = _ApiClient["default"].convertToType(data['userVerificationTimeout'], 'Number'); - } - - if (data.hasOwnProperty('viveWindowsUrl')) { - obj['viveWindowsUrl'] = _ApiClient["default"].convertToType(data['viveWindowsUrl'], 'String'); - } - - if (data.hasOwnProperty('whiteListedAssetUrls')) { - obj['whiteListedAssetUrls'] = _ApiClient["default"].convertToType(data['whiteListedAssetUrls'], ['String']); - } - - if (data.hasOwnProperty('worldUpdatePeriod')) { - obj['worldUpdatePeriod'] = _ApiClient["default"].convertToType(data['worldUpdatePeriod'], 'Number'); - } - - if (data.hasOwnProperty('youtubedl-hash')) { - obj['youtubedl-hash'] = _ApiClient["default"].convertToType(data['youtubedl-hash'], 'String'); - } - - if (data.hasOwnProperty('youtubedl-version')) { - obj['youtubedl-version'] = _ApiClient["default"].convertToType(data['youtubedl-version'], 'String'); - } - } - - return obj; - } - }]); - - return Config; -}(); -/** - * VRChat's office address - * @member {String} address - */ - - -Config.prototype['address'] = undefined; -/** - * PSA, Public Announcements - * @member {Array.} announcements - */ - -Config.prototype['announcements'] = undefined; -/** - * apiKey to be used for all other requests - * @member {String} apiKey - */ - -Config.prototype['apiKey'] = undefined; -/** - * Game name - * @member {String} appName - * @default 'VrChat' - */ - -Config.prototype['appName'] = 'VrChat'; -/** - * Build tag of the API server - * @member {String} buildVersionTag - */ - -Config.prototype['buildVersionTag'] = undefined; -/** - * apiKey to be used for all other requests - * @member {String} clientApiKey - */ - -Config.prototype['clientApiKey'] = undefined; -/** - * Unknown - * @member {Number} clientBPSCeiling - */ - -Config.prototype['clientBPSCeiling'] = undefined; -/** - * Unknown - * @member {Number} clientDisconnectTimeout - */ - -Config.prototype['clientDisconnectTimeout'] = undefined; -/** - * Unknown - * @member {Number} clientReservedPlayerBPS - */ - -Config.prototype['clientReservedPlayerBPS'] = undefined; -/** - * Unknown - * @member {Number} clientSentCountAllowance - */ - -Config.prototype['clientSentCountAllowance'] = undefined; -/** - * VRChat's contact email - * @member {String} contactEmail - */ - -Config.prototype['contactEmail'] = undefined; -/** - * VRChat's copyright-issues-related email - * @member {String} copyrightEmail - */ - -Config.prototype['copyrightEmail'] = undefined; -/** - * Current version number of the Terms of Service - * @member {Number} currentTOSVersion - */ - -Config.prototype['currentTOSVersion'] = undefined; -/** - * @member {String} defaultAvatar - */ - -Config.prototype['defaultAvatar'] = undefined; -/** - * @member {module:model/DeploymentGroup} deploymentGroup - */ - -Config.prototype['deploymentGroup'] = undefined; -/** - * Version number for game development build - * @member {String} devAppVersionStandalone - */ - -Config.prototype['devAppVersionStandalone'] = undefined; -/** - * Developer Download link - * @member {String} devDownloadLinkWindows - */ - -Config.prototype['devDownloadLinkWindows'] = undefined; -/** - * Link to download the development SDK, use downloadUrls instead - * @member {String} devSdkUrl - */ - -Config.prototype['devSdkUrl'] = undefined; -/** - * Version of the development SDK - * @member {String} devSdkVersion - */ - -Config.prototype['devSdkVersion'] = undefined; -/** - * Version number for server development build - * @member {String} devServerVersionStandalone - */ - -Config.prototype['devServerVersionStandalone'] = undefined; -/** - * Toggles if copying avatars should be disabled - * @member {Boolean} disableAvatarCopying - * @default false - */ - -Config.prototype['disableAvatarCopying'] = false; -/** - * Toggles if avatar gating should be disabled. Avatar gating restricts uploading of avatars to people with the `system_avatar_access` Tag or `admin_avatar_access` Tag - * @member {Boolean} disableAvatarGating - * @default false - */ - -Config.prototype['disableAvatarGating'] = false; -/** - * Toggles if the Community Labs should be disabled - * @member {Boolean} disableCommunityLabs - * @default false - */ - -Config.prototype['disableCommunityLabs'] = false; -/** - * Toggles if promotion out of Community Labs should be disabled - * @member {Boolean} disableCommunityLabsPromotion - * @default false - */ - -Config.prototype['disableCommunityLabsPromotion'] = false; -/** - * Unknown - * @member {Boolean} disableEmail - * @default false - */ - -Config.prototype['disableEmail'] = false; -/** - * Toggles if Analytics should be disabled (this sreportedly not used in the Client) - * @member {Boolean} disableEventStream - * @default false - */ - -Config.prototype['disableEventStream'] = false; -/** - * Toggles if feedback gating should be disabled. Feedback gating restricts submission of feedback (reporting a World or User) to people with the `system_feedback_access` Tag. - * @member {Boolean} disableFeedbackGating - * @default false - */ - -Config.prototype['disableFeedbackGating'] = false; -/** - * Unknown - * @member {Boolean} disableHello - * @default false - */ - -Config.prototype['disableHello'] = false; -/** - * Toggles if new user account registration should be disabled - * @member {Boolean} disableRegistration - * @default false - */ - -Config.prototype['disableRegistration'] = false; -/** - * Toggles if Steam Networking should be disabled. VRChat these days uses Photon Unity Networking (PUN) instead. - * @member {Boolean} disableSteamNetworking - * @default true - */ - -Config.prototype['disableSteamNetworking'] = true; -/** - * Toggles if 2FA should be disabled. - * @member {Boolean} disableTwoFactorAuth - * @default false - */ - -Config.prototype['disableTwoFactorAuth'] = false; -/** - * Toggles if Udon should be universally disabled in-game. - * @member {Boolean} disableUdon - * @default false - */ - -Config.prototype['disableUdon'] = false; -/** - * Toggles if account upgrading \"linking with Steam/Oculus\" should be disabled. - * @member {Boolean} disableUpgradeAccount - * @default false - */ - -Config.prototype['disableUpgradeAccount'] = false; -/** - * Download link for game on the Oculus Rift website. - * @member {String} downloadLinkWindows - */ - -Config.prototype['downloadLinkWindows'] = undefined; -/** - * @member {module:model/ConfigDownloadUrls} downloadUrls - */ - -Config.prototype['downloadUrls'] = undefined; -/** - * Array of DynamicWorldRow objects, used by the game to display the list of world rows - * @member {Array.} dynamicWorldRows - */ - -Config.prototype['dynamicWorldRows'] = undefined; -/** - * @member {module:model/ConfigEvents} events - */ - -Config.prototype['events'] = undefined; -/** - * Unknown - * @member {String} gearDemoRoomId - */ - -Config.prototype['gearDemoRoomId'] = undefined; -/** - * Redirect target if you try to open the base API domain in your browser - * @member {String} homepageRedirectTarget - * @default 'https://hello.vrchat.com' - */ - -Config.prototype['homepageRedirectTarget'] = 'https://hello.vrchat.com'; -/** - * @member {String} homeWorldId - */ - -Config.prototype['homeWorldId'] = undefined; -/** - * @member {String} hubWorldId - */ - -Config.prototype['hubWorldId'] = undefined; -/** - * VRChat's job application email - * @member {String} jobsEmail - */ - -Config.prototype['jobsEmail'] = undefined; -/** - * MOTD - * @member {String} messageOfTheDay - */ - -Config.prototype['messageOfTheDay'] = undefined; -/** - * VRChat's moderation related email - * @member {String} moderationEmail - */ - -Config.prototype['moderationEmail'] = undefined; -/** - * Unknown - * @member {Number} moderationQueryPeriod - */ - -Config.prototype['moderationQueryPeriod'] = undefined; -/** - * Used in-game to notify a user they aren't allowed to select avatars in private worlds - * @member {String} notAllowedToSelectAvatarInPrivateWorldMessage - */ - -Config.prototype['notAllowedToSelectAvatarInPrivateWorldMessage'] = undefined; -/** - * Extra [plugin](https://doc.photonengine.com/en-us/server/current/plugins/manual) to run in each instance - * @member {String} plugin - */ - -Config.prototype['plugin'] = undefined; -/** - * Version number for game release build - * @member {String} releaseAppVersionStandalone - */ - -Config.prototype['releaseAppVersionStandalone'] = undefined; -/** - * Link to download the release SDK - * @member {String} releaseSdkUrl - */ - -Config.prototype['releaseSdkUrl'] = undefined; -/** - * Version of the release SDK - * @member {String} releaseSdkVersion - */ - -Config.prototype['releaseSdkVersion'] = undefined; -/** - * Version number for server release build - * @member {String} releaseServerVersionStandalone - */ - -Config.prototype['releaseServerVersionStandalone'] = undefined; -/** - * Link to the developer FAQ - * @member {String} sdkDeveloperFaqUrl - */ - -Config.prototype['sdkDeveloperFaqUrl'] = undefined; -/** - * Link to the official VRChat Discord - * @member {String} sdkDiscordUrl - */ - -Config.prototype['sdkDiscordUrl'] = undefined; -/** - * Used in the SDK to notify a user they aren't allowed to upload avatars/worlds yet - * @member {String} sdkNotAllowedToPublishMessage - */ - -Config.prototype['sdkNotAllowedToPublishMessage'] = undefined; -/** - * Unity version supported by the SDK - * @member {String} sdkUnityVersion - */ - -Config.prototype['sdkUnityVersion'] = undefined; -/** - * Server name of the API server currently responding - * @member {String} serverName - */ - -Config.prototype['serverName'] = undefined; -/** - * VRChat's support email - * @member {String} supportEmail - */ - -Config.prototype['supportEmail'] = undefined; -/** - * @member {String} timeOutWorldId - */ - -Config.prototype['timeOutWorldId'] = undefined; -/** - * @member {String} tutorialWorldId - */ - -Config.prototype['tutorialWorldId'] = undefined; -/** - * Unknown - * @member {Number} updateRateMsMaximum - */ - -Config.prototype['updateRateMsMaximum'] = undefined; -/** - * Unknown - * @member {Number} updateRateMsMinimum - */ - -Config.prototype['updateRateMsMinimum'] = undefined; -/** - * Unknown - * @member {Number} updateRateMsNormal - */ - -Config.prototype['updateRateMsNormal'] = undefined; -/** - * Unknown - * @member {Number} updateRateMsUdonManual - */ - -Config.prototype['updateRateMsUdonManual'] = undefined; -/** - * Unknown - * @member {Number} uploadAnalysisPercent - */ - -Config.prototype['uploadAnalysisPercent'] = undefined; -/** - * List of allowed URLs that bypass the \"Allow untrusted URL's\" setting in-game - * @member {Array.} urlList - */ - -Config.prototype['urlList'] = undefined; -/** - * Unknown - * @member {Boolean} useReliableUdpForVoice - * @default false - */ - -Config.prototype['useReliableUdpForVoice'] = false; -/** - * Unknown - * @member {Number} userUpdatePeriod - */ - -Config.prototype['userUpdatePeriod'] = undefined; -/** - * Unknown - * @member {Number} userVerificationDelay - */ - -Config.prototype['userVerificationDelay'] = undefined; -/** - * Unknown - * @member {Number} userVerificationRetry - */ - -Config.prototype['userVerificationRetry'] = undefined; -/** - * Unknown - * @member {Number} userVerificationTimeout - */ - -Config.prototype['userVerificationTimeout'] = undefined; -/** - * Download link for game on the Steam website. - * @member {String} viveWindowsUrl - */ - -Config.prototype['viveWindowsUrl'] = undefined; -/** - * List of allowed URLs that are allowed to host avatar assets - * @member {Array.} whiteListedAssetUrls - */ - -Config.prototype['whiteListedAssetUrls'] = undefined; -/** - * Unknown - * @member {Number} worldUpdatePeriod - */ - -Config.prototype['worldUpdatePeriod'] = undefined; -/** - * Currently used youtube-dl.exe hash in SHA-256-delimited format - * @member {String} youtubedl-hash - */ - -Config.prototype['youtubedl-hash'] = undefined; -/** - * Currently used youtube-dl.exe version - * @member {String} youtubedl-version - */ - -Config.prototype['youtubedl-version'] = undefined; -var _default = Config; -exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/ConfigAnnouncements.js b/dist/model/ConfigAnnouncements.js deleted file mode 100644 index a9667e3..0000000 --- a/dist/model/ConfigAnnouncements.js +++ /dev/null @@ -1,92 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; - -var _ApiClient = _interopRequireDefault(require("../ApiClient")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -/** - * The ConfigAnnouncements model module. - * @module model/ConfigAnnouncements - * @version 1.0.0 - */ -var ConfigAnnouncements = /*#__PURE__*/function () { - /** - * Constructs a new ConfigAnnouncements. - * Public Announcement - * @alias module:model/ConfigAnnouncements - * @param name {String} Announcement name - * @param text {String} Announcement text - */ - function ConfigAnnouncements(name, text) { - _classCallCheck(this, ConfigAnnouncements); - - ConfigAnnouncements.initialize(this, name, text); - } - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - - - _createClass(ConfigAnnouncements, null, [{ - key: "initialize", - value: function initialize(obj, name, text) { - obj['name'] = name; - obj['text'] = text; - } - /** - * Constructs a ConfigAnnouncements from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/ConfigAnnouncements} obj Optional instance to populate. - * @return {module:model/ConfigAnnouncements} The populated ConfigAnnouncements instance. - */ - - }, { - key: "constructFromObject", - value: function constructFromObject(data, obj) { - if (data) { - obj = obj || new ConfigAnnouncements(); - - if (data.hasOwnProperty('name')) { - obj['name'] = _ApiClient["default"].convertToType(data['name'], 'String'); - } - - if (data.hasOwnProperty('text')) { - obj['text'] = _ApiClient["default"].convertToType(data['text'], 'String'); - } - } - - return obj; - } - }]); - - return ConfigAnnouncements; -}(); -/** - * Announcement name - * @member {String} name - */ - - -ConfigAnnouncements.prototype['name'] = undefined; -/** - * Announcement text - * @member {String} text - */ - -ConfigAnnouncements.prototype['text'] = undefined; -var _default = ConfigAnnouncements; -exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/ConfigDownloadUrls.js b/dist/model/ConfigDownloadUrls.js deleted file mode 100644 index dc5726f..0000000 --- a/dist/model/ConfigDownloadUrls.js +++ /dev/null @@ -1,104 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; - -var _ApiClient = _interopRequireDefault(require("../ApiClient")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -/** - * The ConfigDownloadUrls model module. - * @module model/ConfigDownloadUrls - * @version 1.0.0 - */ -var ConfigDownloadUrls = /*#__PURE__*/function () { - /** - * Constructs a new ConfigDownloadUrls. - * Download links for various development assets - * @alias module:model/ConfigDownloadUrls - * @param sdk2 {String} Download link for legacy SDK2 - * @param sdk3Avatars {String} Download link for SDK3 for Avatars - * @param sdk3Worlds {String} Download link for SDK3 for Worlds - */ - function ConfigDownloadUrls(sdk2, sdk3Avatars, sdk3Worlds) { - _classCallCheck(this, ConfigDownloadUrls); - - ConfigDownloadUrls.initialize(this, sdk2, sdk3Avatars, sdk3Worlds); - } - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - - - _createClass(ConfigDownloadUrls, null, [{ - key: "initialize", - value: function initialize(obj, sdk2, sdk3Avatars, sdk3Worlds) { - obj['sdk2'] = sdk2; - obj['sdk3-avatars'] = sdk3Avatars; - obj['sdk3-worlds'] = sdk3Worlds; - } - /** - * Constructs a ConfigDownloadUrls from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/ConfigDownloadUrls} obj Optional instance to populate. - * @return {module:model/ConfigDownloadUrls} The populated ConfigDownloadUrls instance. - */ - - }, { - key: "constructFromObject", - value: function constructFromObject(data, obj) { - if (data) { - obj = obj || new ConfigDownloadUrls(); - - if (data.hasOwnProperty('sdk2')) { - obj['sdk2'] = _ApiClient["default"].convertToType(data['sdk2'], 'String'); - } - - if (data.hasOwnProperty('sdk3-avatars')) { - obj['sdk3-avatars'] = _ApiClient["default"].convertToType(data['sdk3-avatars'], 'String'); - } - - if (data.hasOwnProperty('sdk3-worlds')) { - obj['sdk3-worlds'] = _ApiClient["default"].convertToType(data['sdk3-worlds'], 'String'); - } - } - - return obj; - } - }]); - - return ConfigDownloadUrls; -}(); -/** - * Download link for legacy SDK2 - * @member {String} sdk2 - */ - - -ConfigDownloadUrls.prototype['sdk2'] = undefined; -/** - * Download link for SDK3 for Avatars - * @member {String} sdk3-avatars - */ - -ConfigDownloadUrls.prototype['sdk3-avatars'] = undefined; -/** - * Download link for SDK3 for Worlds - * @member {String} sdk3-worlds - */ - -ConfigDownloadUrls.prototype['sdk3-worlds'] = undefined; -var _default = ConfigDownloadUrls; -exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/ConfigDynamicWorldRows.js b/dist/model/ConfigDynamicWorldRows.js deleted file mode 100644 index a156f9a..0000000 --- a/dist/model/ConfigDynamicWorldRows.js +++ /dev/null @@ -1,143 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; - -var _ApiClient = _interopRequireDefault(require("../ApiClient")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -/** - * The ConfigDynamicWorldRows model module. - * @module model/ConfigDynamicWorldRows - * @version 1.0.0 - */ -var ConfigDynamicWorldRows = /*#__PURE__*/function () { - /** - * Constructs a new ConfigDynamicWorldRows. - * @alias module:model/ConfigDynamicWorldRows - * @param index {Number} - * @param name {String} - * @param platform {String} - * @param sortHeading {String} - * @param sortOrder {String} - * @param sortOwnership {String} - */ - function ConfigDynamicWorldRows(index, name, platform, sortHeading, sortOrder, sortOwnership) { - _classCallCheck(this, ConfigDynamicWorldRows); - - ConfigDynamicWorldRows.initialize(this, index, name, platform, sortHeading, sortOrder, sortOwnership); - } - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - - - _createClass(ConfigDynamicWorldRows, null, [{ - key: "initialize", - value: function initialize(obj, index, name, platform, sortHeading, sortOrder, sortOwnership) { - obj['index'] = index; - obj['name'] = name; - obj['platform'] = platform; - obj['sortHeading'] = sortHeading; - obj['sortOrder'] = sortOrder; - obj['sortOwnership'] = sortOwnership; - } - /** - * Constructs a ConfigDynamicWorldRows from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/ConfigDynamicWorldRows} obj Optional instance to populate. - * @return {module:model/ConfigDynamicWorldRows} The populated ConfigDynamicWorldRows instance. - */ - - }, { - key: "constructFromObject", - value: function constructFromObject(data, obj) { - if (data) { - obj = obj || new ConfigDynamicWorldRows(); - - if (data.hasOwnProperty('index')) { - obj['index'] = _ApiClient["default"].convertToType(data['index'], 'Number'); - } - - if (data.hasOwnProperty('name')) { - obj['name'] = _ApiClient["default"].convertToType(data['name'], 'String'); - } - - if (data.hasOwnProperty('platform')) { - obj['platform'] = _ApiClient["default"].convertToType(data['platform'], 'String'); - } - - if (data.hasOwnProperty('sortHeading')) { - obj['sortHeading'] = _ApiClient["default"].convertToType(data['sortHeading'], 'String'); - } - - if (data.hasOwnProperty('sortOrder')) { - obj['sortOrder'] = _ApiClient["default"].convertToType(data['sortOrder'], 'String'); - } - - if (data.hasOwnProperty('sortOwnership')) { - obj['sortOwnership'] = _ApiClient["default"].convertToType(data['sortOwnership'], 'String'); - } - - if (data.hasOwnProperty('tag')) { - obj['tag'] = _ApiClient["default"].convertToType(data['tag'], 'String'); - } - } - - return obj; - } - }]); - - return ConfigDynamicWorldRows; -}(); -/** - * @member {Number} index - */ - - -ConfigDynamicWorldRows.prototype['index'] = undefined; -/** - * @member {String} name - */ - -ConfigDynamicWorldRows.prototype['name'] = undefined; -/** - * @member {String} platform - */ - -ConfigDynamicWorldRows.prototype['platform'] = undefined; -/** - * @member {String} sortHeading - */ - -ConfigDynamicWorldRows.prototype['sortHeading'] = undefined; -/** - * @member {String} sortOrder - */ - -ConfigDynamicWorldRows.prototype['sortOrder'] = undefined; -/** - * @member {String} sortOwnership - */ - -ConfigDynamicWorldRows.prototype['sortOwnership'] = undefined; -/** - * Tag to filter worlds for this row - * @member {String} tag - */ - -ConfigDynamicWorldRows.prototype['tag'] = undefined; -var _default = ConfigDynamicWorldRows; -exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/ConfigEvents.js b/dist/model/ConfigEvents.js deleted file mode 100644 index c487502..0000000 --- a/dist/model/ConfigEvents.js +++ /dev/null @@ -1,187 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; - -var _ApiClient = _interopRequireDefault(require("../ApiClient")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -/** - * The ConfigEvents model module. - * @module model/ConfigEvents - * @version 1.0.0 - */ -var ConfigEvents = /*#__PURE__*/function () { - /** - * Constructs a new ConfigEvents. - * @alias module:model/ConfigEvents - * @param distanceClose {Number} Unknown - * @param distanceFactor {Number} Unknown - * @param distanceFar {Number} Unknown - * @param groupDistance {Number} Unknown - * @param maximumBunchSize {Number} Unknown - * @param notVisibleFactor {Number} Unknown - * @param playerOrderBucketSize {Number} Unknown - * @param playerOrderFactor {Number} Unknown - * @param slowUpdateFactorThreshold {Number} Unknown - * @param viewSegmentLength {Number} Unknown - */ - function ConfigEvents(distanceClose, distanceFactor, distanceFar, groupDistance, maximumBunchSize, notVisibleFactor, playerOrderBucketSize, playerOrderFactor, slowUpdateFactorThreshold, viewSegmentLength) { - _classCallCheck(this, ConfigEvents); - - ConfigEvents.initialize(this, distanceClose, distanceFactor, distanceFar, groupDistance, maximumBunchSize, notVisibleFactor, playerOrderBucketSize, playerOrderFactor, slowUpdateFactorThreshold, viewSegmentLength); - } - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - - - _createClass(ConfigEvents, null, [{ - key: "initialize", - value: function initialize(obj, distanceClose, distanceFactor, distanceFar, groupDistance, maximumBunchSize, notVisibleFactor, playerOrderBucketSize, playerOrderFactor, slowUpdateFactorThreshold, viewSegmentLength) { - obj['distanceClose'] = distanceClose; - obj['distanceFactor'] = distanceFactor; - obj['distanceFar'] = distanceFar; - obj['groupDistance'] = groupDistance; - obj['maximumBunchSize'] = maximumBunchSize; - obj['notVisibleFactor'] = notVisibleFactor; - obj['playerOrderBucketSize'] = playerOrderBucketSize; - obj['playerOrderFactor'] = playerOrderFactor; - obj['slowUpdateFactorThreshold'] = slowUpdateFactorThreshold; - obj['viewSegmentLength'] = viewSegmentLength; - } - /** - * Constructs a ConfigEvents from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/ConfigEvents} obj Optional instance to populate. - * @return {module:model/ConfigEvents} The populated ConfigEvents instance. - */ - - }, { - key: "constructFromObject", - value: function constructFromObject(data, obj) { - if (data) { - obj = obj || new ConfigEvents(); - - if (data.hasOwnProperty('distanceClose')) { - obj['distanceClose'] = _ApiClient["default"].convertToType(data['distanceClose'], 'Number'); - } - - if (data.hasOwnProperty('distanceFactor')) { - obj['distanceFactor'] = _ApiClient["default"].convertToType(data['distanceFactor'], 'Number'); - } - - if (data.hasOwnProperty('distanceFar')) { - obj['distanceFar'] = _ApiClient["default"].convertToType(data['distanceFar'], 'Number'); - } - - if (data.hasOwnProperty('groupDistance')) { - obj['groupDistance'] = _ApiClient["default"].convertToType(data['groupDistance'], 'Number'); - } - - if (data.hasOwnProperty('maximumBunchSize')) { - obj['maximumBunchSize'] = _ApiClient["default"].convertToType(data['maximumBunchSize'], 'Number'); - } - - if (data.hasOwnProperty('notVisibleFactor')) { - obj['notVisibleFactor'] = _ApiClient["default"].convertToType(data['notVisibleFactor'], 'Number'); - } - - if (data.hasOwnProperty('playerOrderBucketSize')) { - obj['playerOrderBucketSize'] = _ApiClient["default"].convertToType(data['playerOrderBucketSize'], 'Number'); - } - - if (data.hasOwnProperty('playerOrderFactor')) { - obj['playerOrderFactor'] = _ApiClient["default"].convertToType(data['playerOrderFactor'], 'Number'); - } - - if (data.hasOwnProperty('slowUpdateFactorThreshold')) { - obj['slowUpdateFactorThreshold'] = _ApiClient["default"].convertToType(data['slowUpdateFactorThreshold'], 'Number'); - } - - if (data.hasOwnProperty('viewSegmentLength')) { - obj['viewSegmentLength'] = _ApiClient["default"].convertToType(data['viewSegmentLength'], 'Number'); - } - } - - return obj; - } - }]); - - return ConfigEvents; -}(); -/** - * Unknown - * @member {Number} distanceClose - */ - - -ConfigEvents.prototype['distanceClose'] = undefined; -/** - * Unknown - * @member {Number} distanceFactor - */ - -ConfigEvents.prototype['distanceFactor'] = undefined; -/** - * Unknown - * @member {Number} distanceFar - */ - -ConfigEvents.prototype['distanceFar'] = undefined; -/** - * Unknown - * @member {Number} groupDistance - */ - -ConfigEvents.prototype['groupDistance'] = undefined; -/** - * Unknown - * @member {Number} maximumBunchSize - */ - -ConfigEvents.prototype['maximumBunchSize'] = undefined; -/** - * Unknown - * @member {Number} notVisibleFactor - */ - -ConfigEvents.prototype['notVisibleFactor'] = undefined; -/** - * Unknown - * @member {Number} playerOrderBucketSize - */ - -ConfigEvents.prototype['playerOrderBucketSize'] = undefined; -/** - * Unknown - * @member {Number} playerOrderFactor - */ - -ConfigEvents.prototype['playerOrderFactor'] = undefined; -/** - * Unknown - * @member {Number} slowUpdateFactorThreshold - */ - -ConfigEvents.prototype['slowUpdateFactorThreshold'] = undefined; -/** - * Unknown - * @member {Number} viewSegmentLength - */ - -ConfigEvents.prototype['viewSegmentLength'] = undefined; -var _default = ConfigEvents; -exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/CurrentUser.js b/dist/model/CurrentUser.js deleted file mode 100644 index f1a1dd4..0000000 --- a/dist/model/CurrentUser.js +++ /dev/null @@ -1,578 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; - -var _ApiClient = _interopRequireDefault(require("../ApiClient")); - -var _DeveloperType = _interopRequireDefault(require("./DeveloperType")); - -var _UserState = _interopRequireDefault(require("./UserState")); - -var _UserStatus = _interopRequireDefault(require("./UserStatus")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -/** - * The CurrentUser model module. - * @module model/CurrentUser - * @version 1.0.0 - */ -var CurrentUser = /*#__PURE__*/function () { - /** - * Constructs a new CurrentUser. - * @alias module:model/CurrentUser - * @param id {String} - * @param username {String} - * @param displayName {String} - * @param userIcon {String} - * @param bio {String} - * @param bioLinks {Array.} - * @param profilePicOverride {String} - * @param statusDescription {String} - * @param pastDisplayNames {Array.} - * @param hasEmail {Boolean} - * @param hasPendingEmail {Boolean} - * @param obfuscatedEmail {String} - * @param obfuscatedPendingEmail {String} - * @param emailVerified {Boolean} - * @param hasBirthday {Boolean} - * @param unsubscribe {Boolean} - * @param statusHistory {Array.} - * @param statusFirstTime {Boolean} - * @param friends {Array.} - * @param friendGroupNames {Array.} - * @param currentAvatarImageUrl {String} - * @param currentAvatarThumbnailImageUrl {String} - * @param fallbackAvatar {String} - * @param currentAvatar {String} - * @param currentAvatarAssetUrl {String} - * @param acceptedTOSVersion {Number} - * @param steamId {String} - * @param steamDetails {Object} - * @param oculusId {String} - * @param hasLoggedInFromClient {Boolean} - * @param homeLocation {String} - * @param twoFactorAuthEnabled {Boolean} - * @param state {module:model/UserState} - * @param tags {Array.} - * @param developerType {module:model/DeveloperType} - * @param lastLogin {Date} - * @param lastPlatform {String} - * @param allowAvatarCopying {Boolean} - * @param status {module:model/UserStatus} - * @param dateJoined {Date} - * @param isFriend {Boolean} - * @param friendKey {String} - * @param onlineFriends {Array.} - * @param activeFriends {Array.} - * @param offlineFriends {Array.} - */ - function CurrentUser(id, username, displayName, userIcon, bio, bioLinks, profilePicOverride, statusDescription, pastDisplayNames, hasEmail, hasPendingEmail, obfuscatedEmail, obfuscatedPendingEmail, emailVerified, hasBirthday, unsubscribe, statusHistory, statusFirstTime, friends, friendGroupNames, currentAvatarImageUrl, currentAvatarThumbnailImageUrl, fallbackAvatar, currentAvatar, currentAvatarAssetUrl, acceptedTOSVersion, steamId, steamDetails, oculusId, hasLoggedInFromClient, homeLocation, twoFactorAuthEnabled, state, tags, developerType, lastLogin, lastPlatform, allowAvatarCopying, status, dateJoined, isFriend, friendKey, onlineFriends, activeFriends, offlineFriends) { - _classCallCheck(this, CurrentUser); - - CurrentUser.initialize(this, id, username, displayName, userIcon, bio, bioLinks, profilePicOverride, statusDescription, pastDisplayNames, hasEmail, hasPendingEmail, obfuscatedEmail, obfuscatedPendingEmail, emailVerified, hasBirthday, unsubscribe, statusHistory, statusFirstTime, friends, friendGroupNames, currentAvatarImageUrl, currentAvatarThumbnailImageUrl, fallbackAvatar, currentAvatar, currentAvatarAssetUrl, acceptedTOSVersion, steamId, steamDetails, oculusId, hasLoggedInFromClient, homeLocation, twoFactorAuthEnabled, state, tags, developerType, lastLogin, lastPlatform, allowAvatarCopying, status, dateJoined, isFriend, friendKey, onlineFriends, activeFriends, offlineFriends); - } - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - - - _createClass(CurrentUser, null, [{ - key: "initialize", - value: function initialize(obj, id, username, displayName, userIcon, bio, bioLinks, profilePicOverride, statusDescription, pastDisplayNames, hasEmail, hasPendingEmail, obfuscatedEmail, obfuscatedPendingEmail, emailVerified, hasBirthday, unsubscribe, statusHistory, statusFirstTime, friends, friendGroupNames, currentAvatarImageUrl, currentAvatarThumbnailImageUrl, fallbackAvatar, currentAvatar, currentAvatarAssetUrl, acceptedTOSVersion, steamId, steamDetails, oculusId, hasLoggedInFromClient, homeLocation, twoFactorAuthEnabled, state, tags, developerType, lastLogin, lastPlatform, allowAvatarCopying, status, dateJoined, isFriend, friendKey, onlineFriends, activeFriends, offlineFriends) { - obj['id'] = id; - obj['username'] = username; - obj['displayName'] = displayName; - obj['userIcon'] = userIcon; - obj['bio'] = bio; - obj['bioLinks'] = bioLinks; - obj['profilePicOverride'] = profilePicOverride; - obj['statusDescription'] = statusDescription; - obj['pastDisplayNames'] = pastDisplayNames; - obj['hasEmail'] = hasEmail; - obj['hasPendingEmail'] = hasPendingEmail; - obj['obfuscatedEmail'] = obfuscatedEmail; - obj['obfuscatedPendingEmail'] = obfuscatedPendingEmail; - obj['emailVerified'] = emailVerified; - obj['hasBirthday'] = hasBirthday; - obj['unsubscribe'] = unsubscribe; - obj['statusHistory'] = statusHistory; - obj['statusFirstTime'] = statusFirstTime; - obj['friends'] = friends; - obj['friendGroupNames'] = friendGroupNames; - obj['currentAvatarImageUrl'] = currentAvatarImageUrl; - obj['currentAvatarThumbnailImageUrl'] = currentAvatarThumbnailImageUrl; - obj['fallbackAvatar'] = fallbackAvatar; - obj['currentAvatar'] = currentAvatar; - obj['currentAvatarAssetUrl'] = currentAvatarAssetUrl; - obj['acceptedTOSVersion'] = acceptedTOSVersion; - obj['steamId'] = steamId; - obj['steamDetails'] = steamDetails; - obj['oculusId'] = oculusId; - obj['hasLoggedInFromClient'] = hasLoggedInFromClient; - obj['homeLocation'] = homeLocation; - obj['twoFactorAuthEnabled'] = twoFactorAuthEnabled; - obj['state'] = state; - obj['tags'] = tags; - obj['developerType'] = developerType; - obj['last_login'] = lastLogin; - obj['last_platform'] = lastPlatform; - obj['allowAvatarCopying'] = allowAvatarCopying; - obj['status'] = status; - obj['date_joined'] = dateJoined; - obj['isFriend'] = isFriend || false; - obj['friendKey'] = friendKey; - obj['onlineFriends'] = onlineFriends; - obj['activeFriends'] = activeFriends; - obj['offlineFriends'] = offlineFriends; - } - /** - * Constructs a CurrentUser from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/CurrentUser} obj Optional instance to populate. - * @return {module:model/CurrentUser} The populated CurrentUser instance. - */ - - }, { - key: "constructFromObject", - value: function constructFromObject(data, obj) { - if (data) { - obj = obj || new CurrentUser(); - - if (data.hasOwnProperty('id')) { - obj['id'] = _ApiClient["default"].convertToType(data['id'], 'String'); - } - - if (data.hasOwnProperty('username')) { - obj['username'] = _ApiClient["default"].convertToType(data['username'], 'String'); - } - - if (data.hasOwnProperty('displayName')) { - obj['displayName'] = _ApiClient["default"].convertToType(data['displayName'], 'String'); - } - - if (data.hasOwnProperty('userIcon')) { - obj['userIcon'] = _ApiClient["default"].convertToType(data['userIcon'], 'String'); - } - - if (data.hasOwnProperty('bio')) { - obj['bio'] = _ApiClient["default"].convertToType(data['bio'], 'String'); - } - - if (data.hasOwnProperty('bioLinks')) { - obj['bioLinks'] = _ApiClient["default"].convertToType(data['bioLinks'], ['String']); - } - - if (data.hasOwnProperty('profilePicOverride')) { - obj['profilePicOverride'] = _ApiClient["default"].convertToType(data['profilePicOverride'], 'String'); - } - - if (data.hasOwnProperty('statusDescription')) { - obj['statusDescription'] = _ApiClient["default"].convertToType(data['statusDescription'], 'String'); - } - - if (data.hasOwnProperty('pastDisplayNames')) { - obj['pastDisplayNames'] = _ApiClient["default"].convertToType(data['pastDisplayNames'], ['String']); - } - - if (data.hasOwnProperty('hasEmail')) { - obj['hasEmail'] = _ApiClient["default"].convertToType(data['hasEmail'], 'Boolean'); - } - - if (data.hasOwnProperty('hasPendingEmail')) { - obj['hasPendingEmail'] = _ApiClient["default"].convertToType(data['hasPendingEmail'], 'Boolean'); - } - - if (data.hasOwnProperty('obfuscatedEmail')) { - obj['obfuscatedEmail'] = _ApiClient["default"].convertToType(data['obfuscatedEmail'], 'String'); - } - - if (data.hasOwnProperty('obfuscatedPendingEmail')) { - obj['obfuscatedPendingEmail'] = _ApiClient["default"].convertToType(data['obfuscatedPendingEmail'], 'String'); - } - - if (data.hasOwnProperty('emailVerified')) { - obj['emailVerified'] = _ApiClient["default"].convertToType(data['emailVerified'], 'Boolean'); - } - - if (data.hasOwnProperty('hasBirthday')) { - obj['hasBirthday'] = _ApiClient["default"].convertToType(data['hasBirthday'], 'Boolean'); - } - - if (data.hasOwnProperty('unsubscribe')) { - obj['unsubscribe'] = _ApiClient["default"].convertToType(data['unsubscribe'], 'Boolean'); - } - - if (data.hasOwnProperty('statusHistory')) { - obj['statusHistory'] = _ApiClient["default"].convertToType(data['statusHistory'], ['String']); - } - - if (data.hasOwnProperty('statusFirstTime')) { - obj['statusFirstTime'] = _ApiClient["default"].convertToType(data['statusFirstTime'], 'Boolean'); - } - - if (data.hasOwnProperty('friends')) { - obj['friends'] = _ApiClient["default"].convertToType(data['friends'], ['String']); - } - - if (data.hasOwnProperty('friendGroupNames')) { - obj['friendGroupNames'] = _ApiClient["default"].convertToType(data['friendGroupNames'], ['String']); - } - - if (data.hasOwnProperty('currentAvatarImageUrl')) { - obj['currentAvatarImageUrl'] = _ApiClient["default"].convertToType(data['currentAvatarImageUrl'], 'String'); - } - - if (data.hasOwnProperty('currentAvatarThumbnailImageUrl')) { - obj['currentAvatarThumbnailImageUrl'] = _ApiClient["default"].convertToType(data['currentAvatarThumbnailImageUrl'], 'String'); - } - - if (data.hasOwnProperty('fallbackAvatar')) { - obj['fallbackAvatar'] = _ApiClient["default"].convertToType(data['fallbackAvatar'], 'String'); - } - - if (data.hasOwnProperty('currentAvatar')) { - obj['currentAvatar'] = _ApiClient["default"].convertToType(data['currentAvatar'], 'String'); - } - - if (data.hasOwnProperty('currentAvatarAssetUrl')) { - obj['currentAvatarAssetUrl'] = _ApiClient["default"].convertToType(data['currentAvatarAssetUrl'], 'String'); - } - - if (data.hasOwnProperty('accountDeletionDate')) { - obj['accountDeletionDate'] = _ApiClient["default"].convertToType(data['accountDeletionDate'], 'Date'); - } - - if (data.hasOwnProperty('acceptedTOSVersion')) { - obj['acceptedTOSVersion'] = _ApiClient["default"].convertToType(data['acceptedTOSVersion'], 'Number'); - } - - if (data.hasOwnProperty('steamId')) { - obj['steamId'] = _ApiClient["default"].convertToType(data['steamId'], 'String'); - } - - if (data.hasOwnProperty('steamDetails')) { - obj['steamDetails'] = _ApiClient["default"].convertToType(data['steamDetails'], Object); - } - - if (data.hasOwnProperty('oculusId')) { - obj['oculusId'] = _ApiClient["default"].convertToType(data['oculusId'], 'String'); - } - - if (data.hasOwnProperty('hasLoggedInFromClient')) { - obj['hasLoggedInFromClient'] = _ApiClient["default"].convertToType(data['hasLoggedInFromClient'], 'Boolean'); - } - - if (data.hasOwnProperty('homeLocation')) { - obj['homeLocation'] = _ApiClient["default"].convertToType(data['homeLocation'], 'String'); - } - - if (data.hasOwnProperty('twoFactorAuthEnabled')) { - obj['twoFactorAuthEnabled'] = _ApiClient["default"].convertToType(data['twoFactorAuthEnabled'], 'Boolean'); - } - - if (data.hasOwnProperty('state')) { - obj['state'] = _UserState["default"].constructFromObject(data['state']); - } - - if (data.hasOwnProperty('tags')) { - obj['tags'] = _ApiClient["default"].convertToType(data['tags'], ['String']); - } - - if (data.hasOwnProperty('developerType')) { - obj['developerType'] = _DeveloperType["default"].constructFromObject(data['developerType']); - } - - if (data.hasOwnProperty('last_login')) { - obj['last_login'] = _ApiClient["default"].convertToType(data['last_login'], 'Date'); - } - - if (data.hasOwnProperty('last_platform')) { - obj['last_platform'] = _ApiClient["default"].convertToType(data['last_platform'], 'String'); - } - - if (data.hasOwnProperty('allowAvatarCopying')) { - obj['allowAvatarCopying'] = _ApiClient["default"].convertToType(data['allowAvatarCopying'], 'Boolean'); - } - - if (data.hasOwnProperty('status')) { - obj['status'] = _UserStatus["default"].constructFromObject(data['status']); - } - - if (data.hasOwnProperty('date_joined')) { - obj['date_joined'] = _ApiClient["default"].convertToType(data['date_joined'], 'Date'); - } - - if (data.hasOwnProperty('isFriend')) { - obj['isFriend'] = _ApiClient["default"].convertToType(data['isFriend'], 'Boolean'); - } - - if (data.hasOwnProperty('friendKey')) { - obj['friendKey'] = _ApiClient["default"].convertToType(data['friendKey'], 'String'); - } - - if (data.hasOwnProperty('onlineFriends')) { - obj['onlineFriends'] = _ApiClient["default"].convertToType(data['onlineFriends'], ['String']); - } - - if (data.hasOwnProperty('activeFriends')) { - obj['activeFriends'] = _ApiClient["default"].convertToType(data['activeFriends'], ['String']); - } - - if (data.hasOwnProperty('offlineFriends')) { - obj['offlineFriends'] = _ApiClient["default"].convertToType(data['offlineFriends'], ['String']); - } - } - - return obj; - } - }]); - - return CurrentUser; -}(); -/** - * @member {String} id - */ - - -CurrentUser.prototype['id'] = undefined; -/** - * @member {String} username - */ - -CurrentUser.prototype['username'] = undefined; -/** - * @member {String} displayName - */ - -CurrentUser.prototype['displayName'] = undefined; -/** - * @member {String} userIcon - */ - -CurrentUser.prototype['userIcon'] = undefined; -/** - * @member {String} bio - */ - -CurrentUser.prototype['bio'] = undefined; -/** - * @member {Array.} bioLinks - */ - -CurrentUser.prototype['bioLinks'] = undefined; -/** - * @member {String} profilePicOverride - */ - -CurrentUser.prototype['profilePicOverride'] = undefined; -/** - * @member {String} statusDescription - */ - -CurrentUser.prototype['statusDescription'] = undefined; -/** - * @member {Array.} pastDisplayNames - */ - -CurrentUser.prototype['pastDisplayNames'] = undefined; -/** - * @member {Boolean} hasEmail - */ - -CurrentUser.prototype['hasEmail'] = undefined; -/** - * @member {Boolean} hasPendingEmail - */ - -CurrentUser.prototype['hasPendingEmail'] = undefined; -/** - * @member {String} obfuscatedEmail - */ - -CurrentUser.prototype['obfuscatedEmail'] = undefined; -/** - * @member {String} obfuscatedPendingEmail - */ - -CurrentUser.prototype['obfuscatedPendingEmail'] = undefined; -/** - * @member {Boolean} emailVerified - */ - -CurrentUser.prototype['emailVerified'] = undefined; -/** - * @member {Boolean} hasBirthday - */ - -CurrentUser.prototype['hasBirthday'] = undefined; -/** - * @member {Boolean} unsubscribe - */ - -CurrentUser.prototype['unsubscribe'] = undefined; -/** - * @member {Array.} statusHistory - */ - -CurrentUser.prototype['statusHistory'] = undefined; -/** - * @member {Boolean} statusFirstTime - */ - -CurrentUser.prototype['statusFirstTime'] = undefined; -/** - * @member {Array.} friends - */ - -CurrentUser.prototype['friends'] = undefined; -/** - * @member {Array.} friendGroupNames - */ - -CurrentUser.prototype['friendGroupNames'] = undefined; -/** - * @member {String} currentAvatarImageUrl - */ - -CurrentUser.prototype['currentAvatarImageUrl'] = undefined; -/** - * @member {String} currentAvatarThumbnailImageUrl - */ - -CurrentUser.prototype['currentAvatarThumbnailImageUrl'] = undefined; -/** - * @member {String} fallbackAvatar - */ - -CurrentUser.prototype['fallbackAvatar'] = undefined; -/** - * @member {String} currentAvatar - */ - -CurrentUser.prototype['currentAvatar'] = undefined; -/** - * @member {String} currentAvatarAssetUrl - */ - -CurrentUser.prototype['currentAvatarAssetUrl'] = undefined; -/** - * @member {Date} accountDeletionDate - */ - -CurrentUser.prototype['accountDeletionDate'] = undefined; -/** - * @member {Number} acceptedTOSVersion - */ - -CurrentUser.prototype['acceptedTOSVersion'] = undefined; -/** - * @member {String} steamId - */ - -CurrentUser.prototype['steamId'] = undefined; -/** - * @member {Object} steamDetails - */ - -CurrentUser.prototype['steamDetails'] = undefined; -/** - * @member {String} oculusId - */ - -CurrentUser.prototype['oculusId'] = undefined; -/** - * @member {Boolean} hasLoggedInFromClient - */ - -CurrentUser.prototype['hasLoggedInFromClient'] = undefined; -/** - * @member {String} homeLocation - */ - -CurrentUser.prototype['homeLocation'] = undefined; -/** - * @member {Boolean} twoFactorAuthEnabled - */ - -CurrentUser.prototype['twoFactorAuthEnabled'] = undefined; -/** - * @member {module:model/UserState} state - */ - -CurrentUser.prototype['state'] = undefined; -/** - * @member {Array.} tags - */ - -CurrentUser.prototype['tags'] = undefined; -/** - * @member {module:model/DeveloperType} developerType - */ - -CurrentUser.prototype['developerType'] = undefined; -/** - * @member {Date} last_login - */ - -CurrentUser.prototype['last_login'] = undefined; -/** - * @member {String} last_platform - */ - -CurrentUser.prototype['last_platform'] = undefined; -/** - * @member {Boolean} allowAvatarCopying - */ - -CurrentUser.prototype['allowAvatarCopying'] = undefined; -/** - * @member {module:model/UserStatus} status - */ - -CurrentUser.prototype['status'] = undefined; -/** - * @member {Date} date_joined - */ - -CurrentUser.prototype['date_joined'] = undefined; -/** - * @member {Boolean} isFriend - * @default false - */ - -CurrentUser.prototype['isFriend'] = false; -/** - * @member {String} friendKey - */ - -CurrentUser.prototype['friendKey'] = undefined; -/** - * @member {Array.} onlineFriends - */ - -CurrentUser.prototype['onlineFriends'] = undefined; -/** - * @member {Array.} activeFriends - */ - -CurrentUser.prototype['activeFriends'] = undefined; -/** - * @member {Array.} offlineFriends - */ - -CurrentUser.prototype['offlineFriends'] = undefined; -var _default = CurrentUser; -exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/DeploymentGroup.js b/dist/model/DeploymentGroup.js deleted file mode 100644 index 42734ce..0000000 --- a/dist/model/DeploymentGroup.js +++ /dev/null @@ -1,54 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; - -var _ApiClient = _interopRequireDefault(require("../ApiClient")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - -/** -* Enum class DeploymentGroup. -* @enum {} -* @readonly -*/ -var DeploymentGroup = /*#__PURE__*/function () { - function DeploymentGroup() { - _classCallCheck(this, DeploymentGroup); - - _defineProperty(this, "blue", "blue"); - - _defineProperty(this, "green", "green"); - - _defineProperty(this, "grape", "grape"); - - _defineProperty(this, "cherry", "cherry"); - } - - _createClass(DeploymentGroup, null, [{ - key: "constructFromObject", - value: - /** - * Returns a DeploymentGroup enum value from a Javascript object name. - * @param {Object} data The plain JavaScript object containing the name of the enum value. - * @return {module:model/DeploymentGroup} The enum DeploymentGroup value. - */ - function constructFromObject(object) { - return object; - } - }]); - - return DeploymentGroup; -}(); - -exports["default"] = DeploymentGroup; \ No newline at end of file diff --git a/dist/model/DeveloperType.js b/dist/model/DeveloperType.js deleted file mode 100644 index 216343c..0000000 --- a/dist/model/DeveloperType.js +++ /dev/null @@ -1,54 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; - -var _ApiClient = _interopRequireDefault(require("../ApiClient")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - -/** -* Enum class DeveloperType. -* @enum {} -* @readonly -*/ -var DeveloperType = /*#__PURE__*/function () { - function DeveloperType() { - _classCallCheck(this, DeveloperType); - - _defineProperty(this, "none", "none"); - - _defineProperty(this, "trusted", "trusted"); - - _defineProperty(this, "internal", "internal"); - - _defineProperty(this, "moderator", "moderator"); - } - - _createClass(DeveloperType, null, [{ - key: "constructFromObject", - value: - /** - * Returns a DeveloperType enum value from a Javascript object name. - * @param {Object} data The plain JavaScript object containing the name of the enum value. - * @return {module:model/DeveloperType} The enum DeveloperType value. - */ - function constructFromObject(object) { - return object; - } - }]); - - return DeveloperType; -}(); - -exports["default"] = DeveloperType; \ No newline at end of file diff --git a/dist/model/Error.js b/dist/model/Error.js deleted file mode 100644 index 531d1c6..0000000 --- a/dist/model/Error.js +++ /dev/null @@ -1,77 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; - -var _ApiClient = _interopRequireDefault(require("../ApiClient")); - -var _Response = _interopRequireDefault(require("./Response")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -/** - * The Error model module. - * @module model/Error - * @version 1.0.0 - */ -var Error = /*#__PURE__*/function () { - /** - * Constructs a new Error. - * @alias module:model/Error - */ - function Error() { - _classCallCheck(this, Error); - - Error.initialize(this); - } - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - - - _createClass(Error, null, [{ - key: "initialize", - value: function initialize(obj) {} - /** - * Constructs a Error from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/Error} obj Optional instance to populate. - * @return {module:model/Error} The populated Error instance. - */ - - }, { - key: "constructFromObject", - value: function constructFromObject(data, obj) { - if (data) { - obj = obj || new Error(); - - if (data.hasOwnProperty('error')) { - obj['error'] = _Response["default"].constructFromObject(data['error']); - } - } - - return obj; - } - }]); - - return Error; -}(); -/** - * @member {module:model/Response} error - */ - - -Error.prototype['error'] = undefined; -var _default = Error; -exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/File.js b/dist/model/File.js deleted file mode 100644 index 867b535..0000000 --- a/dist/model/File.js +++ /dev/null @@ -1,150 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; - -var _ApiClient = _interopRequireDefault(require("../ApiClient")); - -var _FileVersion = _interopRequireDefault(require("./FileVersion")); - -var _MIMEType = _interopRequireDefault(require("./MIMEType")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -/** - * The File model module. - * @module model/File - * @version 1.0.0 - */ -var File = /*#__PURE__*/function () { - /** - * Constructs a new File. - * - * @alias module:model/File - * @param id {String} - * @param name {String} - * @param ownerId {String} - * @param mimeType {module:model/MIMEType} - * @param extension {String} - * @param tags {Array.} - * @param versions {Array.} - */ - function File(id, name, ownerId, mimeType, extension, tags, versions) { - _classCallCheck(this, File); - - File.initialize(this, id, name, ownerId, mimeType, extension, tags, versions); - } - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - - - _createClass(File, null, [{ - key: "initialize", - value: function initialize(obj, id, name, ownerId, mimeType, extension, tags, versions) { - obj['id'] = id; - obj['name'] = name; - obj['ownerId'] = ownerId; - obj['mimeType'] = mimeType; - obj['extension'] = extension; - obj['tags'] = tags; - obj['versions'] = versions; - } - /** - * Constructs a File from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/File} obj Optional instance to populate. - * @return {module:model/File} The populated File instance. - */ - - }, { - key: "constructFromObject", - value: function constructFromObject(data, obj) { - if (data) { - obj = obj || new File(); - - if (data.hasOwnProperty('id')) { - obj['id'] = _ApiClient["default"].convertToType(data['id'], 'String'); - } - - if (data.hasOwnProperty('name')) { - obj['name'] = _ApiClient["default"].convertToType(data['name'], 'String'); - } - - if (data.hasOwnProperty('ownerId')) { - obj['ownerId'] = _ApiClient["default"].convertToType(data['ownerId'], 'String'); - } - - if (data.hasOwnProperty('mimeType')) { - obj['mimeType'] = _MIMEType["default"].constructFromObject(data['mimeType']); - } - - if (data.hasOwnProperty('extension')) { - obj['extension'] = _ApiClient["default"].convertToType(data['extension'], 'String'); - } - - if (data.hasOwnProperty('tags')) { - obj['tags'] = _ApiClient["default"].convertToType(data['tags'], ['String']); - } - - if (data.hasOwnProperty('versions')) { - obj['versions'] = _ApiClient["default"].convertToType(data['versions'], [_FileVersion["default"]]); - } - } - - return obj; - } - }]); - - return File; -}(); -/** - * @member {String} id - */ - - -File.prototype['id'] = undefined; -/** - * - * @member {String} name - */ - -File.prototype['name'] = undefined; -/** - * @member {String} ownerId - */ - -File.prototype['ownerId'] = undefined; -/** - * @member {module:model/MIMEType} mimeType - */ - -File.prototype['mimeType'] = undefined; -/** - * @member {String} extension - */ - -File.prototype['extension'] = undefined; -/** - * @member {Array.} tags - */ - -File.prototype['tags'] = undefined; -/** - * @member {Array.} versions - */ - -File.prototype['versions'] = undefined; -var _default = File; -exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/FileData.js b/dist/model/FileData.js deleted file mode 100644 index 6b30c2d..0000000 --- a/dist/model/FileData.js +++ /dev/null @@ -1,173 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; - -var _ApiClient = _interopRequireDefault(require("../ApiClient")); - -var _FileStatus = _interopRequireDefault(require("./FileStatus")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -/** - * The FileData model module. - * @module model/FileData - * @version 1.0.0 - */ -var FileData = /*#__PURE__*/function () { - /** - * Constructs a new FileData. - * - * @alias module:model/FileData - * @param fileName {String} - * @param url {String} - * @param md5 {String} - * @param sizeInBytes {Number} - * @param status {module:model/FileStatus} - * @param category {module:model/FileData.CategoryEnum} - * @param uploadId {String} - */ - function FileData(fileName, url, md5, sizeInBytes, status, category, uploadId) { - _classCallCheck(this, FileData); - - FileData.initialize(this, fileName, url, md5, sizeInBytes, status, category, uploadId); - } - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - - - _createClass(FileData, null, [{ - key: "initialize", - value: function initialize(obj, fileName, url, md5, sizeInBytes, status, category, uploadId) { - obj['fileName'] = fileName; - obj['url'] = url; - obj['md5'] = md5; - obj['sizeInBytes'] = sizeInBytes; - obj['status'] = status; - obj['category'] = category; - obj['uploadId'] = uploadId || ''; - } - /** - * Constructs a FileData from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/FileData} obj Optional instance to populate. - * @return {module:model/FileData} The populated FileData instance. - */ - - }, { - key: "constructFromObject", - value: function constructFromObject(data, obj) { - if (data) { - obj = obj || new FileData(); - - if (data.hasOwnProperty('fileName')) { - obj['fileName'] = _ApiClient["default"].convertToType(data['fileName'], 'String'); - } - - if (data.hasOwnProperty('url')) { - obj['url'] = _ApiClient["default"].convertToType(data['url'], 'String'); - } - - if (data.hasOwnProperty('md5')) { - obj['md5'] = _ApiClient["default"].convertToType(data['md5'], 'String'); - } - - if (data.hasOwnProperty('sizeInBytes')) { - obj['sizeInBytes'] = _ApiClient["default"].convertToType(data['sizeInBytes'], 'Number'); - } - - if (data.hasOwnProperty('status')) { - obj['status'] = _FileStatus["default"].constructFromObject(data['status']); - } - - if (data.hasOwnProperty('category')) { - obj['category'] = _ApiClient["default"].convertToType(data['category'], 'String'); - } - - if (data.hasOwnProperty('uploadId')) { - obj['uploadId'] = _ApiClient["default"].convertToType(data['uploadId'], 'String'); - } - } - - return obj; - } - }]); - - return FileData; -}(); -/** - * @member {String} fileName - */ - - -FileData.prototype['fileName'] = undefined; -/** - * @member {String} url - */ - -FileData.prototype['url'] = undefined; -/** - * @member {String} md5 - */ - -FileData.prototype['md5'] = undefined; -/** - * @member {Number} sizeInBytes - */ - -FileData.prototype['sizeInBytes'] = undefined; -/** - * @member {module:model/FileStatus} status - */ - -FileData.prototype['status'] = undefined; -/** - * @member {module:model/FileData.CategoryEnum} category - */ - -FileData.prototype['category'] = undefined; -/** - * @member {String} uploadId - * @default '' - */ - -FileData.prototype['uploadId'] = ''; -/** - * Allowed values for the category property. - * @enum {String} - * @readonly - */ - -FileData['CategoryEnum'] = { - /** - * value: "multipart" - * @const - */ - "multipart": "multipart", - - /** - * value: "queued" - * @const - */ - "queued": "queued", - - /** - * value: "simple" - * @const - */ - "simple": "simple" -}; -var _default = FileData; -exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/FileStatus.js b/dist/model/FileStatus.js deleted file mode 100644 index fc4e20e..0000000 --- a/dist/model/FileStatus.js +++ /dev/null @@ -1,52 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; - -var _ApiClient = _interopRequireDefault(require("../ApiClient")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - -/** -* Enum class FileStatus. -* @enum {} -* @readonly -*/ -var FileStatus = /*#__PURE__*/function () { - function FileStatus() { - _classCallCheck(this, FileStatus); - - _defineProperty(this, "waiting", "waiting"); - - _defineProperty(this, "complete", "complete"); - - _defineProperty(this, "none", "none"); - } - - _createClass(FileStatus, null, [{ - key: "constructFromObject", - value: - /** - * Returns a FileStatus enum value from a Javascript object name. - * @param {Object} data The plain JavaScript object containing the name of the enum value. - * @return {module:model/FileStatus} The enum FileStatus value. - */ - function constructFromObject(object) { - return object; - } - }]); - - return FileStatus; -}(); - -exports["default"] = FileStatus; \ No newline at end of file diff --git a/dist/model/FileVersion.js b/dist/model/FileVersion.js deleted file mode 100644 index 5bb4fb4..0000000 --- a/dist/model/FileVersion.js +++ /dev/null @@ -1,145 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; - -var _ApiClient = _interopRequireDefault(require("../ApiClient")); - -var _FileData = _interopRequireDefault(require("./FileData")); - -var _FileStatus = _interopRequireDefault(require("./FileStatus")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -/** - * The FileVersion model module. - * @module model/FileVersion - * @version 1.0.0 - */ -var FileVersion = /*#__PURE__*/function () { - /** - * Constructs a new FileVersion. - * - * @alias module:model/FileVersion - * @param version {Number} Incremental version counter, can only be increased. - * @param status {module:model/FileStatus} - * @param createdAt {Date} - */ - function FileVersion(version, status, createdAt) { - _classCallCheck(this, FileVersion); - - FileVersion.initialize(this, version, status, createdAt); - } - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - - - _createClass(FileVersion, null, [{ - key: "initialize", - value: function initialize(obj, version, status, createdAt) { - obj['version'] = version || 0; - obj['status'] = status; - obj['created_at'] = createdAt; - } - /** - * Constructs a FileVersion from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/FileVersion} obj Optional instance to populate. - * @return {module:model/FileVersion} The populated FileVersion instance. - */ - - }, { - key: "constructFromObject", - value: function constructFromObject(data, obj) { - if (data) { - obj = obj || new FileVersion(); - - if (data.hasOwnProperty('version')) { - obj['version'] = _ApiClient["default"].convertToType(data['version'], 'Number'); - } - - if (data.hasOwnProperty('status')) { - obj['status'] = _FileStatus["default"].constructFromObject(data['status']); - } - - if (data.hasOwnProperty('created_at')) { - obj['created_at'] = _ApiClient["default"].convertToType(data['created_at'], 'Date'); - } - - if (data.hasOwnProperty('file')) { - obj['file'] = _FileData["default"].constructFromObject(data['file']); - } - - if (data.hasOwnProperty('delta')) { - obj['delta'] = _FileData["default"].constructFromObject(data['delta']); - } - - if (data.hasOwnProperty('signature')) { - obj['signature'] = _FileData["default"].constructFromObject(data['signature']); - } - - if (data.hasOwnProperty('deleted')) { - obj['deleted'] = _ApiClient["default"].convertToType(data['deleted'], 'Boolean'); - } - } - - return obj; - } - }]); - - return FileVersion; -}(); -/** - * Incremental version counter, can only be increased. - * @member {Number} version - * @default 0 - */ - - -FileVersion.prototype['version'] = 0; -/** - * @member {module:model/FileStatus} status - */ - -FileVersion.prototype['status'] = undefined; -/** - * @member {Date} created_at - */ - -FileVersion.prototype['created_at'] = undefined; -/** - * @member {module:model/FileData} file - */ - -FileVersion.prototype['file'] = undefined; -/** - * @member {module:model/FileData} delta - */ - -FileVersion.prototype['delta'] = undefined; -/** - * @member {module:model/FileData} signature - */ - -FileVersion.prototype['signature'] = undefined; -/** - * Usually only present if `true` - * @member {Boolean} deleted - * @default true - */ - -FileVersion.prototype['deleted'] = true; -var _default = FileVersion; -exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/InlineObject.js b/dist/model/InlineObject.js deleted file mode 100644 index 2f97735..0000000 --- a/dist/model/InlineObject.js +++ /dev/null @@ -1,78 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; - -var _ApiClient = _interopRequireDefault(require("../ApiClient")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -/** - * The InlineObject model module. - * @module model/InlineObject - * @version 1.0.0 - */ -var InlineObject = /*#__PURE__*/function () { - /** - * Constructs a new InlineObject. - * @alias module:model/InlineObject - * @param code {String} - */ - function InlineObject(code) { - _classCallCheck(this, InlineObject); - - InlineObject.initialize(this, code); - } - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - - - _createClass(InlineObject, null, [{ - key: "initialize", - value: function initialize(obj, code) { - obj['code'] = code; - } - /** - * Constructs a InlineObject from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/InlineObject} obj Optional instance to populate. - * @return {module:model/InlineObject} The populated InlineObject instance. - */ - - }, { - key: "constructFromObject", - value: function constructFromObject(data, obj) { - if (data) { - obj = obj || new InlineObject(); - - if (data.hasOwnProperty('code')) { - obj['code'] = _ApiClient["default"].convertToType(data['code'], 'String'); - } - } - - return obj; - } - }]); - - return InlineObject; -}(); -/** - * @member {String} code - */ - - -InlineObject.prototype['code'] = undefined; -var _default = InlineObject; -exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/InlineObject1.js b/dist/model/InlineObject1.js deleted file mode 100644 index 1afe679..0000000 --- a/dist/model/InlineObject1.js +++ /dev/null @@ -1,78 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; - -var _ApiClient = _interopRequireDefault(require("../ApiClient")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -/** - * The InlineObject1 model module. - * @module model/InlineObject1 - * @version 1.0.0 - */ -var InlineObject1 = /*#__PURE__*/function () { - /** - * Constructs a new InlineObject1. - * @alias module:model/InlineObject1 - * @param code {String} - */ - function InlineObject1(code) { - _classCallCheck(this, InlineObject1); - - InlineObject1.initialize(this, code); - } - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - - - _createClass(InlineObject1, null, [{ - key: "initialize", - value: function initialize(obj, code) { - obj['code'] = code; - } - /** - * Constructs a InlineObject1 from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/InlineObject1} obj Optional instance to populate. - * @return {module:model/InlineObject1} The populated InlineObject1 instance. - */ - - }, { - key: "constructFromObject", - value: function constructFromObject(data, obj) { - if (data) { - obj = obj || new InlineObject1(); - - if (data.hasOwnProperty('code')) { - obj['code'] = _ApiClient["default"].convertToType(data['code'], 'String'); - } - } - - return obj; - } - }]); - - return InlineObject1; -}(); -/** - * @member {String} code - */ - - -InlineObject1.prototype['code'] = undefined; -var _default = InlineObject1; -exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/InlineObject2.js b/dist/model/InlineObject2.js deleted file mode 100644 index 91d14b9..0000000 --- a/dist/model/InlineObject2.js +++ /dev/null @@ -1,150 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; - -var _ApiClient = _interopRequireDefault(require("../ApiClient")); - -var _UserStatus = _interopRequireDefault(require("./UserStatus")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -/** - * The InlineObject2 model module. - * @module model/InlineObject2 - * @version 1.0.0 - */ -var InlineObject2 = /*#__PURE__*/function () { - /** - * Constructs a new InlineObject2. - * @alias module:model/InlineObject2 - */ - function InlineObject2() { - _classCallCheck(this, InlineObject2); - - InlineObject2.initialize(this); - } - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - - - _createClass(InlineObject2, null, [{ - key: "initialize", - value: function initialize(obj) {} - /** - * Constructs a InlineObject2 from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/InlineObject2} obj Optional instance to populate. - * @return {module:model/InlineObject2} The populated InlineObject2 instance. - */ - - }, { - key: "constructFromObject", - value: function constructFromObject(data, obj) { - if (data) { - obj = obj || new InlineObject2(); - - if (data.hasOwnProperty('email')) { - obj['email'] = _ApiClient["default"].convertToType(data['email'], 'String'); - } - - if (data.hasOwnProperty('birthday')) { - obj['birthday'] = _ApiClient["default"].convertToType(data['birthday'], 'Date'); - } - - if (data.hasOwnProperty('acceptedTOSVersion')) { - obj['acceptedTOSVersion'] = _ApiClient["default"].convertToType(data['acceptedTOSVersion'], 'Number'); - } - - if (data.hasOwnProperty('tags')) { - obj['tags'] = _ApiClient["default"].convertToType(data['tags'], ['String']); - } - - if (data.hasOwnProperty('status')) { - obj['status'] = _UserStatus["default"].constructFromObject(data['status']); - } - - if (data.hasOwnProperty('statusDescription')) { - obj['statusDescription'] = _ApiClient["default"].convertToType(data['statusDescription'], 'String'); - } - - if (data.hasOwnProperty('bio')) { - obj['bio'] = _ApiClient["default"].convertToType(data['bio'], 'String'); - } - - if (data.hasOwnProperty('bioLinks')) { - obj['bioLinks'] = _ApiClient["default"].convertToType(data['bioLinks'], ['String']); - } - - if (data.hasOwnProperty('userIcon')) { - obj['userIcon'] = _ApiClient["default"].convertToType(data['userIcon'], 'String'); - } - } - - return obj; - } - }]); - - return InlineObject2; -}(); -/** - * @member {String} email - */ - - -InlineObject2.prototype['email'] = undefined; -/** - * @member {Date} birthday - */ - -InlineObject2.prototype['birthday'] = undefined; -/** - * @member {Number} acceptedTOSVersion - */ - -InlineObject2.prototype['acceptedTOSVersion'] = undefined; -/** - * @member {Array.} tags - */ - -InlineObject2.prototype['tags'] = undefined; -/** - * @member {module:model/UserStatus} status - */ - -InlineObject2.prototype['status'] = undefined; -/** - * @member {String} statusDescription - */ - -InlineObject2.prototype['statusDescription'] = undefined; -/** - * @member {String} bio - */ - -InlineObject2.prototype['bio'] = undefined; -/** - * @member {Array.} bioLinks - */ - -InlineObject2.prototype['bioLinks'] = undefined; -/** - * MUST be a valid VRChat /file/ url. - * @member {String} userIcon - */ - -InlineObject2.prototype['userIcon'] = undefined; -var _default = InlineObject2; -exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/InlineObject3.js b/dist/model/InlineObject3.js deleted file mode 100644 index 2308677..0000000 --- a/dist/model/InlineObject3.js +++ /dev/null @@ -1,111 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; - -var _ApiClient = _interopRequireDefault(require("../ApiClient")); - -var _MIMEType = _interopRequireDefault(require("./MIMEType")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -/** - * The InlineObject3 model module. - * @module model/InlineObject3 - * @version 1.0.0 - */ -var InlineObject3 = /*#__PURE__*/function () { - /** - * Constructs a new InlineObject3. - * @alias module:model/InlineObject3 - * @param name {String} - * @param mimeType {module:model/MIMEType} - * @param extension {String} - */ - function InlineObject3(name, mimeType, extension) { - _classCallCheck(this, InlineObject3); - - InlineObject3.initialize(this, name, mimeType, extension); - } - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - - - _createClass(InlineObject3, null, [{ - key: "initialize", - value: function initialize(obj, name, mimeType, extension) { - obj['name'] = name; - obj['mimeType'] = mimeType; - obj['extension'] = extension; - } - /** - * Constructs a InlineObject3 from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/InlineObject3} obj Optional instance to populate. - * @return {module:model/InlineObject3} The populated InlineObject3 instance. - */ - - }, { - key: "constructFromObject", - value: function constructFromObject(data, obj) { - if (data) { - obj = obj || new InlineObject3(); - - if (data.hasOwnProperty('name')) { - obj['name'] = _ApiClient["default"].convertToType(data['name'], 'String'); - } - - if (data.hasOwnProperty('mimeType')) { - obj['mimeType'] = _MIMEType["default"].constructFromObject(data['mimeType']); - } - - if (data.hasOwnProperty('extension')) { - obj['extension'] = _ApiClient["default"].convertToType(data['extension'], 'String'); - } - - if (data.hasOwnProperty('tags')) { - obj['tags'] = _ApiClient["default"].convertToType(data['tags'], ['String']); - } - } - - return obj; - } - }]); - - return InlineObject3; -}(); -/** - * @member {String} name - */ - - -InlineObject3.prototype['name'] = undefined; -/** - * @member {module:model/MIMEType} mimeType - */ - -InlineObject3.prototype['mimeType'] = undefined; -/** - * @member {String} extension - */ - -InlineObject3.prototype['extension'] = undefined; -/** - * @member {Array.} tags - */ - -InlineObject3.prototype['tags'] = undefined; -var _default = InlineObject3; -exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/InlineObject4.js b/dist/model/InlineObject4.js deleted file mode 100644 index 78526a8..0000000 --- a/dist/model/InlineObject4.js +++ /dev/null @@ -1,129 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; - -var _ApiClient = _interopRequireDefault(require("../ApiClient")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -/** - * The InlineObject4 model module. - * @module model/InlineObject4 - * @version 1.0.0 - */ -var InlineObject4 = /*#__PURE__*/function () { - /** - * Constructs a new InlineObject4. - * @alias module:model/InlineObject4 - * @param nextPartNumber {module:model/InlineObject4.NextPartNumberEnum} Always a zero in string form, despite how many parts uploaded. - * @param maxParts {module:model/InlineObject4.MaxPartsEnum} Always a zero in string form, despite how many parts uploaded. - */ - function InlineObject4(nextPartNumber, maxParts) { - _classCallCheck(this, InlineObject4); - - InlineObject4.initialize(this, nextPartNumber, maxParts); - } - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - - - _createClass(InlineObject4, null, [{ - key: "initialize", - value: function initialize(obj, nextPartNumber, maxParts) { - obj['nextPartNumber'] = nextPartNumber || '0'; - obj['maxParts'] = maxParts || '0'; - } - /** - * Constructs a InlineObject4 from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/InlineObject4} obj Optional instance to populate. - * @return {module:model/InlineObject4} The populated InlineObject4 instance. - */ - - }, { - key: "constructFromObject", - value: function constructFromObject(data, obj) { - if (data) { - obj = obj || new InlineObject4(); - - if (data.hasOwnProperty('etags')) { - obj['etags'] = _ApiClient["default"].convertToType(data['etags'], ['String']); - } - - if (data.hasOwnProperty('nextPartNumber')) { - obj['nextPartNumber'] = _ApiClient["default"].convertToType(data['nextPartNumber'], 'String'); - } - - if (data.hasOwnProperty('maxParts')) { - obj['maxParts'] = _ApiClient["default"].convertToType(data['maxParts'], 'String'); - } - } - - return obj; - } - }]); - - return InlineObject4; -}(); -/** - * Array of ETags uploaded. - * @member {Array.} etags - */ - - -InlineObject4.prototype['etags'] = undefined; -/** - * Always a zero in string form, despite how many parts uploaded. - * @member {module:model/InlineObject4.NextPartNumberEnum} nextPartNumber - * @default '0' - */ - -InlineObject4.prototype['nextPartNumber'] = '0'; -/** - * Always a zero in string form, despite how many parts uploaded. - * @member {module:model/InlineObject4.MaxPartsEnum} maxParts - * @default '0' - */ - -InlineObject4.prototype['maxParts'] = '0'; -/** - * Allowed values for the nextPartNumber property. - * @enum {String} - * @readonly - */ - -InlineObject4['NextPartNumberEnum'] = { - /** - * value: "0" - * @const - */ - "0": "0" -}; -/** - * Allowed values for the maxParts property. - * @enum {String} - * @readonly - */ - -InlineObject4['MaxPartsEnum'] = { - /** - * value: "0" - * @const - */ - "0": "0" -}; -var _default = InlineObject4; -exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/InlineResponse200.js b/dist/model/InlineResponse200.js deleted file mode 100644 index c6e345e..0000000 --- a/dist/model/InlineResponse200.js +++ /dev/null @@ -1,89 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; - -var _ApiClient = _interopRequireDefault(require("../ApiClient")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -/** - * The InlineResponse200 model module. - * @module model/InlineResponse200 - * @version 1.0.0 - */ -var InlineResponse200 = /*#__PURE__*/function () { - /** - * Constructs a new InlineResponse200. - * @alias module:model/InlineResponse200 - * @param ok {Boolean} - * @param token {String} - */ - function InlineResponse200(ok, token) { - _classCallCheck(this, InlineResponse200); - - InlineResponse200.initialize(this, ok, token); - } - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - - - _createClass(InlineResponse200, null, [{ - key: "initialize", - value: function initialize(obj, ok, token) { - obj['ok'] = ok; - obj['token'] = token; - } - /** - * Constructs a InlineResponse200 from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/InlineResponse200} obj Optional instance to populate. - * @return {module:model/InlineResponse200} The populated InlineResponse200 instance. - */ - - }, { - key: "constructFromObject", - value: function constructFromObject(data, obj) { - if (data) { - obj = obj || new InlineResponse200(); - - if (data.hasOwnProperty('ok')) { - obj['ok'] = _ApiClient["default"].convertToType(data['ok'], 'Boolean'); - } - - if (data.hasOwnProperty('token')) { - obj['token'] = _ApiClient["default"].convertToType(data['token'], 'String'); - } - } - - return obj; - } - }]); - - return InlineResponse200; -}(); -/** - * @member {Boolean} ok - */ - - -InlineResponse200.prototype['ok'] = undefined; -/** - * @member {String} token - */ - -InlineResponse200.prototype['token'] = undefined; -var _default = InlineResponse200; -exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/InlineResponse2001.js b/dist/model/InlineResponse2001.js deleted file mode 100644 index 5e68d38..0000000 --- a/dist/model/InlineResponse2001.js +++ /dev/null @@ -1,78 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; - -var _ApiClient = _interopRequireDefault(require("../ApiClient")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -/** - * The InlineResponse2001 model module. - * @module model/InlineResponse2001 - * @version 1.0.0 - */ -var InlineResponse2001 = /*#__PURE__*/function () { - /** - * Constructs a new InlineResponse2001. - * @alias module:model/InlineResponse2001 - * @param verified {Boolean} - */ - function InlineResponse2001(verified) { - _classCallCheck(this, InlineResponse2001); - - InlineResponse2001.initialize(this, verified); - } - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - - - _createClass(InlineResponse2001, null, [{ - key: "initialize", - value: function initialize(obj, verified) { - obj['verified'] = verified; - } - /** - * Constructs a InlineResponse2001 from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/InlineResponse2001} obj Optional instance to populate. - * @return {module:model/InlineResponse2001} The populated InlineResponse2001 instance. - */ - - }, { - key: "constructFromObject", - value: function constructFromObject(data, obj) { - if (data) { - obj = obj || new InlineResponse2001(); - - if (data.hasOwnProperty('verified')) { - obj['verified'] = _ApiClient["default"].convertToType(data['verified'], 'Boolean'); - } - } - - return obj; - } - }]); - - return InlineResponse2001; -}(); -/** - * @member {Boolean} verified - */ - - -InlineResponse2001.prototype['verified'] = undefined; -var _default = InlineResponse2001; -exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/InlineResponse2002.js b/dist/model/InlineResponse2002.js deleted file mode 100644 index 1032b17..0000000 --- a/dist/model/InlineResponse2002.js +++ /dev/null @@ -1,100 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; - -var _ApiClient = _interopRequireDefault(require("../ApiClient")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -/** - * The InlineResponse2002 model module. - * @module model/InlineResponse2002 - * @version 1.0.0 - */ -var InlineResponse2002 = /*#__PURE__*/function () { - /** - * Constructs a new InlineResponse2002. - * @alias module:model/InlineResponse2002 - * @param ok {Boolean} - * @param serverName {String} - * @param buildVersionTag {String} - */ - function InlineResponse2002(ok, serverName, buildVersionTag) { - _classCallCheck(this, InlineResponse2002); - - InlineResponse2002.initialize(this, ok, serverName, buildVersionTag); - } - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - - - _createClass(InlineResponse2002, null, [{ - key: "initialize", - value: function initialize(obj, ok, serverName, buildVersionTag) { - obj['ok'] = ok; - obj['serverName'] = serverName; - obj['buildVersionTag'] = buildVersionTag; - } - /** - * Constructs a InlineResponse2002 from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/InlineResponse2002} obj Optional instance to populate. - * @return {module:model/InlineResponse2002} The populated InlineResponse2002 instance. - */ - - }, { - key: "constructFromObject", - value: function constructFromObject(data, obj) { - if (data) { - obj = obj || new InlineResponse2002(); - - if (data.hasOwnProperty('ok')) { - obj['ok'] = _ApiClient["default"].convertToType(data['ok'], 'Boolean'); - } - - if (data.hasOwnProperty('serverName')) { - obj['serverName'] = _ApiClient["default"].convertToType(data['serverName'], 'String'); - } - - if (data.hasOwnProperty('buildVersionTag')) { - obj['buildVersionTag'] = _ApiClient["default"].convertToType(data['buildVersionTag'], 'String'); - } - } - - return obj; - } - }]); - - return InlineResponse2002; -}(); -/** - * @member {Boolean} ok - */ - - -InlineResponse2002.prototype['ok'] = undefined; -/** - * @member {String} serverName - */ - -InlineResponse2002.prototype['serverName'] = undefined; -/** - * @member {String} buildVersionTag - */ - -InlineResponse2002.prototype['buildVersionTag'] = undefined; -var _default = InlineResponse2002; -exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/InlineResponse2003.js b/dist/model/InlineResponse2003.js deleted file mode 100644 index 59754be..0000000 --- a/dist/model/InlineResponse2003.js +++ /dev/null @@ -1,103 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; - -var _ApiClient = _interopRequireDefault(require("../ApiClient")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -/** - * The InlineResponse2003 model module. - * @module model/InlineResponse2003 - * @version 1.0.0 - */ -var InlineResponse2003 = /*#__PURE__*/function () { - /** - * Constructs a new InlineResponse2003. - * @alias module:model/InlineResponse2003 - * @param isFriend {Boolean} - * @param outgoingRequest {Boolean} - * @param incomingRequest {Boolean} - */ - function InlineResponse2003(isFriend, outgoingRequest, incomingRequest) { - _classCallCheck(this, InlineResponse2003); - - InlineResponse2003.initialize(this, isFriend, outgoingRequest, incomingRequest); - } - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - - - _createClass(InlineResponse2003, null, [{ - key: "initialize", - value: function initialize(obj, isFriend, outgoingRequest, incomingRequest) { - obj['isFriend'] = isFriend || false; - obj['outgoingRequest'] = outgoingRequest || false; - obj['incomingRequest'] = incomingRequest || false; - } - /** - * Constructs a InlineResponse2003 from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/InlineResponse2003} obj Optional instance to populate. - * @return {module:model/InlineResponse2003} The populated InlineResponse2003 instance. - */ - - }, { - key: "constructFromObject", - value: function constructFromObject(data, obj) { - if (data) { - obj = obj || new InlineResponse2003(); - - if (data.hasOwnProperty('isFriend')) { - obj['isFriend'] = _ApiClient["default"].convertToType(data['isFriend'], 'Boolean'); - } - - if (data.hasOwnProperty('outgoingRequest')) { - obj['outgoingRequest'] = _ApiClient["default"].convertToType(data['outgoingRequest'], 'Boolean'); - } - - if (data.hasOwnProperty('incomingRequest')) { - obj['incomingRequest'] = _ApiClient["default"].convertToType(data['incomingRequest'], 'Boolean'); - } - } - - return obj; - } - }]); - - return InlineResponse2003; -}(); -/** - * @member {Boolean} isFriend - * @default false - */ - - -InlineResponse2003.prototype['isFriend'] = false; -/** - * @member {Boolean} outgoingRequest - * @default false - */ - -InlineResponse2003.prototype['outgoingRequest'] = false; -/** - * @member {Boolean} incomingRequest - * @default false - */ - -InlineResponse2003.prototype['incomingRequest'] = false; -var _default = InlineResponse2003; -exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/InlineResponse2004.js b/dist/model/InlineResponse2004.js deleted file mode 100644 index 1be7222..0000000 --- a/dist/model/InlineResponse2004.js +++ /dev/null @@ -1,134 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; - -var _ApiClient = _interopRequireDefault(require("../ApiClient")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -/** - * The InlineResponse2004 model module. - * @module model/InlineResponse2004 - * @version 1.0.0 - */ -var InlineResponse2004 = /*#__PURE__*/function () { - /** - * Constructs a new InlineResponse2004. - * @alias module:model/InlineResponse2004 - * @param uploadId {String} - * @param fileName {String} - * @param nextPartNumber {Number} - * @param maxParts {Number} - * @param parts {Array.} - * @param etags {Array.} Unknown - */ - function InlineResponse2004(uploadId, fileName, nextPartNumber, maxParts, parts, etags) { - _classCallCheck(this, InlineResponse2004); - - InlineResponse2004.initialize(this, uploadId, fileName, nextPartNumber, maxParts, parts, etags); - } - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - - - _createClass(InlineResponse2004, null, [{ - key: "initialize", - value: function initialize(obj, uploadId, fileName, nextPartNumber, maxParts, parts, etags) { - obj['uploadId'] = uploadId; - obj['fileName'] = fileName; - obj['nextPartNumber'] = nextPartNumber; - obj['maxParts'] = maxParts; - obj['parts'] = parts; - obj['etags'] = etags; - } - /** - * Constructs a InlineResponse2004 from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/InlineResponse2004} obj Optional instance to populate. - * @return {module:model/InlineResponse2004} The populated InlineResponse2004 instance. - */ - - }, { - key: "constructFromObject", - value: function constructFromObject(data, obj) { - if (data) { - obj = obj || new InlineResponse2004(); - - if (data.hasOwnProperty('uploadId')) { - obj['uploadId'] = _ApiClient["default"].convertToType(data['uploadId'], 'String'); - } - - if (data.hasOwnProperty('fileName')) { - obj['fileName'] = _ApiClient["default"].convertToType(data['fileName'], 'String'); - } - - if (data.hasOwnProperty('nextPartNumber')) { - obj['nextPartNumber'] = _ApiClient["default"].convertToType(data['nextPartNumber'], 'Number'); - } - - if (data.hasOwnProperty('maxParts')) { - obj['maxParts'] = _ApiClient["default"].convertToType(data['maxParts'], 'Number'); - } - - if (data.hasOwnProperty('parts')) { - obj['parts'] = _ApiClient["default"].convertToType(data['parts'], [Object]); - } - - if (data.hasOwnProperty('etags')) { - obj['etags'] = _ApiClient["default"].convertToType(data['etags'], [Object]); - } - } - - return obj; - } - }]); - - return InlineResponse2004; -}(); -/** - * @member {String} uploadId - */ - - -InlineResponse2004.prototype['uploadId'] = undefined; -/** - * @member {String} fileName - */ - -InlineResponse2004.prototype['fileName'] = undefined; -/** - * @member {Number} nextPartNumber - */ - -InlineResponse2004.prototype['nextPartNumber'] = undefined; -/** - * @member {Number} maxParts - */ - -InlineResponse2004.prototype['maxParts'] = undefined; -/** - * @member {Array.} parts - */ - -InlineResponse2004.prototype['parts'] = undefined; -/** - * Unknown - * @member {Array.} etags - */ - -InlineResponse2004.prototype['etags'] = undefined; -var _default = InlineResponse2004; -exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/InlineResponse2005.js b/dist/model/InlineResponse2005.js deleted file mode 100644 index fee3f03..0000000 --- a/dist/model/InlineResponse2005.js +++ /dev/null @@ -1,78 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; - -var _ApiClient = _interopRequireDefault(require("../ApiClient")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -/** - * The InlineResponse2005 model module. - * @module model/InlineResponse2005 - * @version 1.0.0 - */ -var InlineResponse2005 = /*#__PURE__*/function () { - /** - * Constructs a new InlineResponse2005. - * @alias module:model/InlineResponse2005 - * @param url {String} - */ - function InlineResponse2005(url) { - _classCallCheck(this, InlineResponse2005); - - InlineResponse2005.initialize(this, url); - } - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - - - _createClass(InlineResponse2005, null, [{ - key: "initialize", - value: function initialize(obj, url) { - obj['url'] = url; - } - /** - * Constructs a InlineResponse2005 from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/InlineResponse2005} obj Optional instance to populate. - * @return {module:model/InlineResponse2005} The populated InlineResponse2005 instance. - */ - - }, { - key: "constructFromObject", - value: function constructFromObject(data, obj) { - if (data) { - obj = obj || new InlineResponse2005(); - - if (data.hasOwnProperty('url')) { - obj['url'] = _ApiClient["default"].convertToType(data['url'], 'String'); - } - } - - return obj; - } - }]); - - return InlineResponse2005; -}(); -/** - * @member {String} url - */ - - -InlineResponse2005.prototype['url'] = undefined; -var _default = InlineResponse2005; -exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/InlineResponse401.js b/dist/model/InlineResponse401.js deleted file mode 100644 index 6a5540a..0000000 --- a/dist/model/InlineResponse401.js +++ /dev/null @@ -1,80 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; - -var _ApiClient = _interopRequireDefault(require("../ApiClient")); - -var _Error = _interopRequireDefault(require("./Error")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -/** - * The InlineResponse401 model module. - * @module model/InlineResponse401 - * @version 1.0.0 - */ -var InlineResponse401 = /*#__PURE__*/function () { - /** - * Constructs a new InlineResponse401. - * @alias module:model/InlineResponse401 - * @param error {module:model/Error} - */ - function InlineResponse401(error) { - _classCallCheck(this, InlineResponse401); - - InlineResponse401.initialize(this, error); - } - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - - - _createClass(InlineResponse401, null, [{ - key: "initialize", - value: function initialize(obj, error) { - obj['error'] = error; - } - /** - * Constructs a InlineResponse401 from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/InlineResponse401} obj Optional instance to populate. - * @return {module:model/InlineResponse401} The populated InlineResponse401 instance. - */ - - }, { - key: "constructFromObject", - value: function constructFromObject(data, obj) { - if (data) { - obj = obj || new InlineResponse401(); - - if (data.hasOwnProperty('error')) { - obj['error'] = _Error["default"].constructFromObject(data['error']); - } - } - - return obj; - } - }]); - - return InlineResponse401; -}(); -/** - * @member {module:model/Error} error - */ - - -InlineResponse401.prototype['error'] = undefined; -var _default = InlineResponse401; -exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/LimitedUser.js b/dist/model/LimitedUser.js deleted file mode 100644 index ae98015..0000000 --- a/dist/model/LimitedUser.js +++ /dev/null @@ -1,246 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; - -var _ApiClient = _interopRequireDefault(require("../ApiClient")); - -var _DeveloperType = _interopRequireDefault(require("./DeveloperType")); - -var _UserStatus = _interopRequireDefault(require("./UserStatus")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -/** - * The LimitedUser model module. - * @module model/LimitedUser - * @version 1.0.0 - */ -var LimitedUser = /*#__PURE__*/function () { - /** - * Constructs a new LimitedUser. - * @alias module:model/LimitedUser - * @param id {String} - * @param username {String} - * @param displayName {String} - * @param userIcon {String} - * @param profilePicOverride {String} - * @param statusDescription {String} - * @param currentAvatarImageUrl {String} - * @param currentAvatarThumbnailImageUrl {String} - * @param fallbackAvatar {String} - * @param developerType {module:model/DeveloperType} - * @param lastPlatform {String} - * @param status {module:model/UserStatus} - * @param isFriend {Boolean} - * @param location {String} - * @param tags {Array.} Always empty - */ - function LimitedUser(id, username, displayName, userIcon, profilePicOverride, statusDescription, currentAvatarImageUrl, currentAvatarThumbnailImageUrl, fallbackAvatar, developerType, lastPlatform, status, isFriend, location, tags) { - _classCallCheck(this, LimitedUser); - - LimitedUser.initialize(this, id, username, displayName, userIcon, profilePicOverride, statusDescription, currentAvatarImageUrl, currentAvatarThumbnailImageUrl, fallbackAvatar, developerType, lastPlatform, status, isFriend, location, tags); - } - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - - - _createClass(LimitedUser, null, [{ - key: "initialize", - value: function initialize(obj, id, username, displayName, userIcon, profilePicOverride, statusDescription, currentAvatarImageUrl, currentAvatarThumbnailImageUrl, fallbackAvatar, developerType, lastPlatform, status, isFriend, location, tags) { - obj['id'] = id; - obj['username'] = username; - obj['displayName'] = displayName; - obj['userIcon'] = userIcon; - obj['profilePicOverride'] = profilePicOverride; - obj['statusDescription'] = statusDescription; - obj['currentAvatarImageUrl'] = currentAvatarImageUrl; - obj['currentAvatarThumbnailImageUrl'] = currentAvatarThumbnailImageUrl; - obj['fallbackAvatar'] = fallbackAvatar; - obj['developerType'] = developerType; - obj['last_platform'] = lastPlatform; - obj['status'] = status; - obj['isFriend'] = isFriend; - obj['location'] = location; - obj['tags'] = tags; - } - /** - * Constructs a LimitedUser from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/LimitedUser} obj Optional instance to populate. - * @return {module:model/LimitedUser} The populated LimitedUser instance. - */ - - }, { - key: "constructFromObject", - value: function constructFromObject(data, obj) { - if (data) { - obj = obj || new LimitedUser(); - - if (data.hasOwnProperty('id')) { - obj['id'] = _ApiClient["default"].convertToType(data['id'], 'String'); - } - - if (data.hasOwnProperty('username')) { - obj['username'] = _ApiClient["default"].convertToType(data['username'], 'String'); - } - - if (data.hasOwnProperty('displayName')) { - obj['displayName'] = _ApiClient["default"].convertToType(data['displayName'], 'String'); - } - - if (data.hasOwnProperty('bio')) { - obj['bio'] = _ApiClient["default"].convertToType(data['bio'], 'String'); - } - - if (data.hasOwnProperty('userIcon')) { - obj['userIcon'] = _ApiClient["default"].convertToType(data['userIcon'], 'String'); - } - - if (data.hasOwnProperty('profilePicOverride')) { - obj['profilePicOverride'] = _ApiClient["default"].convertToType(data['profilePicOverride'], 'String'); - } - - if (data.hasOwnProperty('statusDescription')) { - obj['statusDescription'] = _ApiClient["default"].convertToType(data['statusDescription'], 'String'); - } - - if (data.hasOwnProperty('currentAvatarImageUrl')) { - obj['currentAvatarImageUrl'] = _ApiClient["default"].convertToType(data['currentAvatarImageUrl'], 'String'); - } - - if (data.hasOwnProperty('currentAvatarThumbnailImageUrl')) { - obj['currentAvatarThumbnailImageUrl'] = _ApiClient["default"].convertToType(data['currentAvatarThumbnailImageUrl'], 'String'); - } - - if (data.hasOwnProperty('fallbackAvatar')) { - obj['fallbackAvatar'] = _ApiClient["default"].convertToType(data['fallbackAvatar'], 'String'); - } - - if (data.hasOwnProperty('developerType')) { - obj['developerType'] = _DeveloperType["default"].constructFromObject(data['developerType']); - } - - if (data.hasOwnProperty('last_platform')) { - obj['last_platform'] = _ApiClient["default"].convertToType(data['last_platform'], 'String'); - } - - if (data.hasOwnProperty('status')) { - obj['status'] = _UserStatus["default"].constructFromObject(data['status']); - } - - if (data.hasOwnProperty('isFriend')) { - obj['isFriend'] = _ApiClient["default"].convertToType(data['isFriend'], 'Boolean'); - } - - if (data.hasOwnProperty('location')) { - obj['location'] = _ApiClient["default"].convertToType(data['location'], 'String'); - } - - if (data.hasOwnProperty('tags')) { - obj['tags'] = _ApiClient["default"].convertToType(data['tags'], ['String']); - } - } - - return obj; - } - }]); - - return LimitedUser; -}(); -/** - * @member {String} id - */ - - -LimitedUser.prototype['id'] = undefined; -/** - * @member {String} username - */ - -LimitedUser.prototype['username'] = undefined; -/** - * @member {String} displayName - */ - -LimitedUser.prototype['displayName'] = undefined; -/** - * @member {String} bio - */ - -LimitedUser.prototype['bio'] = undefined; -/** - * @member {String} userIcon - */ - -LimitedUser.prototype['userIcon'] = undefined; -/** - * @member {String} profilePicOverride - */ - -LimitedUser.prototype['profilePicOverride'] = undefined; -/** - * @member {String} statusDescription - */ - -LimitedUser.prototype['statusDescription'] = undefined; -/** - * @member {String} currentAvatarImageUrl - */ - -LimitedUser.prototype['currentAvatarImageUrl'] = undefined; -/** - * @member {String} currentAvatarThumbnailImageUrl - */ - -LimitedUser.prototype['currentAvatarThumbnailImageUrl'] = undefined; -/** - * @member {String} fallbackAvatar - */ - -LimitedUser.prototype['fallbackAvatar'] = undefined; -/** - * @member {module:model/DeveloperType} developerType - */ - -LimitedUser.prototype['developerType'] = undefined; -/** - * @member {String} last_platform - */ - -LimitedUser.prototype['last_platform'] = undefined; -/** - * @member {module:model/UserStatus} status - */ - -LimitedUser.prototype['status'] = undefined; -/** - * @member {Boolean} isFriend - */ - -LimitedUser.prototype['isFriend'] = undefined; -/** - * @member {String} location - */ - -LimitedUser.prototype['location'] = undefined; -/** - * Always empty - * @member {Array.} tags - */ - -LimitedUser.prototype['tags'] = undefined; -var _default = LimitedUser; -exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/LimitedWorld.js b/dist/model/LimitedWorld.js deleted file mode 100644 index 220bbd5..0000000 --- a/dist/model/LimitedWorld.js +++ /dev/null @@ -1,270 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; - -var _ApiClient = _interopRequireDefault(require("../ApiClient")); - -var _ReleaseStatus = _interopRequireDefault(require("./ReleaseStatus")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -/** - * The LimitedWorld model module. - * @module model/LimitedWorld - * @version 1.0.0 - */ -var LimitedWorld = /*#__PURE__*/function () { - /** - * Constructs a new LimitedWorld. - * @alias module:model/LimitedWorld - * @param authorId {String} - * @param authorName {String} - * @param capacity {Number} - * @param favorites {Number} - * @param heat {Number} - * @param id {String} - * @param imageUrl {String} - * @param name {String} - * @param organization {String} - * @param popularity {Number} - * @param publicationDate {String} - * @param releaseStatus {module:model/ReleaseStatus} - * @param tags {Array.} - * @param thumbnailImageUrl {String} - * @param unityPackages {Array.} - */ - function LimitedWorld(authorId, authorName, capacity, favorites, heat, id, imageUrl, name, organization, popularity, publicationDate, releaseStatus, tags, thumbnailImageUrl, unityPackages) { - _classCallCheck(this, LimitedWorld); - - LimitedWorld.initialize(this, authorId, authorName, capacity, favorites, heat, id, imageUrl, name, organization, popularity, publicationDate, releaseStatus, tags, thumbnailImageUrl, unityPackages); - } - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - - - _createClass(LimitedWorld, null, [{ - key: "initialize", - value: function initialize(obj, authorId, authorName, capacity, favorites, heat, id, imageUrl, name, organization, popularity, publicationDate, releaseStatus, tags, thumbnailImageUrl, unityPackages) { - obj['authorId'] = authorId; - obj['authorName'] = authorName; - obj['capacity'] = capacity; - obj['favorites'] = favorites; - obj['heat'] = heat; - obj['id'] = id; - obj['imageUrl'] = imageUrl; - obj['name'] = name; - obj['organization'] = organization; - obj['popularity'] = popularity; - obj['publicationDate'] = publicationDate; - obj['releaseStatus'] = releaseStatus; - obj['tags'] = tags; - obj['thumbnailImageUrl'] = thumbnailImageUrl; - obj['unityPackages'] = unityPackages; - } - /** - * Constructs a LimitedWorld from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/LimitedWorld} obj Optional instance to populate. - * @return {module:model/LimitedWorld} The populated LimitedWorld instance. - */ - - }, { - key: "constructFromObject", - value: function constructFromObject(data, obj) { - if (data) { - obj = obj || new LimitedWorld(); - - if (data.hasOwnProperty('authorId')) { - obj['authorId'] = _ApiClient["default"].convertToType(data['authorId'], 'String'); - } - - if (data.hasOwnProperty('authorName')) { - obj['authorName'] = _ApiClient["default"].convertToType(data['authorName'], 'String'); - } - - if (data.hasOwnProperty('capacity')) { - obj['capacity'] = _ApiClient["default"].convertToType(data['capacity'], 'Number'); - } - - if (data.hasOwnProperty('created_at')) { - obj['created_at'] = _ApiClient["default"].convertToType(data['created_at'], 'Date'); - } - - if (data.hasOwnProperty('favorites')) { - obj['favorites'] = _ApiClient["default"].convertToType(data['favorites'], 'Number'); - } - - if (data.hasOwnProperty('heat')) { - obj['heat'] = _ApiClient["default"].convertToType(data['heat'], 'Number'); - } - - if (data.hasOwnProperty('id')) { - obj['id'] = _ApiClient["default"].convertToType(data['id'], 'String'); - } - - if (data.hasOwnProperty('imageUrl')) { - obj['imageUrl'] = _ApiClient["default"].convertToType(data['imageUrl'], 'String'); - } - - if (data.hasOwnProperty('labsPublicationDate')) { - obj['labsPublicationDate'] = _ApiClient["default"].convertToType(data['labsPublicationDate'], 'String'); - } - - if (data.hasOwnProperty('name')) { - obj['name'] = _ApiClient["default"].convertToType(data['name'], 'String'); - } - - if (data.hasOwnProperty('occupants')) { - obj['occupants'] = _ApiClient["default"].convertToType(data['occupants'], 'Number'); - } - - if (data.hasOwnProperty('organization')) { - obj['organization'] = _ApiClient["default"].convertToType(data['organization'], 'String'); - } - - if (data.hasOwnProperty('popularity')) { - obj['popularity'] = _ApiClient["default"].convertToType(data['popularity'], 'Number'); - } - - if (data.hasOwnProperty('publicationDate')) { - obj['publicationDate'] = _ApiClient["default"].convertToType(data['publicationDate'], 'String'); - } - - if (data.hasOwnProperty('releaseStatus')) { - obj['releaseStatus'] = _ReleaseStatus["default"].constructFromObject(data['releaseStatus']); - } - - if (data.hasOwnProperty('tags')) { - obj['tags'] = _ApiClient["default"].convertToType(data['tags'], ['String']); - } - - if (data.hasOwnProperty('thumbnailImageUrl')) { - obj['thumbnailImageUrl'] = _ApiClient["default"].convertToType(data['thumbnailImageUrl'], 'String'); - } - - if (data.hasOwnProperty('unityPackages')) { - obj['unityPackages'] = _ApiClient["default"].convertToType(data['unityPackages'], [Object]); - } - - if (data.hasOwnProperty('updated_at')) { - obj['updated_at'] = _ApiClient["default"].convertToType(data['updated_at'], 'Date'); - } - } - - return obj; - } - }]); - - return LimitedWorld; -}(); -/** - * @member {String} authorId - */ - - -LimitedWorld.prototype['authorId'] = undefined; -/** - * @member {String} authorName - */ - -LimitedWorld.prototype['authorName'] = undefined; -/** - * @member {Number} capacity - */ - -LimitedWorld.prototype['capacity'] = undefined; -/** - * @member {Date} created_at - */ - -LimitedWorld.prototype['created_at'] = undefined; -/** - * @member {Number} favorites - */ - -LimitedWorld.prototype['favorites'] = undefined; -/** - * @member {Number} heat - */ - -LimitedWorld.prototype['heat'] = undefined; -/** - * @member {String} id - */ - -LimitedWorld.prototype['id'] = undefined; -/** - * @member {String} imageUrl - */ - -LimitedWorld.prototype['imageUrl'] = undefined; -/** - * @member {String} labsPublicationDate - */ - -LimitedWorld.prototype['labsPublicationDate'] = undefined; -/** - * @member {String} name - */ - -LimitedWorld.prototype['name'] = undefined; -/** - * @member {Number} occupants - */ - -LimitedWorld.prototype['occupants'] = undefined; -/** - * @member {String} organization - */ - -LimitedWorld.prototype['organization'] = undefined; -/** - * @member {Number} popularity - */ - -LimitedWorld.prototype['popularity'] = undefined; -/** - * @member {String} publicationDate - */ - -LimitedWorld.prototype['publicationDate'] = undefined; -/** - * @member {module:model/ReleaseStatus} releaseStatus - */ - -LimitedWorld.prototype['releaseStatus'] = undefined; -/** - * @member {Array.} tags - */ - -LimitedWorld.prototype['tags'] = undefined; -/** - * @member {String} thumbnailImageUrl - */ - -LimitedWorld.prototype['thumbnailImageUrl'] = undefined; -/** - * @member {Array.} unityPackages - */ - -LimitedWorld.prototype['unityPackages'] = undefined; -/** - * @member {Date} updated_at - */ - -LimitedWorld.prototype['updated_at'] = undefined; -var _default = LimitedWorld; -exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/MIMEType.js b/dist/model/MIMEType.js deleted file mode 100644 index f3bf744..0000000 --- a/dist/model/MIMEType.js +++ /dev/null @@ -1,74 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; - -var _ApiClient = _interopRequireDefault(require("../ApiClient")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - -/** -* Enum class MIMEType. -* @enum {} -* @readonly -*/ -var MIMEType = /*#__PURE__*/function () { - function MIMEType() { - _classCallCheck(this, MIMEType); - - _defineProperty(this, "image⁄jpeg", "image⁄jpeg"); - - _defineProperty(this, "image⁄jpg", "image⁄jpg"); - - _defineProperty(this, "image⁄png", "image⁄png"); - - _defineProperty(this, "image⁄webp", "image⁄webp"); - - _defineProperty(this, "image⁄gif", "image⁄gif"); - - _defineProperty(this, "image⁄bmp", "image⁄bmp"); - - _defineProperty(this, "image⁄svg+xml", "image⁄svg+xml"); - - _defineProperty(this, "image⁄tiff", "image⁄tiff"); - - _defineProperty(this, "application⁄x-avatar", "application⁄x-avatar"); - - _defineProperty(this, "application⁄x-world", "application⁄x-world"); - - _defineProperty(this, "application⁄gzip", "application⁄gzip"); - - _defineProperty(this, "application/x-rsync-signature", "application/x-rsync-signature"); - - _defineProperty(this, "application/x-rsync-delta", "application/x-rsync-delta"); - - _defineProperty(this, "application/octet-stream", "application/octet-stream"); - } - - _createClass(MIMEType, null, [{ - key: "constructFromObject", - value: - /** - * Returns a MIMEType enum value from a Javascript object name. - * @param {Object} data The plain JavaScript object containing the name of the enum value. - * @return {module:model/MIMEType} The enum MIMEType value. - */ - function constructFromObject(object) { - return object; - } - }]); - - return MIMEType; -}(); - -exports["default"] = MIMEType; \ No newline at end of file diff --git a/dist/model/Notification.js b/dist/model/Notification.js deleted file mode 100644 index 48a2845..0000000 --- a/dist/model/Notification.js +++ /dev/null @@ -1,162 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; - -var _ApiClient = _interopRequireDefault(require("../ApiClient")); - -var _NotificationType = _interopRequireDefault(require("./NotificationType")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -/** - * The Notification model module. - * @module model/Notification - * @version 1.0.0 - */ -var Notification = /*#__PURE__*/function () { - /** - * Constructs a new Notification. - * - * @alias module:model/Notification - * @param id {String} - * @param senderUserId {String} - * @param senderUsername {String} - * @param type {module:model/NotificationType} - * @param message {String} - * @param details {String} **NOTICE:** This is not a JSON object, this is a json **encoded** object, meaning you have to json-de-encode to get the NotificationDetail object depending on the NotificationType. - * @param seen {Boolean} - * @param createdAt {Date} - */ - function Notification(id, senderUserId, senderUsername, type, message, details, seen, createdAt) { - _classCallCheck(this, Notification); - - Notification.initialize(this, id, senderUserId, senderUsername, type, message, details, seen, createdAt); - } - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - - - _createClass(Notification, null, [{ - key: "initialize", - value: function initialize(obj, id, senderUserId, senderUsername, type, message, details, seen, createdAt) { - obj['id'] = id; - obj['senderUserId'] = senderUserId; - obj['senderUsername'] = senderUsername; - obj['type'] = type; - obj['message'] = message; - obj['details'] = details || '{}'; - obj['seen'] = seen || false; - obj['created_at'] = createdAt; - } - /** - * Constructs a Notification from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/Notification} obj Optional instance to populate. - * @return {module:model/Notification} The populated Notification instance. - */ - - }, { - key: "constructFromObject", - value: function constructFromObject(data, obj) { - if (data) { - obj = obj || new Notification(); - - if (data.hasOwnProperty('id')) { - obj['id'] = _ApiClient["default"].convertToType(data['id'], 'String'); - } - - if (data.hasOwnProperty('senderUserId')) { - obj['senderUserId'] = _ApiClient["default"].convertToType(data['senderUserId'], 'String'); - } - - if (data.hasOwnProperty('senderUsername')) { - obj['senderUsername'] = _ApiClient["default"].convertToType(data['senderUsername'], 'String'); - } - - if (data.hasOwnProperty('type')) { - obj['type'] = _NotificationType["default"].constructFromObject(data['type']); - } - - if (data.hasOwnProperty('message')) { - obj['message'] = _ApiClient["default"].convertToType(data['message'], 'String'); - } - - if (data.hasOwnProperty('details')) { - obj['details'] = _ApiClient["default"].convertToType(data['details'], 'String'); - } - - if (data.hasOwnProperty('seen')) { - obj['seen'] = _ApiClient["default"].convertToType(data['seen'], 'Boolean'); - } - - if (data.hasOwnProperty('created_at')) { - obj['created_at'] = _ApiClient["default"].convertToType(data['created_at'], 'Date'); - } - } - - return obj; - } - }]); - - return Notification; -}(); -/** - * @member {String} id - */ - - -Notification.prototype['id'] = undefined; -/** - * @member {String} senderUserId - */ - -Notification.prototype['senderUserId'] = undefined; -/** - * @member {String} senderUsername - */ - -Notification.prototype['senderUsername'] = undefined; -/** - * @member {module:model/NotificationType} type - */ - -Notification.prototype['type'] = undefined; -/** - * - * @member {String} message - */ - -Notification.prototype['message'] = undefined; -/** - * **NOTICE:** This is not a JSON object, this is a json **encoded** object, meaning you have to json-de-encode to get the NotificationDetail object depending on the NotificationType. - * @member {String} details - * @default '{}' - */ - -Notification.prototype['details'] = '{}'; -/** - * @member {Boolean} seen - * @default false - */ - -Notification.prototype['seen'] = false; -/** - * @member {Date} created_at - */ - -Notification.prototype['created_at'] = undefined; -var _default = Notification; -exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/NotificationType.js b/dist/model/NotificationType.js deleted file mode 100644 index 15f9696..0000000 --- a/dist/model/NotificationType.js +++ /dev/null @@ -1,60 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; - -var _ApiClient = _interopRequireDefault(require("../ApiClient")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - -/** -* Enum class NotificationType. -* @enum {} -* @readonly -*/ -var NotificationType = /*#__PURE__*/function () { - function NotificationType() { - _classCallCheck(this, NotificationType); - - _defineProperty(this, "all", "all"); - - _defineProperty(this, "broadcast", "broadcast"); - - _defineProperty(this, "friendRequest", "friendRequest"); - - _defineProperty(this, "invite", "invite"); - - _defineProperty(this, "message", "message"); - - _defineProperty(this, "RequestInvite", "RequestInvite"); - - _defineProperty(this, "votetokick", "votetokick"); - } - - _createClass(NotificationType, null, [{ - key: "constructFromObject", - value: - /** - * Returns a NotificationType enum value from a Javascript object name. - * @param {Object} data The plain JavaScript object containing the name of the enum value. - * @return {module:model/NotificationType} The enum NotificationType value. - */ - function constructFromObject(object) { - return object; - } - }]); - - return NotificationType; -}(); - -exports["default"] = NotificationType; \ No newline at end of file diff --git a/dist/model/ReleaseStatus.js b/dist/model/ReleaseStatus.js deleted file mode 100644 index 55ff796..0000000 --- a/dist/model/ReleaseStatus.js +++ /dev/null @@ -1,52 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; - -var _ApiClient = _interopRequireDefault(require("../ApiClient")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - -/** -* Enum class ReleaseStatus. -* @enum {} -* @readonly -*/ -var ReleaseStatus = /*#__PURE__*/function () { - function ReleaseStatus() { - _classCallCheck(this, ReleaseStatus); - - _defineProperty(this, "public", "public"); - - _defineProperty(this, "private", "private"); - - _defineProperty(this, "hidden", "hidden"); - } - - _createClass(ReleaseStatus, null, [{ - key: "constructFromObject", - value: - /** - * Returns a ReleaseStatus enum value from a Javascript object name. - * @param {Object} data The plain JavaScript object containing the name of the enum value. - * @return {module:model/ReleaseStatus} The enum ReleaseStatus value. - */ - function constructFromObject(object) { - return object; - } - }]); - - return ReleaseStatus; -}(); - -exports["default"] = ReleaseStatus; \ No newline at end of file diff --git a/dist/model/Response.js b/dist/model/Response.js deleted file mode 100644 index 38aeeb1..0000000 --- a/dist/model/Response.js +++ /dev/null @@ -1,89 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; - -var _ApiClient = _interopRequireDefault(require("../ApiClient")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -/** - * The Response model module. - * @module model/Response - * @version 1.0.0 - */ -var Response = /*#__PURE__*/function () { - /** - * Constructs a new Response. - * @alias module:model/Response - * @param message {String} - * @param statusCode {Number} - */ - function Response(message, statusCode) { - _classCallCheck(this, Response); - - Response.initialize(this, message, statusCode); - } - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - - - _createClass(Response, null, [{ - key: "initialize", - value: function initialize(obj, message, statusCode) { - obj['message'] = message; - obj['status_code'] = statusCode; - } - /** - * Constructs a Response from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/Response} obj Optional instance to populate. - * @return {module:model/Response} The populated Response instance. - */ - - }, { - key: "constructFromObject", - value: function constructFromObject(data, obj) { - if (data) { - obj = obj || new Response(); - - if (data.hasOwnProperty('message')) { - obj['message'] = _ApiClient["default"].convertToType(data['message'], 'String'); - } - - if (data.hasOwnProperty('status_code')) { - obj['status_code'] = _ApiClient["default"].convertToType(data['status_code'], 'Number'); - } - } - - return obj; - } - }]); - - return Response; -}(); -/** - * @member {String} message - */ - - -Response.prototype['message'] = undefined; -/** - * @member {Number} status_code - */ - -Response.prototype['status_code'] = undefined; -var _default = Response; -exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/Success.js b/dist/model/Success.js deleted file mode 100644 index f5a8459..0000000 --- a/dist/model/Success.js +++ /dev/null @@ -1,77 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; - -var _ApiClient = _interopRequireDefault(require("../ApiClient")); - -var _Response = _interopRequireDefault(require("./Response")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -/** - * The Success model module. - * @module model/Success - * @version 1.0.0 - */ -var Success = /*#__PURE__*/function () { - /** - * Constructs a new Success. - * @alias module:model/Success - */ - function Success() { - _classCallCheck(this, Success); - - Success.initialize(this); - } - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - - - _createClass(Success, null, [{ - key: "initialize", - value: function initialize(obj) {} - /** - * Constructs a Success from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/Success} obj Optional instance to populate. - * @return {module:model/Success} The populated Success instance. - */ - - }, { - key: "constructFromObject", - value: function constructFromObject(data, obj) { - if (data) { - obj = obj || new Success(); - - if (data.hasOwnProperty('success')) { - obj['success'] = _Response["default"].constructFromObject(data['success']); - } - } - - return obj; - } - }]); - - return Success; -}(); -/** - * @member {module:model/Response} success - */ - - -Success.prototype['success'] = undefined; -var _default = Success; -exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/User.js b/dist/model/User.js deleted file mode 100644 index d0e5f1f..0000000 --- a/dist/model/User.js +++ /dev/null @@ -1,331 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; - -var _ApiClient = _interopRequireDefault(require("../ApiClient")); - -var _DeveloperType = _interopRequireDefault(require("./DeveloperType")); - -var _UserState = _interopRequireDefault(require("./UserState")); - -var _UserStatus = _interopRequireDefault(require("./UserStatus")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -/** - * The User model module. - * @module model/User - * @version 1.0.0 - */ -var User = /*#__PURE__*/function () { - /** - * Constructs a new User. - * @alias module:model/User - * @param id {String} - * @param username {String} - * @param displayName {String} - * @param userIcon {String} - * @param bio {String} - * @param bioLinks {Array.} - * @param profilePicOverride {String} - * @param statusDescription {String} - * @param currentAvatarImageUrl {String} - * @param currentAvatarThumbnailImageUrl {String} - * @param fallbackAvatar {String} - * @param state {module:model/UserState} - * @param tags {Array.} - * @param developerType {module:model/DeveloperType} - * @param lastLogin {Date} - * @param lastPlatform {String} - * @param allowAvatarCopying {Boolean} - * @param status {module:model/UserStatus} - * @param dateJoined {Date} - * @param isFriend {Boolean} - * @param friendKey {String} - */ - function User(id, username, displayName, userIcon, bio, bioLinks, profilePicOverride, statusDescription, currentAvatarImageUrl, currentAvatarThumbnailImageUrl, fallbackAvatar, state, tags, developerType, lastLogin, lastPlatform, allowAvatarCopying, status, dateJoined, isFriend, friendKey) { - _classCallCheck(this, User); - - User.initialize(this, id, username, displayName, userIcon, bio, bioLinks, profilePicOverride, statusDescription, currentAvatarImageUrl, currentAvatarThumbnailImageUrl, fallbackAvatar, state, tags, developerType, lastLogin, lastPlatform, allowAvatarCopying, status, dateJoined, isFriend, friendKey); - } - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - - - _createClass(User, null, [{ - key: "initialize", - value: function initialize(obj, id, username, displayName, userIcon, bio, bioLinks, profilePicOverride, statusDescription, currentAvatarImageUrl, currentAvatarThumbnailImageUrl, fallbackAvatar, state, tags, developerType, lastLogin, lastPlatform, allowAvatarCopying, status, dateJoined, isFriend, friendKey) { - obj['id'] = id; - obj['username'] = username; - obj['displayName'] = displayName; - obj['userIcon'] = userIcon; - obj['bio'] = bio; - obj['bioLinks'] = bioLinks; - obj['profilePicOverride'] = profilePicOverride; - obj['statusDescription'] = statusDescription; - obj['currentAvatarImageUrl'] = currentAvatarImageUrl; - obj['currentAvatarThumbnailImageUrl'] = currentAvatarThumbnailImageUrl; - obj['fallbackAvatar'] = fallbackAvatar; - obj['state'] = state; - obj['tags'] = tags; - obj['developerType'] = developerType; - obj['last_login'] = lastLogin; - obj['last_platform'] = lastPlatform; - obj['allowAvatarCopying'] = allowAvatarCopying; - obj['status'] = status; - obj['date_joined'] = dateJoined; - obj['isFriend'] = isFriend; - obj['friendKey'] = friendKey; - } - /** - * Constructs a User from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/User} obj Optional instance to populate. - * @return {module:model/User} The populated User instance. - */ - - }, { - key: "constructFromObject", - value: function constructFromObject(data, obj) { - if (data) { - obj = obj || new User(); - - if (data.hasOwnProperty('id')) { - obj['id'] = _ApiClient["default"].convertToType(data['id'], 'String'); - } - - if (data.hasOwnProperty('username')) { - obj['username'] = _ApiClient["default"].convertToType(data['username'], 'String'); - } - - if (data.hasOwnProperty('displayName')) { - obj['displayName'] = _ApiClient["default"].convertToType(data['displayName'], 'String'); - } - - if (data.hasOwnProperty('userIcon')) { - obj['userIcon'] = _ApiClient["default"].convertToType(data['userIcon'], 'String'); - } - - if (data.hasOwnProperty('bio')) { - obj['bio'] = _ApiClient["default"].convertToType(data['bio'], 'String'); - } - - if (data.hasOwnProperty('bioLinks')) { - obj['bioLinks'] = _ApiClient["default"].convertToType(data['bioLinks'], ['String']); - } - - if (data.hasOwnProperty('profilePicOverride')) { - obj['profilePicOverride'] = _ApiClient["default"].convertToType(data['profilePicOverride'], 'String'); - } - - if (data.hasOwnProperty('statusDescription')) { - obj['statusDescription'] = _ApiClient["default"].convertToType(data['statusDescription'], 'String'); - } - - if (data.hasOwnProperty('currentAvatarImageUrl')) { - obj['currentAvatarImageUrl'] = _ApiClient["default"].convertToType(data['currentAvatarImageUrl'], 'String'); - } - - if (data.hasOwnProperty('currentAvatarThumbnailImageUrl')) { - obj['currentAvatarThumbnailImageUrl'] = _ApiClient["default"].convertToType(data['currentAvatarThumbnailImageUrl'], 'String'); - } - - if (data.hasOwnProperty('fallbackAvatar')) { - obj['fallbackAvatar'] = _ApiClient["default"].convertToType(data['fallbackAvatar'], 'String'); - } - - if (data.hasOwnProperty('state')) { - obj['state'] = _UserState["default"].constructFromObject(data['state']); - } - - if (data.hasOwnProperty('tags')) { - obj['tags'] = _ApiClient["default"].convertToType(data['tags'], ['String']); - } - - if (data.hasOwnProperty('developerType')) { - obj['developerType'] = _DeveloperType["default"].constructFromObject(data['developerType']); - } - - if (data.hasOwnProperty('last_login')) { - obj['last_login'] = _ApiClient["default"].convertToType(data['last_login'], 'Date'); - } - - if (data.hasOwnProperty('last_platform')) { - obj['last_platform'] = _ApiClient["default"].convertToType(data['last_platform'], 'String'); - } - - if (data.hasOwnProperty('allowAvatarCopying')) { - obj['allowAvatarCopying'] = _ApiClient["default"].convertToType(data['allowAvatarCopying'], 'Boolean'); - } - - if (data.hasOwnProperty('status')) { - obj['status'] = _UserStatus["default"].constructFromObject(data['status']); - } - - if (data.hasOwnProperty('date_joined')) { - obj['date_joined'] = _ApiClient["default"].convertToType(data['date_joined'], 'Date'); - } - - if (data.hasOwnProperty('isFriend')) { - obj['isFriend'] = _ApiClient["default"].convertToType(data['isFriend'], 'Boolean'); - } - - if (data.hasOwnProperty('friendKey')) { - obj['friendKey'] = _ApiClient["default"].convertToType(data['friendKey'], 'String'); - } - - if (data.hasOwnProperty('worldId')) { - obj['worldId'] = _ApiClient["default"].convertToType(data['worldId'], 'String'); - } - - if (data.hasOwnProperty('instanceId')) { - obj['instanceId'] = _ApiClient["default"].convertToType(data['instanceId'], 'String'); - } - - if (data.hasOwnProperty('location')) { - obj['location'] = _ApiClient["default"].convertToType(data['location'], 'String'); - } - } - - return obj; - } - }]); - - return User; -}(); -/** - * @member {String} id - */ - - -User.prototype['id'] = undefined; -/** - * @member {String} username - */ - -User.prototype['username'] = undefined; -/** - * @member {String} displayName - */ - -User.prototype['displayName'] = undefined; -/** - * @member {String} userIcon - */ - -User.prototype['userIcon'] = undefined; -/** - * @member {String} bio - */ - -User.prototype['bio'] = undefined; -/** - * @member {Array.} bioLinks - */ - -User.prototype['bioLinks'] = undefined; -/** - * @member {String} profilePicOverride - */ - -User.prototype['profilePicOverride'] = undefined; -/** - * @member {String} statusDescription - */ - -User.prototype['statusDescription'] = undefined; -/** - * @member {String} currentAvatarImageUrl - */ - -User.prototype['currentAvatarImageUrl'] = undefined; -/** - * @member {String} currentAvatarThumbnailImageUrl - */ - -User.prototype['currentAvatarThumbnailImageUrl'] = undefined; -/** - * @member {String} fallbackAvatar - */ - -User.prototype['fallbackAvatar'] = undefined; -/** - * @member {module:model/UserState} state - */ - -User.prototype['state'] = undefined; -/** - * @member {Array.} tags - */ - -User.prototype['tags'] = undefined; -/** - * @member {module:model/DeveloperType} developerType - */ - -User.prototype['developerType'] = undefined; -/** - * @member {Date} last_login - */ - -User.prototype['last_login'] = undefined; -/** - * @member {String} last_platform - */ - -User.prototype['last_platform'] = undefined; -/** - * @member {Boolean} allowAvatarCopying - */ - -User.prototype['allowAvatarCopying'] = undefined; -/** - * @member {module:model/UserStatus} status - */ - -User.prototype['status'] = undefined; -/** - * @member {Date} date_joined - */ - -User.prototype['date_joined'] = undefined; -/** - * @member {Boolean} isFriend - */ - -User.prototype['isFriend'] = undefined; -/** - * @member {String} friendKey - */ - -User.prototype['friendKey'] = undefined; -/** - * @member {String} worldId - */ - -User.prototype['worldId'] = undefined; -/** - * @member {String} instanceId - */ - -User.prototype['instanceId'] = undefined; -/** - * @member {String} location - */ - -User.prototype['location'] = undefined; -var _default = User; -exports["default"] = _default; \ No newline at end of file diff --git a/dist/model/UserState.js b/dist/model/UserState.js deleted file mode 100644 index 398c6a6..0000000 --- a/dist/model/UserState.js +++ /dev/null @@ -1,52 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; - -var _ApiClient = _interopRequireDefault(require("../ApiClient")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - -/** -* Enum class UserState. -* @enum {} -* @readonly -*/ -var UserState = /*#__PURE__*/function () { - function UserState() { - _classCallCheck(this, UserState); - - _defineProperty(this, "offline", "offline"); - - _defineProperty(this, "active", "active"); - - _defineProperty(this, "online", "online"); - } - - _createClass(UserState, null, [{ - key: "constructFromObject", - value: - /** - * Returns a UserState enum value from a Javascript object name. - * @param {Object} data The plain JavaScript object containing the name of the enum value. - * @return {module:model/UserState} The enum UserState value. - */ - function constructFromObject(object) { - return object; - } - }]); - - return UserState; -}(); - -exports["default"] = UserState; \ No newline at end of file diff --git a/dist/model/UserStatus.js b/dist/model/UserStatus.js deleted file mode 100644 index 526113b..0000000 --- a/dist/model/UserStatus.js +++ /dev/null @@ -1,56 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = void 0; - -var _ApiClient = _interopRequireDefault(require("../ApiClient")); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } - -function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - -/** -* Enum class UserStatus. -* @enum {} -* @readonly -*/ -var UserStatus = /*#__PURE__*/function () { - function UserStatus() { - _classCallCheck(this, UserStatus); - - _defineProperty(this, "active", "active"); - - _defineProperty(this, "join me", "join me"); - - _defineProperty(this, "ask me", "ask me"); - - _defineProperty(this, "busy", "busy"); - - _defineProperty(this, "offline", "offline"); - } - - _createClass(UserStatus, null, [{ - key: "constructFromObject", - value: - /** - * Returns a UserStatus enum value from a Javascript object name. - * @param {Object} data The plain JavaScript object containing the name of the enum value. - * @return {module:model/UserStatus} The enum UserStatus value. - */ - function constructFromObject(object) { - return object; - } - }]); - - return UserStatus; -}(); - -exports["default"] = UserStatus; \ No newline at end of file From 1b3d17508a384f7552740d198924b31d543fb221 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Foorack=20/=20Max=20Fax=C3=A4lv?= Date: Mon, 26 Jul 2021 11:02:56 +0200 Subject: [PATCH 007/130] Add dist to .gitignore and stop openapi-generator from overwriting .gitignore --- .gitignore | 3 +++ .openapi-generator-ignore | 4 ++++ 2 files changed, 7 insertions(+) diff --git a/.gitignore b/.gitignore index e920c16..75b7e98 100644 --- a/.gitignore +++ b/.gitignore @@ -31,3 +31,6 @@ node_modules # Optional REPL history .node_repl_history + +# NPM build output directory +dist \ No newline at end of file diff --git a/.openapi-generator-ignore b/.openapi-generator-ignore index 7484ee5..2b61424 100644 --- a/.openapi-generator-ignore +++ b/.openapi-generator-ignore @@ -21,3 +21,7 @@ #docs/*.md # Then explicitly reverse the ignore rule for a single file: #!docs/README.md + + +# VRChatAPI: Do not modify .gitignore to avoid comitting "dist" +.gitignore From fca09b4eec8c7ad8498c3b63af897306a70c6f79 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Foorack=20/=20Max=20Fax=C3=A4lv?= Date: Mon, 26 Jul 2021 11:03:55 +0200 Subject: [PATCH 008/130] Update FILES --- .openapi-generator/FILES | 1 - 1 file changed, 1 deletion(-) diff --git a/.openapi-generator/FILES b/.openapi-generator/FILES index 857f3c4..f98129f 100644 --- a/.openapi-generator/FILES +++ b/.openapi-generator/FILES @@ -1,5 +1,4 @@ .babelrc -.gitignore .travis.yml README.md docs/AuthenticationApi.md From cd29101f4c9e95872709475255262c62bb46f8ae Mon Sep 17 00:00:00 2001 From: Foorack Date: Fri, 6 Aug 2021 23:42:24 +0200 Subject: [PATCH 009/130] refactor(lang)!: regenerate into typescript for TS support --- .babelrc | 33 - .npmignore | 1 + .openapi-generator/FILES | 141 +- .travis.yml | 5 - README.md | 274 +- api.ts | 4725 +++++++++++++++++++++ src/model/UserStatus.js => base.ts | 98 +- common.ts | 138 + configuration.ts | 101 + docs/AuthenticationApi.md | 310 -- docs/Config.md | 83 - docs/ConfigAnnouncements.md | 10 - docs/ConfigDownloadUrls.md | 11 - docs/ConfigDynamicWorldRows.md | 15 - docs/ConfigEvents.md | 18 - docs/CurrentUser.md | 54 - docs/DeploymentGroup.md | 14 - docs/DeveloperType.md | 14 - docs/Error.md | 9 - docs/File.md | 15 - docs/FileData.md | 28 - docs/FileStatus.md | 12 - docs/FileVersion.md | 15 - docs/FilesApi.md | 560 --- docs/FriendsApi.md | 274 -- docs/InlineObject.md | 9 - docs/InlineObject1.md | 9 - docs/InlineObject2.md | 17 - docs/InlineObject3.md | 12 - docs/InlineObject4.md | 29 - docs/InlineResponse200.md | 10 - docs/InlineResponse2001.md | 9 - docs/InlineResponse2002.md | 11 - docs/InlineResponse2003.md | 11 - docs/InlineResponse2004.md | 14 - docs/InlineResponse2005.md | 9 - docs/InlineResponse401.md | 9 - docs/LimitedUser.md | 24 - docs/LimitedWorld.md | 27 - docs/MIMEType.md | 34 - docs/Notification.md | 16 - docs/NotificationType.md | 20 - docs/NotificationsApi.md | 276 -- docs/ReleaseStatus.md | 12 - docs/Response.md | 10 - docs/Success.md | 9 - docs/SystemApi.md | 172 - docs/User.md | 32 - docs/UserState.md | 12 - docs/UserStatus.md | 16 - docs/UsersApi.md | 288 -- docs/WorldsApi.md | 92 - foorack.js | 9 + generate.sh | 30 +- src/model/UserState.js => index.ts | 43 +- mocha.opts | 1 - package-lock.json | 4209 +----------------- package.json | 55 +- src/ApiClient.js | 692 --- src/api/AuthenticationApi.js | 307 -- src/api/FilesApi.js | 597 --- src/api/FriendsApi.js | 288 -- src/api/NotificationsApi.js | 288 -- src/api/SystemApi.js | 203 - src/api/UsersApi.js | 307 -- src/api/WorldsApi.js | 131 - src/index.js | 356 -- src/model/Config.js | 889 ---- src/model/ConfigAnnouncements.js | 86 - src/model/ConfigDownloadUrls.js | 97 - src/model/ConfigDynamicWorldRows.js | 132 - src/model/ConfigEvents.js | 173 - src/model/CurrentUser.js | 525 --- src/model/DeploymentGroup.js | 60 - src/model/DeveloperType.js | 60 - src/model/Error.js | 72 - src/model/File.js | 137 - src/model/FileData.js | 163 - src/model/FileStatus.js | 53 - src/model/FileVersion.js | 132 - src/model/InlineObject.js | 73 - src/model/InlineObject1.js | 73 - src/model/InlineObject2.js | 137 - src/model/InlineObject3.js | 102 - src/model/InlineObject4.js | 126 - src/model/InlineResponse200.js | 83 - src/model/InlineResponse2001.js | 73 - src/model/InlineResponse2002.js | 93 - src/model/InlineResponse2003.js | 96 - src/model/InlineResponse2004.js | 124 - src/model/InlineResponse2005.js | 73 - src/model/InlineResponse401.js | 74 - src/model/LimitedUser.js | 224 - src/model/LimitedWorld.js | 246 -- src/model/MIMEType.js | 130 - src/model/Notification.js | 149 - src/model/NotificationType.js | 81 - src/model/ReleaseStatus.js | 53 - src/model/Response.js | 83 - src/model/Success.js | 72 - src/model/User.js | 300 -- test/api/AuthenticationApi.spec.js | 113 - test/api/FilesApi.spec.js | 153 - test/api/FriendsApi.spec.js | 103 - test/api/NotificationsApi.spec.js | 103 - test/api/SystemApi.spec.js | 93 - test/api/UsersApi.spec.js | 103 - test/api/WorldsApi.spec.js | 63 - test/model/Config.spec.js | 509 --- test/model/ConfigAnnouncements.spec.js | 71 - test/model/ConfigDownloadUrls.spec.js | 77 - test/model/ConfigDynamicWorldRows.spec.js | 101 - test/model/ConfigEvents.spec.js | 119 - test/model/CurrentUser.spec.js | 335 -- test/model/DeploymentGroup.spec.js | 58 - test/model/DeveloperType.spec.js | 58 - test/model/Error.spec.js | 65 - test/model/File.spec.js | 101 - test/model/FileData.spec.js | 101 - test/model/FileStatus.spec.js | 58 - test/model/FileVersion.spec.js | 101 - test/model/InlineObject.spec.js | 65 - test/model/InlineObject1.spec.js | 65 - test/model/InlineObject2.spec.js | 113 - test/model/InlineObject3.spec.js | 83 - test/model/InlineObject4.spec.js | 77 - test/model/InlineResponse200.spec.js | 71 - test/model/InlineResponse2001.spec.js | 65 - test/model/InlineResponse2002.spec.js | 77 - test/model/InlineResponse2003.spec.js | 77 - test/model/InlineResponse2004.spec.js | 95 - test/model/InlineResponse2005.spec.js | 65 - test/model/InlineResponse401.spec.js | 65 - test/model/LimitedUser.spec.js | 155 - test/model/LimitedWorld.spec.js | 173 - test/model/MIMEType.spec.js | 58 - test/model/Notification.spec.js | 107 - test/model/NotificationType.spec.js | 58 - test/model/ReleaseStatus.spec.js | 58 - test/model/Response.spec.js | 71 - test/model/Success.spec.js | 65 - test/model/User.spec.js | 203 - test/model/UserState.spec.js | 58 - test/model/UserStatus.spec.js | 58 - tsconfig.json | 21 + 145 files changed, 5135 insertions(+), 20060 deletions(-) delete mode 100644 .babelrc create mode 100644 .npmignore delete mode 100644 .travis.yml create mode 100644 api.ts rename src/model/UserStatus.js => base.ts (59%) create mode 100644 common.ts create mode 100644 configuration.ts delete mode 100644 docs/AuthenticationApi.md delete mode 100644 docs/Config.md delete mode 100644 docs/ConfigAnnouncements.md delete mode 100644 docs/ConfigDownloadUrls.md delete mode 100644 docs/ConfigDynamicWorldRows.md delete mode 100644 docs/ConfigEvents.md delete mode 100644 docs/CurrentUser.md delete mode 100644 docs/DeploymentGroup.md delete mode 100644 docs/DeveloperType.md delete mode 100644 docs/Error.md delete mode 100644 docs/File.md delete mode 100644 docs/FileData.md delete mode 100644 docs/FileStatus.md delete mode 100644 docs/FileVersion.md delete mode 100644 docs/FilesApi.md delete mode 100644 docs/FriendsApi.md delete mode 100644 docs/InlineObject.md delete mode 100644 docs/InlineObject1.md delete mode 100644 docs/InlineObject2.md delete mode 100644 docs/InlineObject3.md delete mode 100644 docs/InlineObject4.md delete mode 100644 docs/InlineResponse200.md delete mode 100644 docs/InlineResponse2001.md delete mode 100644 docs/InlineResponse2002.md delete mode 100644 docs/InlineResponse2003.md delete mode 100644 docs/InlineResponse2004.md delete mode 100644 docs/InlineResponse2005.md delete mode 100644 docs/InlineResponse401.md delete mode 100644 docs/LimitedUser.md delete mode 100644 docs/LimitedWorld.md delete mode 100644 docs/MIMEType.md delete mode 100644 docs/Notification.md delete mode 100644 docs/NotificationType.md delete mode 100644 docs/NotificationsApi.md delete mode 100644 docs/ReleaseStatus.md delete mode 100644 docs/Response.md delete mode 100644 docs/Success.md delete mode 100644 docs/SystemApi.md delete mode 100644 docs/User.md delete mode 100644 docs/UserState.md delete mode 100644 docs/UserStatus.md delete mode 100644 docs/UsersApi.md delete mode 100644 docs/WorldsApi.md create mode 100644 foorack.js rename src/model/UserState.js => index.ts (68%) delete mode 100644 mocha.opts delete mode 100644 src/ApiClient.js delete mode 100644 src/api/AuthenticationApi.js delete mode 100644 src/api/FilesApi.js delete mode 100644 src/api/FriendsApi.js delete mode 100644 src/api/NotificationsApi.js delete mode 100644 src/api/SystemApi.js delete mode 100644 src/api/UsersApi.js delete mode 100644 src/api/WorldsApi.js delete mode 100644 src/index.js delete mode 100644 src/model/Config.js delete mode 100644 src/model/ConfigAnnouncements.js delete mode 100644 src/model/ConfigDownloadUrls.js delete mode 100644 src/model/ConfigDynamicWorldRows.js delete mode 100644 src/model/ConfigEvents.js delete mode 100644 src/model/CurrentUser.js delete mode 100644 src/model/DeploymentGroup.js delete mode 100644 src/model/DeveloperType.js delete mode 100644 src/model/Error.js delete mode 100644 src/model/File.js delete mode 100644 src/model/FileData.js delete mode 100644 src/model/FileStatus.js delete mode 100644 src/model/FileVersion.js delete mode 100644 src/model/InlineObject.js delete mode 100644 src/model/InlineObject1.js delete mode 100644 src/model/InlineObject2.js delete mode 100644 src/model/InlineObject3.js delete mode 100644 src/model/InlineObject4.js delete mode 100644 src/model/InlineResponse200.js delete mode 100644 src/model/InlineResponse2001.js delete mode 100644 src/model/InlineResponse2002.js delete mode 100644 src/model/InlineResponse2003.js delete mode 100644 src/model/InlineResponse2004.js delete mode 100644 src/model/InlineResponse2005.js delete mode 100644 src/model/InlineResponse401.js delete mode 100644 src/model/LimitedUser.js delete mode 100644 src/model/LimitedWorld.js delete mode 100644 src/model/MIMEType.js delete mode 100644 src/model/Notification.js delete mode 100644 src/model/NotificationType.js delete mode 100644 src/model/ReleaseStatus.js delete mode 100644 src/model/Response.js delete mode 100644 src/model/Success.js delete mode 100644 src/model/User.js delete mode 100644 test/api/AuthenticationApi.spec.js delete mode 100644 test/api/FilesApi.spec.js delete mode 100644 test/api/FriendsApi.spec.js delete mode 100644 test/api/NotificationsApi.spec.js delete mode 100644 test/api/SystemApi.spec.js delete mode 100644 test/api/UsersApi.spec.js delete mode 100644 test/api/WorldsApi.spec.js delete mode 100644 test/model/Config.spec.js delete mode 100644 test/model/ConfigAnnouncements.spec.js delete mode 100644 test/model/ConfigDownloadUrls.spec.js delete mode 100644 test/model/ConfigDynamicWorldRows.spec.js delete mode 100644 test/model/ConfigEvents.spec.js delete mode 100644 test/model/CurrentUser.spec.js delete mode 100644 test/model/DeploymentGroup.spec.js delete mode 100644 test/model/DeveloperType.spec.js delete mode 100644 test/model/Error.spec.js delete mode 100644 test/model/File.spec.js delete mode 100644 test/model/FileData.spec.js delete mode 100644 test/model/FileStatus.spec.js delete mode 100644 test/model/FileVersion.spec.js delete mode 100644 test/model/InlineObject.spec.js delete mode 100644 test/model/InlineObject1.spec.js delete mode 100644 test/model/InlineObject2.spec.js delete mode 100644 test/model/InlineObject3.spec.js delete mode 100644 test/model/InlineObject4.spec.js delete mode 100644 test/model/InlineResponse200.spec.js delete mode 100644 test/model/InlineResponse2001.spec.js delete mode 100644 test/model/InlineResponse2002.spec.js delete mode 100644 test/model/InlineResponse2003.spec.js delete mode 100644 test/model/InlineResponse2004.spec.js delete mode 100644 test/model/InlineResponse2005.spec.js delete mode 100644 test/model/InlineResponse401.spec.js delete mode 100644 test/model/LimitedUser.spec.js delete mode 100644 test/model/LimitedWorld.spec.js delete mode 100644 test/model/MIMEType.spec.js delete mode 100644 test/model/Notification.spec.js delete mode 100644 test/model/NotificationType.spec.js delete mode 100644 test/model/ReleaseStatus.spec.js delete mode 100644 test/model/Response.spec.js delete mode 100644 test/model/Success.spec.js delete mode 100644 test/model/User.spec.js delete mode 100644 test/model/UserState.spec.js delete mode 100644 test/model/UserStatus.spec.js create mode 100644 tsconfig.json diff --git a/.babelrc b/.babelrc deleted file mode 100644 index c73df9d..0000000 --- a/.babelrc +++ /dev/null @@ -1,33 +0,0 @@ -{ - "presets": [ - "@babel/preset-env" - ], - "plugins": [ - "@babel/plugin-syntax-dynamic-import", - "@babel/plugin-syntax-import-meta", - "@babel/plugin-proposal-class-properties", - "@babel/plugin-proposal-json-strings", - [ - "@babel/plugin-proposal-decorators", - { - "legacy": true - } - ], - "@babel/plugin-proposal-function-sent", - "@babel/plugin-proposal-export-namespace-from", - "@babel/plugin-proposal-numeric-separator", - "@babel/plugin-proposal-throw-expressions", - "@babel/plugin-proposal-export-default-from", - "@babel/plugin-proposal-logical-assignment-operators", - "@babel/plugin-proposal-optional-chaining", - [ - "@babel/plugin-proposal-pipeline-operator", - { - "proposal": "minimal" - } - ], - "@babel/plugin-proposal-nullish-coalescing-operator", - "@babel/plugin-proposal-do-expressions", - "@babel/plugin-proposal-function-bind" - ] -} diff --git a/.npmignore b/.npmignore new file mode 100644 index 0000000..999d88d --- /dev/null +++ b/.npmignore @@ -0,0 +1 @@ +# empty npmignore to ensure all required files (e.g., in the dist folder) are published by npm \ No newline at end of file diff --git a/.openapi-generator/FILES b/.openapi-generator/FILES index f98129f..9892094 100644 --- a/.openapi-generator/FILES +++ b/.openapi-generator/FILES @@ -1,137 +1,10 @@ -.babelrc -.travis.yml +.npmignore README.md -docs/AuthenticationApi.md -docs/Config.md -docs/ConfigAnnouncements.md -docs/ConfigDownloadUrls.md -docs/ConfigDynamicWorldRows.md -docs/ConfigEvents.md -docs/CurrentUser.md -docs/DeploymentGroup.md -docs/DeveloperType.md -docs/Error.md -docs/File.md -docs/FileData.md -docs/FileStatus.md -docs/FileVersion.md -docs/FilesApi.md -docs/FriendsApi.md -docs/InlineObject.md -docs/InlineObject1.md -docs/InlineObject2.md -docs/InlineObject3.md -docs/InlineObject4.md -docs/InlineResponse200.md -docs/InlineResponse2001.md -docs/InlineResponse2002.md -docs/InlineResponse2003.md -docs/InlineResponse2004.md -docs/InlineResponse2005.md -docs/InlineResponse401.md -docs/LimitedUser.md -docs/LimitedWorld.md -docs/MIMEType.md -docs/Notification.md -docs/NotificationType.md -docs/NotificationsApi.md -docs/ReleaseStatus.md -docs/Response.md -docs/Success.md -docs/SystemApi.md -docs/User.md -docs/UserState.md -docs/UserStatus.md -docs/UsersApi.md -docs/WorldsApi.md +api.ts +base.ts +common.ts +configuration.ts git_push.sh -mocha.opts +index.ts package.json -src/ApiClient.js -src/api/AuthenticationApi.js -src/api/FilesApi.js -src/api/FriendsApi.js -src/api/NotificationsApi.js -src/api/SystemApi.js -src/api/UsersApi.js -src/api/WorldsApi.js -src/index.js -src/model/Config.js -src/model/ConfigAnnouncements.js -src/model/ConfigDownloadUrls.js -src/model/ConfigDynamicWorldRows.js -src/model/ConfigEvents.js -src/model/CurrentUser.js -src/model/DeploymentGroup.js -src/model/DeveloperType.js -src/model/Error.js -src/model/File.js -src/model/FileData.js -src/model/FileStatus.js -src/model/FileVersion.js -src/model/InlineObject.js -src/model/InlineObject1.js -src/model/InlineObject2.js -src/model/InlineObject3.js -src/model/InlineObject4.js -src/model/InlineResponse200.js -src/model/InlineResponse2001.js -src/model/InlineResponse2002.js -src/model/InlineResponse2003.js -src/model/InlineResponse2004.js -src/model/InlineResponse2005.js -src/model/InlineResponse401.js -src/model/LimitedUser.js -src/model/LimitedWorld.js -src/model/MIMEType.js -src/model/Notification.js -src/model/NotificationType.js -src/model/ReleaseStatus.js -src/model/Response.js -src/model/Success.js -src/model/User.js -src/model/UserState.js -src/model/UserStatus.js -test/api/AuthenticationApi.spec.js -test/api/FilesApi.spec.js -test/api/FriendsApi.spec.js -test/api/NotificationsApi.spec.js -test/api/SystemApi.spec.js -test/api/UsersApi.spec.js -test/api/WorldsApi.spec.js -test/model/Config.spec.js -test/model/ConfigAnnouncements.spec.js -test/model/ConfigDownloadUrls.spec.js -test/model/ConfigDynamicWorldRows.spec.js -test/model/ConfigEvents.spec.js -test/model/CurrentUser.spec.js -test/model/DeploymentGroup.spec.js -test/model/DeveloperType.spec.js -test/model/Error.spec.js -test/model/File.spec.js -test/model/FileData.spec.js -test/model/FileStatus.spec.js -test/model/FileVersion.spec.js -test/model/InlineObject.spec.js -test/model/InlineObject1.spec.js -test/model/InlineObject2.spec.js -test/model/InlineObject3.spec.js -test/model/InlineObject4.spec.js -test/model/InlineResponse200.spec.js -test/model/InlineResponse2001.spec.js -test/model/InlineResponse2002.spec.js -test/model/InlineResponse2003.spec.js -test/model/InlineResponse2004.spec.js -test/model/InlineResponse2005.spec.js -test/model/InlineResponse401.spec.js -test/model/LimitedUser.spec.js -test/model/LimitedWorld.spec.js -test/model/MIMEType.spec.js -test/model/Notification.spec.js -test/model/NotificationType.spec.js -test/model/ReleaseStatus.spec.js -test/model/Response.spec.js -test/model/Success.spec.js -test/model/User.spec.js -test/model/UserState.spec.js -test/model/UserStatus.spec.js +tsconfig.json diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 0968f7a..0000000 --- a/.travis.yml +++ /dev/null @@ -1,5 +0,0 @@ -language: node_js -cache: npm -node_js: - - "6" - - "6.1" diff --git a/README.md b/README.md index eb68020..a9e68a5 100644 --- a/README.md +++ b/README.md @@ -1,273 +1,45 @@ -# vrchatapi +## vrchatapi@1.0.0 -vrchatapi - JavaScript client for vrchatapi -![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) +This generator creates TypeScript/JavaScript client that utilizes [axios](https://github.com/axios/axios). The generated Node module can be used in the following environments: -# VRChat API Documentation -This project is an [OPEN Open Source Project](https://openopensource.org) +Environment +* Node.js +* Webpack +* Browserify -Individuals making significant and valuable contributions are given -commit-access to the project to contribute as they see fit. This project -is more like an open wiki than a standard guarded open source project. +Language level +* ES5 - you must have a Promises/A+ library installed +* ES6 -## Disclaimer +Module system +* CommonJS +* ES6 module system -This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. +It can be used in both TypeScript and JavaScript. In TypeScript, the definition should be automatically resolved via `package.json`. ([Reference](http://www.typescriptlang.org/docs/handbook/typings-for-npm-packages.html)) -> **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** -> * We do not provide documentation or support for the API. -> * Do not make queries to the API more than once per 60 seconds. -> * Abuse of the API may result in account termination. -> * Access to API endpoints may break at any given time, with no warning. +### Building -As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. - -## Get in touch with us! - -[https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) -This SDK is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project: - -- API version: 1.0.0 -- Package version: 1.0.0 -- Build package: org.openapitools.codegen.languages.JavascriptClientCodegen -For more information, please visit [https://github.com/VRChatAPI](https://github.com/VRChatAPI) - -## Installation - -### For [Node.js](https://nodejs.org/) - -#### npm - -To publish the library as a [npm](https://www.npmjs.com/), please follow the procedure in ["Publishing npm packages"](https://docs.npmjs.com/getting-started/publishing-npm-packages). - -Then install it via: - -```shell -npm install vrchatapi --save +To build and compile the typescript sources to javascript use: ``` - -Finally, you need to build the module: - -```shell -npm run build -``` - -##### Local development - -To use the library locally without publishing to a remote npm registry, first install the dependencies by changing into the directory containing `package.json` (and this README). Let's call this `JAVASCRIPT_CLIENT_DIR`. Then run: - -```shell npm install -``` - -Next, [link](https://docs.npmjs.com/cli/link) it globally in npm with the following, also from `JAVASCRIPT_CLIENT_DIR`: - -```shell -npm link -``` - -To use the link you just defined in your project, switch to the directory you want to use your vrchatapi from, and run: - -```shell -npm link /path/to/ -``` - -Finally, you need to build the module: - -```shell npm run build ``` -#### git +### Publishing -If the library is hosted at a git repository, e.g.https://github.com/vrchatapi/vrchatapi-node -then install it via: +First build the package then run ```npm publish``` -```shell - npm install vrchatapi/vrchatapi-node --save -``` +### Consuming -### For browser +navigate to the folder of your consuming project and run one of the following commands. -The library also works in the browser environment via npm and [browserify](http://browserify.org/). After following -the above steps with Node.js and installing browserify with `npm install -g browserify`, -perform the following (assuming *main.js* is your entry file): +_published:_ -```shell -browserify main.js > bundle.js ``` - -Then include *bundle.js* in the HTML pages. - -### Webpack Configuration - -Using Webpack you may encounter the following error: "Module not found: Error: -Cannot resolve module", most certainly you should disable AMD loader. Add/merge -the following section to your webpack config: - -```javascript -module: { - rules: [ - { - parser: { - amd: false - } - } - ] -} +npm install vrchatapi@1.0.0 --save ``` -## Getting Started - -Please follow the [installation](#installation) instruction and execute the following JS code: - -```javascript -var vrchatapi = require('vrchatapi'); - -var defaultClient = vrchatapi.ApiClient.instance; -// Configure API key authorization: apiKeyCookie -var apiKeyCookie = defaultClient.authentications['apiKeyCookie']; -apiKeyCookie.apiKey = "YOUR API KEY" -// Configure API key authorization: authCookie -var authCookie = defaultClient.authentications['authCookie']; -authCookie.apiKey = "YOUR API KEY" - -var api = new vrchatapi.AuthenticationApi() -var userId = "userId_example"; // {String} -api.getUser(userId).then(function(data) { - console.log('API called successfully. Returned data: ' + data); -}, function(error) { - console.error(error); -}); - +_unPublished (not recommended):_ ``` - -## Documentation for API Endpoints - -All URIs are relative to *https://api.vrchat.cloud/api/1* - -Class | Method | HTTP request | Description ------------- | ------------- | ------------- | ------------- -*vrchatapi.AuthenticationApi* | [**deleteUserById**](docs/AuthenticationApi.md#deleteUserById) | **PUT** /user/{userId}/delete | Delete User -*vrchatapi.AuthenticationApi* | [**getCurrentUser**](docs/AuthenticationApi.md#getCurrentUser) | **GET** /auth/user | Login and/or Get Current User Info -*vrchatapi.AuthenticationApi* | [**logout**](docs/AuthenticationApi.md#logout) | **PUT** /logout | Logout -*vrchatapi.AuthenticationApi* | [**verify2FA**](docs/AuthenticationApi.md#verify2FA) | **POST** /auth/twofactorauth/totp/verify | Verify 2FA code -*vrchatapi.AuthenticationApi* | [**verifyAuthToken**](docs/AuthenticationApi.md#verifyAuthToken) | **GET** /auth | Verify Auth Token -*vrchatapi.AuthenticationApi* | [**verifyRecoveryCode**](docs/AuthenticationApi.md#verifyRecoveryCode) | **POST** /auth/twofactorauth/otp/verify | Verify 2FA code with Recovery code -*vrchatapi.FilesApi* | [**createFile**](docs/FilesApi.md#createFile) | **POST** /file | Create File -*vrchatapi.FilesApi* | [**createFileVersion**](docs/FilesApi.md#createFileVersion) | **POST** /file/{fileId} | Create File Version -*vrchatapi.FilesApi* | [**deleteFile**](docs/FilesApi.md#deleteFile) | **DELETE** /file/{fileId} | Delete File -*vrchatapi.FilesApi* | [**deleteFileVersion**](docs/FilesApi.md#deleteFileVersion) | **DELETE** /file/{fileId}/{versionId} | Delete File Version -*vrchatapi.FilesApi* | [**downloadFileVersion**](docs/FilesApi.md#downloadFileVersion) | **GET** /file/{fileId}/{versionId} | Download File Version -*vrchatapi.FilesApi* | [**finishFileDataUpload**](docs/FilesApi.md#finishFileDataUpload) | **PUT** /file/{fileId}/{versionId}/{fileType}/finish | Finish FileData Upload -*vrchatapi.FilesApi* | [**getFile**](docs/FilesApi.md#getFile) | **GET** /file/{fileId} | Show File -*vrchatapi.FilesApi* | [**getFileDataUploadStatus**](docs/FilesApi.md#getFileDataUploadStatus) | **GET** /file/{fileId}/{versionId}/{fileType}/status | Check FileData Upload Status -*vrchatapi.FilesApi* | [**getFiles**](docs/FilesApi.md#getFiles) | **GET** /files | List Files -*vrchatapi.FilesApi* | [**startFileDataUpload**](docs/FilesApi.md#startFileDataUpload) | **PUT** /file/{fileId}/{versionId}/{fileType}/start | Start FileData Upload -*vrchatapi.FriendsApi* | [**deleteFriendRequest**](docs/FriendsApi.md#deleteFriendRequest) | **DELETE** /user/{userId}/friendRequest | Delete Friend Request -*vrchatapi.FriendsApi* | [**friend**](docs/FriendsApi.md#friend) | **POST** /user/{userId}/friendRequest | Send Friend Request -*vrchatapi.FriendsApi* | [**getFriendStatus**](docs/FriendsApi.md#getFriendStatus) | **GET** /user/{userId}/friendStatus | Check Friend Status -*vrchatapi.FriendsApi* | [**getFriends**](docs/FriendsApi.md#getFriends) | **GET** /auth/user/friends | List Friends -*vrchatapi.FriendsApi* | [**unfriend**](docs/FriendsApi.md#unfriend) | **DELETE** /auth/user/friends/{userId} | Unfriend -*vrchatapi.NotificationsApi* | [**acceptFriendRequest**](docs/NotificationsApi.md#acceptFriendRequest) | **PUT** /auth/user/notifications/{notificationId}/accept | Accept Friend Request -*vrchatapi.NotificationsApi* | [**clearNotifications**](docs/NotificationsApi.md#clearNotifications) | **PUT** /auth/user/notifications/clear | Clear All Notifications -*vrchatapi.NotificationsApi* | [**deleteNotification**](docs/NotificationsApi.md#deleteNotification) | **PUT** /auth/user/notifications/{notificationId}/hide | Delete Notification -*vrchatapi.NotificationsApi* | [**getNotifications**](docs/NotificationsApi.md#getNotifications) | **GET** /auth/user/notifications | List Notifications -*vrchatapi.NotificationsApi* | [**markNotificationAsRead**](docs/NotificationsApi.md#markNotificationAsRead) | **PUT** /auth/user/notifications/{notificationId}/see | Mark As Read -*vrchatapi.SystemApi* | [**getConfig**](docs/SystemApi.md#getConfig) | **GET** /config | Fetch API Config -*vrchatapi.SystemApi* | [**getCurrentOnlineUsers**](docs/SystemApi.md#getCurrentOnlineUsers) | **GET** /visits | Current Online Users -*vrchatapi.SystemApi* | [**getHealth**](docs/SystemApi.md#getHealth) | **GET** /health | Check API Health -*vrchatapi.SystemApi* | [**getSystemTime**](docs/SystemApi.md#getSystemTime) | **GET** /time | Current System Time -*vrchatapi.UsersApi* | [**getUser**](docs/UsersApi.md#getUser) | **GET** /users/{userId} | Get User by ID -*vrchatapi.UsersApi* | [**getUserByName**](docs/UsersApi.md#getUserByName) | **GET** /users/{username}/name | Get User by Username -*vrchatapi.UsersApi* | [**searchActiveUsers**](docs/UsersApi.md#searchActiveUsers) | **GET** /users/active | Search Active Users -*vrchatapi.UsersApi* | [**searchUsers**](docs/UsersApi.md#searchUsers) | **GET** /users | Search All Users -*vrchatapi.UsersApi* | [**updateUser**](docs/UsersApi.md#updateUser) | **PUT** /users/{userId} | Update User Info -*vrchatapi.WorldsApi* | [**searchWorlds**](docs/WorldsApi.md#searchWorlds) | **GET** /worlds | Search all worlds - - -## Documentation for Models - - - [vrchatapi.Config](docs/Config.md) - - [vrchatapi.ConfigAnnouncements](docs/ConfigAnnouncements.md) - - [vrchatapi.ConfigDownloadUrls](docs/ConfigDownloadUrls.md) - - [vrchatapi.ConfigDynamicWorldRows](docs/ConfigDynamicWorldRows.md) - - [vrchatapi.ConfigEvents](docs/ConfigEvents.md) - - [vrchatapi.CurrentUser](docs/CurrentUser.md) - - [vrchatapi.DeploymentGroup](docs/DeploymentGroup.md) - - [vrchatapi.DeveloperType](docs/DeveloperType.md) - - [vrchatapi.Error](docs/Error.md) - - [vrchatapi.File](docs/File.md) - - [vrchatapi.FileData](docs/FileData.md) - - [vrchatapi.FileStatus](docs/FileStatus.md) - - [vrchatapi.FileVersion](docs/FileVersion.md) - - [vrchatapi.InlineObject](docs/InlineObject.md) - - [vrchatapi.InlineObject1](docs/InlineObject1.md) - - [vrchatapi.InlineObject2](docs/InlineObject2.md) - - [vrchatapi.InlineObject3](docs/InlineObject3.md) - - [vrchatapi.InlineObject4](docs/InlineObject4.md) - - [vrchatapi.InlineResponse200](docs/InlineResponse200.md) - - [vrchatapi.InlineResponse2001](docs/InlineResponse2001.md) - - [vrchatapi.InlineResponse2002](docs/InlineResponse2002.md) - - [vrchatapi.InlineResponse2003](docs/InlineResponse2003.md) - - [vrchatapi.InlineResponse2004](docs/InlineResponse2004.md) - - [vrchatapi.InlineResponse2005](docs/InlineResponse2005.md) - - [vrchatapi.InlineResponse401](docs/InlineResponse401.md) - - [vrchatapi.LimitedUser](docs/LimitedUser.md) - - [vrchatapi.LimitedWorld](docs/LimitedWorld.md) - - [vrchatapi.MIMEType](docs/MIMEType.md) - - [vrchatapi.Notification](docs/Notification.md) - - [vrchatapi.NotificationType](docs/NotificationType.md) - - [vrchatapi.ReleaseStatus](docs/ReleaseStatus.md) - - [vrchatapi.Response](docs/Response.md) - - [vrchatapi.Success](docs/Success.md) - - [vrchatapi.User](docs/User.md) - - [vrchatapi.UserState](docs/UserState.md) - - [vrchatapi.UserStatus](docs/UserStatus.md) - - -## Documentation for Authorization - - - -### apiKeyCookie - - -- **Type**: API key -- **API key parameter name**: apiKey -- **Location**: - - - -### apiKeyQuery - - -- **Type**: API key -- **API key parameter name**: apiKey -- **Location**: URL query string - - - -### authCookie - - -- **Type**: API key -- **API key parameter name**: auth -- **Location**: - - - -### authHeader - -- **Type**: HTTP basic authentication - - - -### twoFactorAuthCookie - - -- **Type**: API key -- **API key parameter name**: twoFactorAuth -- **Location**: - +npm install PATH_TO_GENERATED_PACKAGE --save diff --git a/api.ts b/api.ts new file mode 100644 index 0000000..9247420 --- /dev/null +++ b/api.ts @@ -0,0 +1,4725 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +import { Configuration } from './configuration'; +import globalAxios, { AxiosPromise, AxiosInstance } from 'axios'; +// Some imports not used depending on template conditions +// @ts-ignore +import { DUMMY_BASE_URL, assertParamExists, setApiKeyToObject, setBasicAuthToObject, setBearerAuthToObject, setOAuthToObject, setSearchParams, serializeDataIfNeeded, toPathString, createRequestFunction } from './common'; +// @ts-ignore +import { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from './base'; + +/** + * + * @export + * @interface Config + */ +export interface Config { + /** + * VRChat\'s office address + * @type {string} + * @memberof Config + */ + address: string; + /** + * PSA, Public Announcements + * @type {Set} + * @memberof Config + */ + announcements: Set; + /** + * apiKey to be used for all other requests + * @type {string} + * @memberof Config + */ + apiKey: string; + /** + * Game name + * @type {string} + * @memberof Config + * @deprecated + */ + appName: string; + /** + * Build tag of the API server + * @type {string} + * @memberof Config + */ + buildVersionTag: string; + /** + * apiKey to be used for all other requests + * @type {string} + * @memberof Config + */ + clientApiKey: string; + /** + * Unknown + * @type {number} + * @memberof Config + */ + clientBPSCeiling?: number; + /** + * Unknown + * @type {number} + * @memberof Config + */ + clientDisconnectTimeout?: number; + /** + * Unknown + * @type {number} + * @memberof Config + */ + clientReservedPlayerBPS?: number; + /** + * Unknown + * @type {number} + * @memberof Config + */ + clientSentCountAllowance?: number; + /** + * VRChat\'s contact email + * @type {string} + * @memberof Config + */ + contactEmail: string; + /** + * VRChat\'s copyright-issues-related email + * @type {string} + * @memberof Config + */ + copyrightEmail: string; + /** + * Current version number of the Terms of Service + * @type {number} + * @memberof Config + */ + currentTOSVersion: number; + /** + * + * @type {string} + * @memberof Config + */ + defaultAvatar: string; + /** + * + * @type {DeploymentGroup} + * @memberof Config + */ + deploymentGroup: DeploymentGroup; + /** + * Version number for game development build + * @type {string} + * @memberof Config + * @deprecated + */ + devAppVersionStandalone: string; + /** + * Developer Download link + * @type {string} + * @memberof Config + * @deprecated + */ + devDownloadLinkWindows: string; + /** + * Link to download the development SDK, use downloadUrls instead + * @type {string} + * @memberof Config + * @deprecated + */ + devSdkUrl: string; + /** + * Version of the development SDK + * @type {string} + * @memberof Config + * @deprecated + */ + devSdkVersion: string; + /** + * Version number for server development build + * @type {string} + * @memberof Config + * @deprecated + */ + devServerVersionStandalone: string; + /** + * Toggles if copying avatars should be disabled + * @type {boolean} + * @memberof Config + */ + disableAvatarCopying: boolean; + /** + * Toggles if avatar gating should be disabled. Avatar gating restricts uploading of avatars to people with the `system_avatar_access` Tag or `admin_avatar_access` Tag + * @type {boolean} + * @memberof Config + */ + disableAvatarGating: boolean; + /** + * Toggles if the Community Labs should be disabled + * @type {boolean} + * @memberof Config + */ + disableCommunityLabs: boolean; + /** + * Toggles if promotion out of Community Labs should be disabled + * @type {boolean} + * @memberof Config + */ + disableCommunityLabsPromotion: boolean; + /** + * Unknown + * @type {boolean} + * @memberof Config + */ + disableEmail?: boolean; + /** + * Toggles if Analytics should be disabled (this sreportedly not used in the Client) + * @type {boolean} + * @memberof Config + */ + disableEventStream: boolean; + /** + * Toggles if feedback gating should be disabled. Feedback gating restricts submission of feedback (reporting a World or User) to people with the `system_feedback_access` Tag. + * @type {boolean} + * @memberof Config + */ + disableFeedbackGating: boolean; + /** + * Unknown + * @type {boolean} + * @memberof Config + */ + disableHello?: boolean; + /** + * Toggles if new user account registration should be disabled + * @type {boolean} + * @memberof Config + */ + disableRegistration: boolean; + /** + * Toggles if Steam Networking should be disabled. VRChat these days uses Photon Unity Networking (PUN) instead. + * @type {boolean} + * @memberof Config + */ + disableSteamNetworking: boolean; + /** + * Toggles if 2FA should be disabled. + * @type {boolean} + * @memberof Config + * @deprecated + */ + disableTwoFactorAuth: boolean; + /** + * Toggles if Udon should be universally disabled in-game. + * @type {boolean} + * @memberof Config + */ + disableUdon: boolean; + /** + * Toggles if account upgrading \"linking with Steam/Oculus\" should be disabled. + * @type {boolean} + * @memberof Config + */ + disableUpgradeAccount: boolean; + /** + * Download link for game on the Oculus Rift website. + * @type {string} + * @memberof Config + */ + downloadLinkWindows: string; + /** + * + * @type {ConfigDownloadUrls} + * @memberof Config + */ + downloadUrls: ConfigDownloadUrls; + /** + * Array of DynamicWorldRow objects, used by the game to display the list of world rows + * @type {Set} + * @memberof Config + */ + dynamicWorldRows: Set; + /** + * + * @type {ConfigEvents} + * @memberof Config + */ + events: ConfigEvents; + /** + * Unknown + * @type {string} + * @memberof Config + * @deprecated + */ + gearDemoRoomId: string; + /** + * Redirect target if you try to open the base API domain in your browser + * @type {string} + * @memberof Config + */ + homepageRedirectTarget: string; + /** + * + * @type {string} + * @memberof Config + */ + homeWorldId: string; + /** + * + * @type {string} + * @memberof Config + */ + hubWorldId: string; + /** + * VRChat\'s job application email + * @type {string} + * @memberof Config + */ + jobsEmail: string; + /** + * MOTD + * @type {string} + * @memberof Config + * @deprecated + */ + messageOfTheDay: string; + /** + * VRChat\'s moderation related email + * @type {string} + * @memberof Config + */ + moderationEmail: string; + /** + * Unknown + * @type {number} + * @memberof Config + */ + moderationQueryPeriod: number; + /** + * Used in-game to notify a user they aren\'t allowed to select avatars in private worlds + * @type {string} + * @memberof Config + */ + notAllowedToSelectAvatarInPrivateWorldMessage: string; + /** + * Extra [plugin](https://doc.photonengine.com/en-us/server/current/plugins/manual) to run in each instance + * @type {string} + * @memberof Config + */ + plugin: string; + /** + * Version number for game release build + * @type {string} + * @memberof Config + * @deprecated + */ + releaseAppVersionStandalone: string; + /** + * Link to download the release SDK + * @type {string} + * @memberof Config + * @deprecated + */ + releaseSdkUrl: string; + /** + * Version of the release SDK + * @type {string} + * @memberof Config + * @deprecated + */ + releaseSdkVersion: string; + /** + * Version number for server release build + * @type {string} + * @memberof Config + * @deprecated + */ + releaseServerVersionStandalone: string; + /** + * Link to the developer FAQ + * @type {string} + * @memberof Config + */ + sdkDeveloperFaqUrl: string; + /** + * Link to the official VRChat Discord + * @type {string} + * @memberof Config + */ + sdkDiscordUrl: string; + /** + * Used in the SDK to notify a user they aren\'t allowed to upload avatars/worlds yet + * @type {string} + * @memberof Config + */ + sdkNotAllowedToPublishMessage: string; + /** + * Unity version supported by the SDK + * @type {string} + * @memberof Config + */ + sdkUnityVersion: string; + /** + * Server name of the API server currently responding + * @type {string} + * @memberof Config + */ + serverName: string; + /** + * VRChat\'s support email + * @type {string} + * @memberof Config + */ + supportEmail: string; + /** + * + * @type {string} + * @memberof Config + */ + timeOutWorldId: string; + /** + * + * @type {string} + * @memberof Config + */ + tutorialWorldId: string; + /** + * Unknown + * @type {number} + * @memberof Config + */ + updateRateMsMaximum: number; + /** + * Unknown + * @type {number} + * @memberof Config + */ + updateRateMsMinimum: number; + /** + * Unknown + * @type {number} + * @memberof Config + */ + updateRateMsNormal: number; + /** + * Unknown + * @type {number} + * @memberof Config + */ + updateRateMsUdonManual: number; + /** + * Unknown + * @type {number} + * @memberof Config + */ + uploadAnalysisPercent: number; + /** + * List of allowed URLs that bypass the \"Allow untrusted URL\'s\" setting in-game + * @type {Array} + * @memberof Config + */ + urlList: Array; + /** + * Unknown + * @type {boolean} + * @memberof Config + */ + useReliableUdpForVoice: boolean; + /** + * Unknown + * @type {number} + * @memberof Config + */ + userUpdatePeriod: number; + /** + * Unknown + * @type {number} + * @memberof Config + */ + userVerificationDelay: number; + /** + * Unknown + * @type {number} + * @memberof Config + */ + userVerificationRetry: number; + /** + * Unknown + * @type {number} + * @memberof Config + */ + userVerificationTimeout: number; + /** + * Download link for game on the Steam website. + * @type {string} + * @memberof Config + */ + viveWindowsUrl: string; + /** + * List of allowed URLs that are allowed to host avatar assets + * @type {Array} + * @memberof Config + */ + whiteListedAssetUrls: Array; + /** + * Unknown + * @type {number} + * @memberof Config + */ + worldUpdatePeriod: number; + /** + * Currently used youtube-dl.exe hash in SHA-256-delimited format + * @type {string} + * @memberof Config + */ + youtubedl_hash: string; + /** + * Currently used youtube-dl.exe version + * @type {string} + * @memberof Config + */ + youtubedl_version: string; +} +/** + * Public Announcement + * @export + * @interface ConfigAnnouncements + */ +export interface ConfigAnnouncements { + /** + * Announcement name + * @type {string} + * @memberof ConfigAnnouncements + */ + name: string; + /** + * Announcement text + * @type {string} + * @memberof ConfigAnnouncements + */ + text: string; +} +/** + * Download links for various development assets + * @export + * @interface ConfigDownloadUrls + */ +export interface ConfigDownloadUrls { + /** + * Download link for legacy SDK2 + * @type {string} + * @memberof ConfigDownloadUrls + * @deprecated + */ + sdk2: string; + /** + * Download link for SDK3 for Avatars + * @type {string} + * @memberof ConfigDownloadUrls + */ + sdk3_avatars: string; + /** + * Download link for SDK3 for Worlds + * @type {string} + * @memberof ConfigDownloadUrls + */ + sdk3_worlds: string; +} +/** + * + * @export + * @interface ConfigDynamicWorldRows + */ +export interface ConfigDynamicWorldRows { + /** + * + * @type {number} + * @memberof ConfigDynamicWorldRows + */ + index: number; + /** + * + * @type {string} + * @memberof ConfigDynamicWorldRows + */ + name: string; + /** + * + * @type {string} + * @memberof ConfigDynamicWorldRows + */ + platform: string; + /** + * + * @type {string} + * @memberof ConfigDynamicWorldRows + */ + sortHeading: string; + /** + * + * @type {string} + * @memberof ConfigDynamicWorldRows + */ + sortOrder: string; + /** + * + * @type {string} + * @memberof ConfigDynamicWorldRows + */ + sortOwnership: string; + /** + * Tag to filter worlds for this row + * @type {string} + * @memberof ConfigDynamicWorldRows + */ + tag?: string; +} +/** + * + * @export + * @interface ConfigEvents + */ +export interface ConfigEvents { + /** + * Unknown + * @type {number} + * @memberof ConfigEvents + */ + distanceClose: number; + /** + * Unknown + * @type {number} + * @memberof ConfigEvents + */ + distanceFactor: number; + /** + * Unknown + * @type {number} + * @memberof ConfigEvents + */ + distanceFar: number; + /** + * Unknown + * @type {number} + * @memberof ConfigEvents + */ + groupDistance: number; + /** + * Unknown + * @type {number} + * @memberof ConfigEvents + */ + maximumBunchSize: number; + /** + * Unknown + * @type {number} + * @memberof ConfigEvents + */ + notVisibleFactor: number; + /** + * Unknown + * @type {number} + * @memberof ConfigEvents + */ + playerOrderBucketSize: number; + /** + * Unknown + * @type {number} + * @memberof ConfigEvents + */ + playerOrderFactor: number; + /** + * Unknown + * @type {number} + * @memberof ConfigEvents + */ + slowUpdateFactorThreshold: number; + /** + * Unknown + * @type {number} + * @memberof ConfigEvents + */ + viewSegmentLength: number; +} +/** + * + * @export + * @interface CurrentUser + */ +export interface CurrentUser { + /** + * + * @type {string} + * @memberof CurrentUser + */ + id: string; + /** + * + * @type {string} + * @memberof CurrentUser + */ + username: string; + /** + * + * @type {string} + * @memberof CurrentUser + */ + displayName: string; + /** + * + * @type {string} + * @memberof CurrentUser + */ + userIcon: string; + /** + * + * @type {string} + * @memberof CurrentUser + */ + bio: string; + /** + * + * @type {Array} + * @memberof CurrentUser + */ + bioLinks: Array; + /** + * + * @type {string} + * @memberof CurrentUser + */ + profilePicOverride: string; + /** + * + * @type {string} + * @memberof CurrentUser + */ + statusDescription: string; + /** + * + * @type {Array} + * @memberof CurrentUser + */ + pastDisplayNames: Array; + /** + * + * @type {boolean} + * @memberof CurrentUser + */ + hasEmail: boolean; + /** + * + * @type {boolean} + * @memberof CurrentUser + */ + hasPendingEmail: boolean; + /** + * + * @type {string} + * @memberof CurrentUser + */ + obfuscatedEmail: string; + /** + * + * @type {string} + * @memberof CurrentUser + */ + obfuscatedPendingEmail: string; + /** + * + * @type {boolean} + * @memberof CurrentUser + */ + emailVerified: boolean; + /** + * + * @type {boolean} + * @memberof CurrentUser + */ + hasBirthday: boolean; + /** + * + * @type {boolean} + * @memberof CurrentUser + */ + unsubscribe: boolean; + /** + * + * @type {Array} + * @memberof CurrentUser + */ + statusHistory: Array; + /** + * + * @type {boolean} + * @memberof CurrentUser + */ + statusFirstTime: boolean; + /** + * + * @type {Array} + * @memberof CurrentUser + */ + friends: Array; + /** + * + * @type {Array} + * @memberof CurrentUser + */ + friendGroupNames: Array; + /** + * + * @type {string} + * @memberof CurrentUser + */ + currentAvatarImageUrl: string; + /** + * + * @type {string} + * @memberof CurrentUser + */ + currentAvatarThumbnailImageUrl: string; + /** + * + * @type {string} + * @memberof CurrentUser + */ + fallbackAvatar: string; + /** + * + * @type {string} + * @memberof CurrentUser + */ + currentAvatar: string; + /** + * + * @type {string} + * @memberof CurrentUser + */ + currentAvatarAssetUrl: string; + /** + * + * @type {string} + * @memberof CurrentUser + */ + accountDeletionDate?: string; + /** + * + * @type {number} + * @memberof CurrentUser + */ + acceptedTOSVersion: number; + /** + * + * @type {string} + * @memberof CurrentUser + */ + steamId: string; + /** + * + * @type {object} + * @memberof CurrentUser + */ + steamDetails: object; + /** + * + * @type {string} + * @memberof CurrentUser + */ + oculusId: string; + /** + * + * @type {boolean} + * @memberof CurrentUser + */ + hasLoggedInFromClient: boolean; + /** + * + * @type {string} + * @memberof CurrentUser + */ + homeLocation: string; + /** + * + * @type {boolean} + * @memberof CurrentUser + */ + twoFactorAuthEnabled: boolean; + /** + * + * @type {UserState} + * @memberof CurrentUser + */ + state: UserState; + /** + * + * @type {Array} + * @memberof CurrentUser + */ + tags: Array; + /** + * + * @type {DeveloperType} + * @memberof CurrentUser + */ + developerType: DeveloperType; + /** + * + * @type {string} + * @memberof CurrentUser + */ + last_login: string; + /** + * + * @type {string} + * @memberof CurrentUser + */ + last_platform: string; + /** + * + * @type {boolean} + * @memberof CurrentUser + */ + allowAvatarCopying: boolean; + /** + * + * @type {UserStatus} + * @memberof CurrentUser + */ + status: UserStatus; + /** + * + * @type {string} + * @memberof CurrentUser + */ + date_joined: string; + /** + * + * @type {boolean} + * @memberof CurrentUser + */ + isFriend: boolean; + /** + * + * @type {string} + * @memberof CurrentUser + */ + friendKey: string; + /** + * + * @type {Array} + * @memberof CurrentUser + */ + onlineFriends: Array; + /** + * + * @type {Array} + * @memberof CurrentUser + */ + activeFriends: Array; + /** + * + * @type {Array} + * @memberof CurrentUser + */ + offlineFriends: Array; +} +/** + * Used to identify which API deployment cluster is currently responding. `blue` and `green` are used by Production. `grape`and `cherry` are used during Development. [Blue Green Deployment by Martin Fowler](https://martinfowler.com/bliki/BlueGreenDeployment.html) + * @export + * @enum {string} + */ + +export enum DeploymentGroup { + Blue = 'blue', + Green = 'green', + Grape = 'grape', + Cherry = 'cherry' +} + +/** + * \"none\" User is a normal user \"trusted\" Unknown \"internal\" Is a VRChat Developer \"moderator\" Is a VRChat Moderator Staff can hide their developerType at will. + * @export + * @enum {string} + */ + +export enum DeveloperType { + None = 'none', + Trusted = 'trusted', + Internal = 'internal', + Moderator = 'moderator' +} + +/** + * + * @export + * @interface FileData + */ +export interface FileData { + /** + * + * @type {string} + * @memberof FileData + */ + fileName: string; + /** + * + * @type {string} + * @memberof FileData + */ + url: string; + /** + * + * @type {string} + * @memberof FileData + */ + md5: string; + /** + * + * @type {number} + * @memberof FileData + */ + sizeInBytes: number; + /** + * + * @type {FileStatus} + * @memberof FileData + */ + status: FileStatus; + /** + * + * @type {string} + * @memberof FileData + */ + category: FileDataCategoryEnum; + /** + * + * @type {string} + * @memberof FileData + */ + uploadId: string; +} + +/** + * @export + * @enum {string} + */ +export enum FileDataCategoryEnum { + Multipart = 'multipart', + Queued = 'queued', + Simple = 'simple' +} + +/** + * + * @export + * @enum {string} + */ + +export enum FileStatus { + Waiting = 'waiting', + Complete = 'complete', + None = 'none' +} + +/** + * + * @export + * @interface FileVersion + */ +export interface FileVersion { + /** + * Incremental version counter, can only be increased. + * @type {number} + * @memberof FileVersion + */ + version: number; + /** + * + * @type {FileStatus} + * @memberof FileVersion + */ + status: FileStatus; + /** + * + * @type {string} + * @memberof FileVersion + */ + created_at: string; + /** + * + * @type {FileData} + * @memberof FileVersion + */ + file?: FileData; + /** + * + * @type {FileData} + * @memberof FileVersion + */ + delta?: FileData; + /** + * + * @type {FileData} + * @memberof FileVersion + */ + signature?: FileData; + /** + * Usually only present if `true` + * @type {boolean} + * @memberof FileVersion + */ + deleted?: boolean; +} +/** + * + * @export + * @interface InlineObject + */ +export interface InlineObject { + /** + * + * @type {string} + * @memberof InlineObject + */ + code: string; +} +/** + * + * @export + * @interface InlineObject1 + */ +export interface InlineObject1 { + /** + * + * @type {string} + * @memberof InlineObject1 + */ + code: string; +} +/** + * + * @export + * @interface InlineObject2 + */ +export interface InlineObject2 { + /** + * + * @type {string} + * @memberof InlineObject2 + */ + email?: string; + /** + * + * @type {string} + * @memberof InlineObject2 + */ + birthday?: string; + /** + * + * @type {number} + * @memberof InlineObject2 + */ + acceptedTOSVersion?: number; + /** + * + * @type {Array} + * @memberof InlineObject2 + */ + tags?: Array; + /** + * + * @type {UserStatus} + * @memberof InlineObject2 + */ + status?: UserStatus; + /** + * + * @type {string} + * @memberof InlineObject2 + */ + statusDescription?: string; + /** + * + * @type {string} + * @memberof InlineObject2 + */ + bio?: string; + /** + * + * @type {Array} + * @memberof InlineObject2 + */ + bioLinks?: Array; + /** + * MUST be a valid VRChat /file/ url. + * @type {string} + * @memberof InlineObject2 + */ + userIcon?: string; +} +/** + * + * @export + * @interface InlineObject3 + */ +export interface InlineObject3 { + /** + * + * @type {string} + * @memberof InlineObject3 + */ + name: string; + /** + * + * @type {MIMEType} + * @memberof InlineObject3 + */ + mimeType: MIMEType; + /** + * + * @type {string} + * @memberof InlineObject3 + */ + extension: string; + /** + * + * @type {Array} + * @memberof InlineObject3 + */ + tags?: Array; +} +/** + * + * @export + * @interface InlineObject4 + */ +export interface InlineObject4 { + /** + * Array of ETags uploaded. + * @type {Set} + * @memberof InlineObject4 + */ + etags?: Set; + /** + * Always a zero in string form, despite how many parts uploaded. + * @type {string} + * @memberof InlineObject4 + * @deprecated + */ + nextPartNumber: InlineObject4NextPartNumberEnum; + /** + * Always a zero in string form, despite how many parts uploaded. + * @type {string} + * @memberof InlineObject4 + * @deprecated + */ + maxParts: InlineObject4MaxPartsEnum; +} + +/** + * @export + * @enum {string} + */ +export enum InlineObject4NextPartNumberEnum { + _0 = '0' +} +/** + * @export + * @enum {string} + */ +export enum InlineObject4MaxPartsEnum { + _0 = '0' +} + +/** + * + * @export + * @interface InlineResponse200 + */ +export interface InlineResponse200 { + /** + * + * @type {boolean} + * @memberof InlineResponse200 + */ + ok: boolean; + /** + * + * @type {string} + * @memberof InlineResponse200 + */ + token: string; +} +/** + * + * @export + * @interface InlineResponse2001 + */ +export interface InlineResponse2001 { + /** + * + * @type {boolean} + * @memberof InlineResponse2001 + */ + verified: boolean; +} +/** + * + * @export + * @interface InlineResponse2002 + */ +export interface InlineResponse2002 { + /** + * + * @type {boolean} + * @memberof InlineResponse2002 + */ + ok: boolean; + /** + * + * @type {string} + * @memberof InlineResponse2002 + */ + serverName: string; + /** + * + * @type {string} + * @memberof InlineResponse2002 + */ + buildVersionTag: string; +} +/** + * + * @export + * @interface InlineResponse2003 + */ +export interface InlineResponse2003 { + /** + * + * @type {boolean} + * @memberof InlineResponse2003 + */ + isFriend: boolean; + /** + * + * @type {boolean} + * @memberof InlineResponse2003 + */ + outgoingRequest: boolean; + /** + * + * @type {boolean} + * @memberof InlineResponse2003 + */ + incomingRequest: boolean; +} +/** + * + * @export + * @interface InlineResponse2004 + */ +export interface InlineResponse2004 { + /** + * + * @type {string} + * @memberof InlineResponse2004 + */ + uploadId: string; + /** + * + * @type {string} + * @memberof InlineResponse2004 + */ + fileName: string; + /** + * + * @type {number} + * @memberof InlineResponse2004 + */ + nextPartNumber: number; + /** + * + * @type {number} + * @memberof InlineResponse2004 + */ + maxParts: number; + /** + * + * @type {Array} + * @memberof InlineResponse2004 + */ + parts: Array; + /** + * Unknown + * @type {Array} + * @memberof InlineResponse2004 + */ + etags: Array; +} +/** + * + * @export + * @interface InlineResponse2005 + */ +export interface InlineResponse2005 { + /** + * + * @type {string} + * @memberof InlineResponse2005 + */ + url: string; +} +/** + * + * @export + * @interface InlineResponse401 + */ +export interface InlineResponse401 { + /** + * + * @type {Error} + * @memberof InlineResponse401 + */ + error: Error; +} +/** + * + * @export + * @interface LimitedUser + */ +export interface LimitedUser { + /** + * + * @type {string} + * @memberof LimitedUser + */ + id: string; + /** + * + * @type {string} + * @memberof LimitedUser + */ + username: string; + /** + * + * @type {string} + * @memberof LimitedUser + */ + displayName: string; + /** + * + * @type {string} + * @memberof LimitedUser + */ + bio?: string; + /** + * + * @type {string} + * @memberof LimitedUser + */ + userIcon: string; + /** + * + * @type {string} + * @memberof LimitedUser + */ + profilePicOverride: string; + /** + * + * @type {string} + * @memberof LimitedUser + */ + statusDescription: string; + /** + * + * @type {string} + * @memberof LimitedUser + */ + currentAvatarImageUrl: string; + /** + * + * @type {string} + * @memberof LimitedUser + */ + currentAvatarThumbnailImageUrl: string; + /** + * + * @type {string} + * @memberof LimitedUser + */ + fallbackAvatar: string; + /** + * + * @type {DeveloperType} + * @memberof LimitedUser + */ + developerType: DeveloperType; + /** + * + * @type {string} + * @memberof LimitedUser + */ + last_platform: string; + /** + * + * @type {UserStatus} + * @memberof LimitedUser + */ + status: UserStatus; + /** + * + * @type {boolean} + * @memberof LimitedUser + */ + isFriend: boolean; + /** + * + * @type {string} + * @memberof LimitedUser + */ + location: string; + /** + * Always empty + * @type {Array} + * @memberof LimitedUser + */ + tags: Array; +} +/** + * + * @export + * @enum {string} + */ + +export enum MIMEType { + Imagejpeg = 'image⁄jpeg', + Imagejpg = 'image⁄jpg', + Imagepng = 'image⁄png', + Imagewebp = 'image⁄webp', + Imagegif = 'image⁄gif', + Imagebmp = 'image⁄bmp', + Imagesvgxml = 'image⁄svg+xml', + Imagetiff = 'image⁄tiff', + ApplicationxAvatar = 'application⁄x-avatar', + ApplicationxWorld = 'application⁄x-world', + Applicationgzip = 'application⁄gzip', + ApplicationXRsyncSignature = 'application/x-rsync-signature', + ApplicationXRsyncDelta = 'application/x-rsync-delta', + ApplicationOctetStream = 'application/octet-stream' +} + +/** + * + * @export + * @interface ModelError + */ +export interface ModelError { + /** + * + * @type {Response} + * @memberof ModelError + */ + error?: Response; +} +/** + * + * @export + * @interface ModelFile + */ +export interface ModelFile { + /** + * + * @type {string} + * @memberof ModelFile + */ + id: string; + /** + * + * @type {string} + * @memberof ModelFile + */ + name: string; + /** + * + * @type {string} + * @memberof ModelFile + */ + ownerId: string; + /** + * + * @type {MIMEType} + * @memberof ModelFile + */ + mimeType: MIMEType; + /** + * + * @type {string} + * @memberof ModelFile + */ + extension: string; + /** + * + * @type {Array} + * @memberof ModelFile + */ + tags: Array; + /** + * + * @type {Set} + * @memberof ModelFile + */ + versions: Set; +} +/** + * + * @export + * @interface Notification + */ +export interface Notification { + /** + * + * @type {string} + * @memberof Notification + */ + id: string; + /** + * + * @type {string} + * @memberof Notification + */ + senderUserId: string; + /** + * + * @type {string} + * @memberof Notification + */ + senderUsername: string; + /** + * + * @type {NotificationType} + * @memberof Notification + */ + type: NotificationType; + /** + * + * @type {string} + * @memberof Notification + */ + message: string; + /** + * **NOTICE:** This is not a JSON object, this is a json **encoded** object, meaning you have to json-de-encode to get the NotificationDetail object depending on the NotificationType. + * @type {string} + * @memberof Notification + */ + details: string; + /** + * + * @type {boolean} + * @memberof Notification + */ + seen: boolean; + /** + * + * @type {string} + * @memberof Notification + */ + created_at: string; +} +/** + * + * @export + * @enum {string} + */ + +export enum NotificationType { + All = 'all', + Broadcast = 'broadcast', + FriendRequest = 'friendRequest', + Invite = 'invite', + Message = 'message', + RequestInvite = 'RequestInvite', + Votetokick = 'votetokick' +} + +/** + * + * @export + * @interface Response + */ +export interface Response { + /** + * + * @type {string} + * @memberof Response + */ + message: string; + /** + * + * @type {number} + * @memberof Response + */ + status_code: number; +} +/** + * + * @export + * @interface Success + */ +export interface Success { + /** + * + * @type {Response} + * @memberof Success + */ + success?: Response; +} +/** + * + * @export + * @interface User + */ +export interface User { + /** + * + * @type {string} + * @memberof User + */ + id: string; + /** + * + * @type {string} + * @memberof User + */ + username: string; + /** + * + * @type {string} + * @memberof User + */ + displayName: string; + /** + * + * @type {string} + * @memberof User + */ + userIcon: string; + /** + * + * @type {string} + * @memberof User + */ + bio: string; + /** + * + * @type {Array} + * @memberof User + */ + bioLinks: Array; + /** + * + * @type {string} + * @memberof User + */ + profilePicOverride: string; + /** + * + * @type {string} + * @memberof User + */ + statusDescription: string; + /** + * + * @type {string} + * @memberof User + */ + currentAvatarImageUrl: string; + /** + * + * @type {string} + * @memberof User + */ + currentAvatarThumbnailImageUrl: string; + /** + * + * @type {string} + * @memberof User + */ + fallbackAvatar: string; + /** + * + * @type {UserState} + * @memberof User + */ + state: UserState; + /** + * + * @type {Array} + * @memberof User + */ + tags: Array; + /** + * + * @type {DeveloperType} + * @memberof User + */ + developerType: DeveloperType; + /** + * + * @type {string} + * @memberof User + */ + last_login: string; + /** + * + * @type {string} + * @memberof User + */ + last_platform: string; + /** + * + * @type {boolean} + * @memberof User + */ + allowAvatarCopying: boolean; + /** + * + * @type {UserStatus} + * @memberof User + */ + status: UserStatus; + /** + * + * @type {string} + * @memberof User + */ + date_joined: string; + /** + * + * @type {boolean} + * @memberof User + */ + isFriend: boolean; + /** + * + * @type {string} + * @memberof User + */ + friendKey: string; + /** + * + * @type {string} + * @memberof User + */ + worldId: string; + /** + * + * @type {string} + * @memberof User + */ + instanceId: string; + /** + * + * @type {string} + * @memberof User + */ + location: string; +} +/** + * * \"online\" User is online in VRChat * \"active\" User is online, but not in VRChat * \"offline\" User is offline + * @export + * @enum {string} + */ + +export enum UserState { + Offline = 'offline', + Active = 'active', + Online = 'online' +} + +/** + * Defines the User\'s current status, for example \"ask me\", \"join me\" or \"offline. This status is a combined indicator of their online activity and privacy preference. + * @export + * @enum {string} + */ + +export enum UserStatus { + Active = 'active', + JoinMe = 'join me', + AskMe = 'ask me', + Busy = 'busy', + Offline = 'offline' +} + + +/** + * AuthenticationApi - axios parameter creator + * @export + */ +export const AuthenticationApiAxiosParamCreator = function (configuration?: Configuration) { + return { + /** + * Deletes the account with given ID. Normal users only have permission to delete their own account. Account deletion is 14 days from this request, and will be cancelled if you do an authenticated request with the account afterwards. **VRC+ NOTE:** Despite the 14-days cooldown, any VRC+ subscription will be cancelled **immediately**. **METHOD NOTE:** Despite this being a Delete action, the method type required is PUT. + * @summary Delete User + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + deleteUserById: async (userId: string, options: any = {}): Promise => { + // verify required parameter 'userId' is not null or undefined + assertParamExists('deleteUserById', 'userId', userId) + const localVarPath = `/user/{userId}/delete` + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Login and/or Get user data from your VRChat account. If `Authorization` header is present then a new login session will be generated, and a new `auth` cookie is returned. **WARNING: Session Limit:** Each authentication with login credentials counts as a separate session, out of which you have a limited amount. Make sure to save and reuse the `auth` cookie whenever you can, and avoid sending the Authorization header unless strictly neccesary. While the exact number of simultaneous open sessions is secret, expect to **very fast** run into the rate-limit and be temporarily blocked from making new sessions until the old ones expire. + * @summary Login and/or Get Current User Info + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getCurrentUser: async (options: any = {}): Promise => { + const localVarPath = `/auth/user`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + // authentication authHeader required + // http basic authentication required + setBasicAuthToObject(localVarRequestOptions, configuration) + + // authentication twoFactorAuthCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Invalidates the auth cookie. + * @summary Logout + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + logout: async (options: any = {}): Promise => { + const localVarPath = `/logout`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Finishes the login sequence with a normal 2FA-generated code for accounts with 2FA-protection enabled. + * @summary Verify 2FA code + * @param {InlineObject} [inlineObject] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + verify2FA: async (inlineObject?: InlineObject, options: any = {}): Promise => { + const localVarPath = `/auth/twofactorauth/totp/verify`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(inlineObject, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Verify whether the currently provided Auth Token is valid. + * @summary Verify Auth Token + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + verifyAuthToken: async (options: any = {}): Promise => { + const localVarPath = `/auth`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Finishes the login sequence with an OTP (One Time Password) recovery code for accounts with 2FA-protection enabled. + * @summary Verify 2FA code with Recovery code + * @param {InlineObject1} [inlineObject1] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + verifyRecoveryCode: async (inlineObject1?: InlineObject1, options: any = {}): Promise => { + const localVarPath = `/auth/twofactorauth/otp/verify`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(inlineObject1, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + } +}; + +/** + * AuthenticationApi - functional programming interface + * @export + */ +export const AuthenticationApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = AuthenticationApiAxiosParamCreator(configuration) + return { + /** + * Deletes the account with given ID. Normal users only have permission to delete their own account. Account deletion is 14 days from this request, and will be cancelled if you do an authenticated request with the account afterwards. **VRC+ NOTE:** Despite the 14-days cooldown, any VRC+ subscription will be cancelled **immediately**. **METHOD NOTE:** Despite this being a Delete action, the method type required is PUT. + * @summary Delete User + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async deleteUserById(userId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.deleteUserById(userId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Login and/or Get user data from your VRChat account. If `Authorization` header is present then a new login session will be generated, and a new `auth` cookie is returned. **WARNING: Session Limit:** Each authentication with login credentials counts as a separate session, out of which you have a limited amount. Make sure to save and reuse the `auth` cookie whenever you can, and avoid sending the Authorization header unless strictly neccesary. While the exact number of simultaneous open sessions is secret, expect to **very fast** run into the rate-limit and be temporarily blocked from making new sessions until the old ones expire. + * @summary Login and/or Get Current User Info + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getCurrentUser(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getCurrentUser(options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Invalidates the auth cookie. + * @summary Logout + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async logout(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.logout(options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Finishes the login sequence with a normal 2FA-generated code for accounts with 2FA-protection enabled. + * @summary Verify 2FA code + * @param {InlineObject} [inlineObject] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async verify2FA(inlineObject?: InlineObject, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.verify2FA(inlineObject, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Verify whether the currently provided Auth Token is valid. + * @summary Verify Auth Token + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async verifyAuthToken(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.verifyAuthToken(options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Finishes the login sequence with an OTP (One Time Password) recovery code for accounts with 2FA-protection enabled. + * @summary Verify 2FA code with Recovery code + * @param {InlineObject1} [inlineObject1] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async verifyRecoveryCode(inlineObject1?: InlineObject1, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.verifyRecoveryCode(inlineObject1, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + } +}; + +/** + * AuthenticationApi - factory interface + * @export + */ +export const AuthenticationApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = AuthenticationApiFp(configuration) + return { + /** + * Deletes the account with given ID. Normal users only have permission to delete their own account. Account deletion is 14 days from this request, and will be cancelled if you do an authenticated request with the account afterwards. **VRC+ NOTE:** Despite the 14-days cooldown, any VRC+ subscription will be cancelled **immediately**. **METHOD NOTE:** Despite this being a Delete action, the method type required is PUT. + * @summary Delete User + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + deleteUserById(userId: string, options?: any): AxiosPromise { + return localVarFp.deleteUserById(userId, options).then((request) => request(axios, basePath)); + }, + /** + * Login and/or Get user data from your VRChat account. If `Authorization` header is present then a new login session will be generated, and a new `auth` cookie is returned. **WARNING: Session Limit:** Each authentication with login credentials counts as a separate session, out of which you have a limited amount. Make sure to save and reuse the `auth` cookie whenever you can, and avoid sending the Authorization header unless strictly neccesary. While the exact number of simultaneous open sessions is secret, expect to **very fast** run into the rate-limit and be temporarily blocked from making new sessions until the old ones expire. + * @summary Login and/or Get Current User Info + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getCurrentUser(options?: any): AxiosPromise { + return localVarFp.getCurrentUser(options).then((request) => request(axios, basePath)); + }, + /** + * Invalidates the auth cookie. + * @summary Logout + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + logout(options?: any): AxiosPromise { + return localVarFp.logout(options).then((request) => request(axios, basePath)); + }, + /** + * Finishes the login sequence with a normal 2FA-generated code for accounts with 2FA-protection enabled. + * @summary Verify 2FA code + * @param {InlineObject} [inlineObject] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + verify2FA(inlineObject?: InlineObject, options?: any): AxiosPromise { + return localVarFp.verify2FA(inlineObject, options).then((request) => request(axios, basePath)); + }, + /** + * Verify whether the currently provided Auth Token is valid. + * @summary Verify Auth Token + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + verifyAuthToken(options?: any): AxiosPromise { + return localVarFp.verifyAuthToken(options).then((request) => request(axios, basePath)); + }, + /** + * Finishes the login sequence with an OTP (One Time Password) recovery code for accounts with 2FA-protection enabled. + * @summary Verify 2FA code with Recovery code + * @param {InlineObject1} [inlineObject1] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + verifyRecoveryCode(inlineObject1?: InlineObject1, options?: any): AxiosPromise { + return localVarFp.verifyRecoveryCode(inlineObject1, options).then((request) => request(axios, basePath)); + }, + }; +}; + +/** + * AuthenticationApi - object-oriented interface + * @export + * @class AuthenticationApi + * @extends {BaseAPI} + */ +export class AuthenticationApi extends BaseAPI { + /** + * Deletes the account with given ID. Normal users only have permission to delete their own account. Account deletion is 14 days from this request, and will be cancelled if you do an authenticated request with the account afterwards. **VRC+ NOTE:** Despite the 14-days cooldown, any VRC+ subscription will be cancelled **immediately**. **METHOD NOTE:** Despite this being a Delete action, the method type required is PUT. + * @summary Delete User + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AuthenticationApi + */ + public deleteUserById(userId: string, options?: any) { + return AuthenticationApiFp(this.configuration).deleteUserById(userId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Login and/or Get user data from your VRChat account. If `Authorization` header is present then a new login session will be generated, and a new `auth` cookie is returned. **WARNING: Session Limit:** Each authentication with login credentials counts as a separate session, out of which you have a limited amount. Make sure to save and reuse the `auth` cookie whenever you can, and avoid sending the Authorization header unless strictly neccesary. While the exact number of simultaneous open sessions is secret, expect to **very fast** run into the rate-limit and be temporarily blocked from making new sessions until the old ones expire. + * @summary Login and/or Get Current User Info + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AuthenticationApi + */ + public getCurrentUser(options?: any) { + return AuthenticationApiFp(this.configuration).getCurrentUser(options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Invalidates the auth cookie. + * @summary Logout + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AuthenticationApi + */ + public logout(options?: any) { + return AuthenticationApiFp(this.configuration).logout(options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Finishes the login sequence with a normal 2FA-generated code for accounts with 2FA-protection enabled. + * @summary Verify 2FA code + * @param {InlineObject} [inlineObject] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AuthenticationApi + */ + public verify2FA(inlineObject?: InlineObject, options?: any) { + return AuthenticationApiFp(this.configuration).verify2FA(inlineObject, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Verify whether the currently provided Auth Token is valid. + * @summary Verify Auth Token + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AuthenticationApi + */ + public verifyAuthToken(options?: any) { + return AuthenticationApiFp(this.configuration).verifyAuthToken(options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Finishes the login sequence with an OTP (One Time Password) recovery code for accounts with 2FA-protection enabled. + * @summary Verify 2FA code with Recovery code + * @param {InlineObject1} [inlineObject1] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AuthenticationApi + */ + public verifyRecoveryCode(inlineObject1?: InlineObject1, options?: any) { + return AuthenticationApiFp(this.configuration).verifyRecoveryCode(inlineObject1, options).then((request) => request(this.axios, this.basePath)); + } +} + + +/** + * FilesApi - axios parameter creator + * @export + */ +export const FilesApiAxiosParamCreator = function (configuration?: Configuration) { + return { + /** + * Creates a new File object + * @summary Create File + * @param {InlineObject3} [inlineObject3] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + createFile: async (inlineObject3?: InlineObject3, options: any = {}): Promise => { + const localVarPath = `/file`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(inlineObject3, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Creates a new FileVersion. Once a Version has been created, proceed to the `/file/{fileId}/{versionId}/file/start` endpoint to start a file upload. + * @summary Create File Version + * @param {string} fileId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + createFileVersion: async (fileId: string, options: any = {}): Promise => { + // verify required parameter 'fileId' is not null or undefined + assertParamExists('createFileVersion', 'fileId', fileId) + const localVarPath = `/file/{fileId}` + .replace(`{${"fileId"}}`, encodeURIComponent(String(fileId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Deletes a File object. + * @summary Delete File + * @param {string} fileId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + deleteFile: async (fileId: string, options: any = {}): Promise => { + // verify required parameter 'fileId' is not null or undefined + assertParamExists('deleteFile', 'fileId', fileId) + const localVarPath = `/file/{fileId}` + .replace(`{${"fileId"}}`, encodeURIComponent(String(fileId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Delete a specific version of a file. You can only delete the latest version. + * @summary Delete File Version + * @param {string} fileId + * @param {number} versionId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + deleteFileVersion: async (fileId: string, versionId: number, options: any = {}): Promise => { + // verify required parameter 'fileId' is not null or undefined + assertParamExists('deleteFileVersion', 'fileId', fileId) + // verify required parameter 'versionId' is not null or undefined + assertParamExists('deleteFileVersion', 'versionId', versionId) + const localVarPath = `/file/{fileId}/{versionId}` + .replace(`{${"fileId"}}`, encodeURIComponent(String(fileId))) + .replace(`{${"versionId"}}`, encodeURIComponent(String(versionId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Downloads the file with the provided version number. **Version Note:** Version 0 is always when the file was created. The real data is usually always located in version 1 and up. **Extension Note:** Files are not guaranteed to have a file extensions. UnityPackage files tends to have it, images through this endpoint do not. You are responsible for appending file extension from the `extension` field when neccesary. + * @summary Download File Version + * @param {string} fileId + * @param {number} versionId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + downloadFileVersion: async (fileId: string, versionId: number, options: any = {}): Promise => { + // verify required parameter 'fileId' is not null or undefined + assertParamExists('downloadFileVersion', 'fileId', fileId) + // verify required parameter 'versionId' is not null or undefined + assertParamExists('downloadFileVersion', 'versionId', versionId) + const localVarPath = `/file/{fileId}/{versionId}` + .replace(`{${"fileId"}}`, encodeURIComponent(String(fileId))) + .replace(`{${"versionId"}}`, encodeURIComponent(String(versionId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Finish an upload of a FileData. This will mark it as \"complete\". After uploading the `file` for Avatars and Worlds you then have to upload a `signature` file. + * @summary Finish FileData Upload + * @param {string} fileId + * @param {number} versionId + * @param {'file' | 'signature' | 'delta'} fileType + * @param {InlineObject4} [inlineObject4] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + finishFileDataUpload: async (fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', inlineObject4?: InlineObject4, options: any = {}): Promise => { + // verify required parameter 'fileId' is not null or undefined + assertParamExists('finishFileDataUpload', 'fileId', fileId) + // verify required parameter 'versionId' is not null or undefined + assertParamExists('finishFileDataUpload', 'versionId', versionId) + // verify required parameter 'fileType' is not null or undefined + assertParamExists('finishFileDataUpload', 'fileType', fileType) + const localVarPath = `/file/{fileId}/{versionId}/{fileType}/finish` + .replace(`{${"fileId"}}`, encodeURIComponent(String(fileId))) + .replace(`{${"versionId"}}`, encodeURIComponent(String(versionId))) + .replace(`{${"fileType"}}`, encodeURIComponent(String(fileType))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(inlineObject4, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Shows general information about the \"File\" object. Each File can have several \"Version\"\'s, and each Version can have multiple real files or \"Data\" blobs. + * @summary Show File + * @param {string} fileId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFile: async (fileId: string, options: any = {}): Promise => { + // verify required parameter 'fileId' is not null or undefined + assertParamExists('getFile', 'fileId', fileId) + const localVarPath = `/file/{fileId}` + .replace(`{${"fileId"}}`, encodeURIComponent(String(fileId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Retrieves the upload status for file upload. Can currently only be accessed when `status` is `waiting`. Trying to access it on a file version already uploaded currently times out. + * @summary Check FileData Upload Status + * @param {string} fileId + * @param {number} versionId + * @param {'file' | 'signature' | 'delta'} fileType + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFileDataUploadStatus: async (fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', options: any = {}): Promise => { + // verify required parameter 'fileId' is not null or undefined + assertParamExists('getFileDataUploadStatus', 'fileId', fileId) + // verify required parameter 'versionId' is not null or undefined + assertParamExists('getFileDataUploadStatus', 'versionId', versionId) + // verify required parameter 'fileType' is not null or undefined + assertParamExists('getFileDataUploadStatus', 'fileType', fileType) + const localVarPath = `/file/{fileId}/{versionId}/{fileType}/status` + .replace(`{${"fileId"}}`, encodeURIComponent(String(fileId))) + .replace(`{${"versionId"}}`, encodeURIComponent(String(versionId))) + .replace(`{${"fileType"}}`, encodeURIComponent(String(fileType))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Returns a list of files + * @summary List Files + * @param {string} [tag] Tag, for example \"icon\" or \"gallery\", not included by default. + * @param {string} [userId] UserID, will always generate a 500 permission error. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFiles: async (tag?: string, userId?: string, n?: number, offset?: number, options: any = {}): Promise => { + const localVarPath = `/files`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + if (tag !== undefined) { + localVarQueryParameter['tag'] = tag; + } + + if (userId !== undefined) { + localVarQueryParameter['userId'] = userId; + } + + if (n !== undefined) { + localVarQueryParameter['n'] = n; + } + + if (offset !== undefined) { + localVarQueryParameter['offset'] = offset; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Starts an upload of a specific FilePart. This endpoint will return an AWS URL which you can PUT data to. You need to call this and receive a new AWS API URL for each `partNumber`. Please see AWS\'s REST documentation on \"PUT Object to S3\" on how to upload. Once all parts has been uploaded, proceed to `/finish` endpoint. **Note:** `nextPartNumber` seems like it is always ignored. Despite it returning 0, first partNumber is always 1. + * @summary Start FileData Upload + * @param {string} fileId + * @param {number} versionId + * @param {'file' | 'signature' | 'delta'} fileType + * @param {number} partNumber + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + startFileDataUpload: async (fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', partNumber: number, options: any = {}): Promise => { + // verify required parameter 'fileId' is not null or undefined + assertParamExists('startFileDataUpload', 'fileId', fileId) + // verify required parameter 'versionId' is not null or undefined + assertParamExists('startFileDataUpload', 'versionId', versionId) + // verify required parameter 'fileType' is not null or undefined + assertParamExists('startFileDataUpload', 'fileType', fileType) + // verify required parameter 'partNumber' is not null or undefined + assertParamExists('startFileDataUpload', 'partNumber', partNumber) + const localVarPath = `/file/{fileId}/{versionId}/{fileType}/start` + .replace(`{${"fileId"}}`, encodeURIComponent(String(fileId))) + .replace(`{${"versionId"}}`, encodeURIComponent(String(versionId))) + .replace(`{${"fileType"}}`, encodeURIComponent(String(fileType))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + if (partNumber !== undefined) { + localVarQueryParameter['partNumber'] = partNumber; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + } +}; + +/** + * FilesApi - functional programming interface + * @export + */ +export const FilesApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = FilesApiAxiosParamCreator(configuration) + return { + /** + * Creates a new File object + * @summary Create File + * @param {InlineObject3} [inlineObject3] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async createFile(inlineObject3?: InlineObject3, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.createFile(inlineObject3, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Creates a new FileVersion. Once a Version has been created, proceed to the `/file/{fileId}/{versionId}/file/start` endpoint to start a file upload. + * @summary Create File Version + * @param {string} fileId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async createFileVersion(fileId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.createFileVersion(fileId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Deletes a File object. + * @summary Delete File + * @param {string} fileId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async deleteFile(fileId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.deleteFile(fileId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Delete a specific version of a file. You can only delete the latest version. + * @summary Delete File Version + * @param {string} fileId + * @param {number} versionId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async deleteFileVersion(fileId: string, versionId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.deleteFileVersion(fileId, versionId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Downloads the file with the provided version number. **Version Note:** Version 0 is always when the file was created. The real data is usually always located in version 1 and up. **Extension Note:** Files are not guaranteed to have a file extensions. UnityPackage files tends to have it, images through this endpoint do not. You are responsible for appending file extension from the `extension` field when neccesary. + * @summary Download File Version + * @param {string} fileId + * @param {number} versionId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async downloadFileVersion(fileId: string, versionId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.downloadFileVersion(fileId, versionId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Finish an upload of a FileData. This will mark it as \"complete\". After uploading the `file` for Avatars and Worlds you then have to upload a `signature` file. + * @summary Finish FileData Upload + * @param {string} fileId + * @param {number} versionId + * @param {'file' | 'signature' | 'delta'} fileType + * @param {InlineObject4} [inlineObject4] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async finishFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', inlineObject4?: InlineObject4, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.finishFileDataUpload(fileId, versionId, fileType, inlineObject4, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Shows general information about the \"File\" object. Each File can have several \"Version\"\'s, and each Version can have multiple real files or \"Data\" blobs. + * @summary Show File + * @param {string} fileId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getFile(fileId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getFile(fileId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Retrieves the upload status for file upload. Can currently only be accessed when `status` is `waiting`. Trying to access it on a file version already uploaded currently times out. + * @summary Check FileData Upload Status + * @param {string} fileId + * @param {number} versionId + * @param {'file' | 'signature' | 'delta'} fileType + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getFileDataUploadStatus(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getFileDataUploadStatus(fileId, versionId, fileType, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Returns a list of files + * @summary List Files + * @param {string} [tag] Tag, for example \"icon\" or \"gallery\", not included by default. + * @param {string} [userId] UserID, will always generate a 500 permission error. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getFiles(tag?: string, userId?: string, n?: number, offset?: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getFiles(tag, userId, n, offset, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Starts an upload of a specific FilePart. This endpoint will return an AWS URL which you can PUT data to. You need to call this and receive a new AWS API URL for each `partNumber`. Please see AWS\'s REST documentation on \"PUT Object to S3\" on how to upload. Once all parts has been uploaded, proceed to `/finish` endpoint. **Note:** `nextPartNumber` seems like it is always ignored. Despite it returning 0, first partNumber is always 1. + * @summary Start FileData Upload + * @param {string} fileId + * @param {number} versionId + * @param {'file' | 'signature' | 'delta'} fileType + * @param {number} partNumber + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async startFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', partNumber: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.startFileDataUpload(fileId, versionId, fileType, partNumber, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + } +}; + +/** + * FilesApi - factory interface + * @export + */ +export const FilesApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = FilesApiFp(configuration) + return { + /** + * Creates a new File object + * @summary Create File + * @param {InlineObject3} [inlineObject3] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + createFile(inlineObject3?: InlineObject3, options?: any): AxiosPromise { + return localVarFp.createFile(inlineObject3, options).then((request) => request(axios, basePath)); + }, + /** + * Creates a new FileVersion. Once a Version has been created, proceed to the `/file/{fileId}/{versionId}/file/start` endpoint to start a file upload. + * @summary Create File Version + * @param {string} fileId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + createFileVersion(fileId: string, options?: any): AxiosPromise { + return localVarFp.createFileVersion(fileId, options).then((request) => request(axios, basePath)); + }, + /** + * Deletes a File object. + * @summary Delete File + * @param {string} fileId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + deleteFile(fileId: string, options?: any): AxiosPromise { + return localVarFp.deleteFile(fileId, options).then((request) => request(axios, basePath)); + }, + /** + * Delete a specific version of a file. You can only delete the latest version. + * @summary Delete File Version + * @param {string} fileId + * @param {number} versionId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + deleteFileVersion(fileId: string, versionId: number, options?: any): AxiosPromise { + return localVarFp.deleteFileVersion(fileId, versionId, options).then((request) => request(axios, basePath)); + }, + /** + * Downloads the file with the provided version number. **Version Note:** Version 0 is always when the file was created. The real data is usually always located in version 1 and up. **Extension Note:** Files are not guaranteed to have a file extensions. UnityPackage files tends to have it, images through this endpoint do not. You are responsible for appending file extension from the `extension` field when neccesary. + * @summary Download File Version + * @param {string} fileId + * @param {number} versionId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + downloadFileVersion(fileId: string, versionId: number, options?: any): AxiosPromise { + return localVarFp.downloadFileVersion(fileId, versionId, options).then((request) => request(axios, basePath)); + }, + /** + * Finish an upload of a FileData. This will mark it as \"complete\". After uploading the `file` for Avatars and Worlds you then have to upload a `signature` file. + * @summary Finish FileData Upload + * @param {string} fileId + * @param {number} versionId + * @param {'file' | 'signature' | 'delta'} fileType + * @param {InlineObject4} [inlineObject4] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + finishFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', inlineObject4?: InlineObject4, options?: any): AxiosPromise { + return localVarFp.finishFileDataUpload(fileId, versionId, fileType, inlineObject4, options).then((request) => request(axios, basePath)); + }, + /** + * Shows general information about the \"File\" object. Each File can have several \"Version\"\'s, and each Version can have multiple real files or \"Data\" blobs. + * @summary Show File + * @param {string} fileId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFile(fileId: string, options?: any): AxiosPromise { + return localVarFp.getFile(fileId, options).then((request) => request(axios, basePath)); + }, + /** + * Retrieves the upload status for file upload. Can currently only be accessed when `status` is `waiting`. Trying to access it on a file version already uploaded currently times out. + * @summary Check FileData Upload Status + * @param {string} fileId + * @param {number} versionId + * @param {'file' | 'signature' | 'delta'} fileType + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFileDataUploadStatus(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', options?: any): AxiosPromise { + return localVarFp.getFileDataUploadStatus(fileId, versionId, fileType, options).then((request) => request(axios, basePath)); + }, + /** + * Returns a list of files + * @summary List Files + * @param {string} [tag] Tag, for example \"icon\" or \"gallery\", not included by default. + * @param {string} [userId] UserID, will always generate a 500 permission error. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFiles(tag?: string, userId?: string, n?: number, offset?: number, options?: any): AxiosPromise> { + return localVarFp.getFiles(tag, userId, n, offset, options).then((request) => request(axios, basePath)); + }, + /** + * Starts an upload of a specific FilePart. This endpoint will return an AWS URL which you can PUT data to. You need to call this and receive a new AWS API URL for each `partNumber`. Please see AWS\'s REST documentation on \"PUT Object to S3\" on how to upload. Once all parts has been uploaded, proceed to `/finish` endpoint. **Note:** `nextPartNumber` seems like it is always ignored. Despite it returning 0, first partNumber is always 1. + * @summary Start FileData Upload + * @param {string} fileId + * @param {number} versionId + * @param {'file' | 'signature' | 'delta'} fileType + * @param {number} partNumber + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + startFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', partNumber: number, options?: any): AxiosPromise { + return localVarFp.startFileDataUpload(fileId, versionId, fileType, partNumber, options).then((request) => request(axios, basePath)); + }, + }; +}; + +/** + * FilesApi - object-oriented interface + * @export + * @class FilesApi + * @extends {BaseAPI} + */ +export class FilesApi extends BaseAPI { + /** + * Creates a new File object + * @summary Create File + * @param {InlineObject3} [inlineObject3] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FilesApi + */ + public createFile(inlineObject3?: InlineObject3, options?: any) { + return FilesApiFp(this.configuration).createFile(inlineObject3, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Creates a new FileVersion. Once a Version has been created, proceed to the `/file/{fileId}/{versionId}/file/start` endpoint to start a file upload. + * @summary Create File Version + * @param {string} fileId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FilesApi + */ + public createFileVersion(fileId: string, options?: any) { + return FilesApiFp(this.configuration).createFileVersion(fileId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Deletes a File object. + * @summary Delete File + * @param {string} fileId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FilesApi + */ + public deleteFile(fileId: string, options?: any) { + return FilesApiFp(this.configuration).deleteFile(fileId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Delete a specific version of a file. You can only delete the latest version. + * @summary Delete File Version + * @param {string} fileId + * @param {number} versionId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FilesApi + */ + public deleteFileVersion(fileId: string, versionId: number, options?: any) { + return FilesApiFp(this.configuration).deleteFileVersion(fileId, versionId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Downloads the file with the provided version number. **Version Note:** Version 0 is always when the file was created. The real data is usually always located in version 1 and up. **Extension Note:** Files are not guaranteed to have a file extensions. UnityPackage files tends to have it, images through this endpoint do not. You are responsible for appending file extension from the `extension` field when neccesary. + * @summary Download File Version + * @param {string} fileId + * @param {number} versionId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FilesApi + */ + public downloadFileVersion(fileId: string, versionId: number, options?: any) { + return FilesApiFp(this.configuration).downloadFileVersion(fileId, versionId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Finish an upload of a FileData. This will mark it as \"complete\". After uploading the `file` for Avatars and Worlds you then have to upload a `signature` file. + * @summary Finish FileData Upload + * @param {string} fileId + * @param {number} versionId + * @param {'file' | 'signature' | 'delta'} fileType + * @param {InlineObject4} [inlineObject4] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FilesApi + */ + public finishFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', inlineObject4?: InlineObject4, options?: any) { + return FilesApiFp(this.configuration).finishFileDataUpload(fileId, versionId, fileType, inlineObject4, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Shows general information about the \"File\" object. Each File can have several \"Version\"\'s, and each Version can have multiple real files or \"Data\" blobs. + * @summary Show File + * @param {string} fileId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FilesApi + */ + public getFile(fileId: string, options?: any) { + return FilesApiFp(this.configuration).getFile(fileId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Retrieves the upload status for file upload. Can currently only be accessed when `status` is `waiting`. Trying to access it on a file version already uploaded currently times out. + * @summary Check FileData Upload Status + * @param {string} fileId + * @param {number} versionId + * @param {'file' | 'signature' | 'delta'} fileType + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FilesApi + */ + public getFileDataUploadStatus(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', options?: any) { + return FilesApiFp(this.configuration).getFileDataUploadStatus(fileId, versionId, fileType, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Returns a list of files + * @summary List Files + * @param {string} [tag] Tag, for example \"icon\" or \"gallery\", not included by default. + * @param {string} [userId] UserID, will always generate a 500 permission error. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FilesApi + */ + public getFiles(tag?: string, userId?: string, n?: number, offset?: number, options?: any) { + return FilesApiFp(this.configuration).getFiles(tag, userId, n, offset, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Starts an upload of a specific FilePart. This endpoint will return an AWS URL which you can PUT data to. You need to call this and receive a new AWS API URL for each `partNumber`. Please see AWS\'s REST documentation on \"PUT Object to S3\" on how to upload. Once all parts has been uploaded, proceed to `/finish` endpoint. **Note:** `nextPartNumber` seems like it is always ignored. Despite it returning 0, first partNumber is always 1. + * @summary Start FileData Upload + * @param {string} fileId + * @param {number} versionId + * @param {'file' | 'signature' | 'delta'} fileType + * @param {number} partNumber + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FilesApi + */ + public startFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', partNumber: number, options?: any) { + return FilesApiFp(this.configuration).startFileDataUpload(fileId, versionId, fileType, partNumber, options).then((request) => request(this.axios, this.basePath)); + } +} + + +/** + * FriendsApi - axios parameter creator + * @export + */ +export const FriendsApiAxiosParamCreator = function (configuration?: Configuration) { + return { + /** + * Deletes an outgoing pending friend request to another user. To delete an incoming friend request, use the `deleteNotification` endpoint instead. + * @summary Delete Friend Request + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + deleteFriendRequest: async (userId: string, options: any = {}): Promise => { + // verify required parameter 'userId' is not null or undefined + assertParamExists('deleteFriendRequest', 'userId', userId) + const localVarPath = `/user/{userId}/friendRequest` + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Send a friend request to another user. + * @summary Send Friend Request + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + friend: async (userId: string, options: any = {}): Promise => { + // verify required parameter 'userId' is not null or undefined + assertParamExists('friend', 'userId', userId) + const localVarPath = `/user/{userId}/friendRequest` + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Retrieve if the user is currently a friend with a given user, if they have an outgoing friend request, and if they have an incoming friend request. The proper way to receive and accept friend request is by checking if the user has an incoming `Notification` of type `friendRequest`, and then accepting that notification. + * @summary Check Friend Status + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFriendStatus: async (userId: string, options: any = {}): Promise => { + // verify required parameter 'userId' is not null or undefined + assertParamExists('getFriendStatus', 'userId', userId) + const localVarPath = `/user/{userId}/friendStatus` + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * List information about friends. + * @summary List Friends + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {number} [n] The number of objects to return. + * @param {boolean} [offline] Returns *only* offline users if true, returns only online and active users if false + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFriends: async (offset?: number, n?: number, offline?: boolean, options: any = {}): Promise => { + const localVarPath = `/auth/user/friends`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + if (offset !== undefined) { + localVarQueryParameter['offset'] = offset; + } + + if (n !== undefined) { + localVarQueryParameter['n'] = n; + } + + if (offline !== undefined) { + localVarQueryParameter['offline'] = offline; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Unfriend a user by ID. + * @summary Unfriend + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + unfriend: async (userId: string, options: any = {}): Promise => { + // verify required parameter 'userId' is not null or undefined + assertParamExists('unfriend', 'userId', userId) + const localVarPath = `/auth/user/friends/{userId}` + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + } +}; + +/** + * FriendsApi - functional programming interface + * @export + */ +export const FriendsApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = FriendsApiAxiosParamCreator(configuration) + return { + /** + * Deletes an outgoing pending friend request to another user. To delete an incoming friend request, use the `deleteNotification` endpoint instead. + * @summary Delete Friend Request + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async deleteFriendRequest(userId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.deleteFriendRequest(userId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Send a friend request to another user. + * @summary Send Friend Request + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async friend(userId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.friend(userId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Retrieve if the user is currently a friend with a given user, if they have an outgoing friend request, and if they have an incoming friend request. The proper way to receive and accept friend request is by checking if the user has an incoming `Notification` of type `friendRequest`, and then accepting that notification. + * @summary Check Friend Status + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getFriendStatus(userId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getFriendStatus(userId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * List information about friends. + * @summary List Friends + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {number} [n] The number of objects to return. + * @param {boolean} [offline] Returns *only* offline users if true, returns only online and active users if false + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getFriends(offset?: number, n?: number, offline?: boolean, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getFriends(offset, n, offline, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Unfriend a user by ID. + * @summary Unfriend + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async unfriend(userId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.unfriend(userId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + } +}; + +/** + * FriendsApi - factory interface + * @export + */ +export const FriendsApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = FriendsApiFp(configuration) + return { + /** + * Deletes an outgoing pending friend request to another user. To delete an incoming friend request, use the `deleteNotification` endpoint instead. + * @summary Delete Friend Request + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + deleteFriendRequest(userId: string, options?: any): AxiosPromise { + return localVarFp.deleteFriendRequest(userId, options).then((request) => request(axios, basePath)); + }, + /** + * Send a friend request to another user. + * @summary Send Friend Request + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + friend(userId: string, options?: any): AxiosPromise { + return localVarFp.friend(userId, options).then((request) => request(axios, basePath)); + }, + /** + * Retrieve if the user is currently a friend with a given user, if they have an outgoing friend request, and if they have an incoming friend request. The proper way to receive and accept friend request is by checking if the user has an incoming `Notification` of type `friendRequest`, and then accepting that notification. + * @summary Check Friend Status + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFriendStatus(userId: string, options?: any): AxiosPromise { + return localVarFp.getFriendStatus(userId, options).then((request) => request(axios, basePath)); + }, + /** + * List information about friends. + * @summary List Friends + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {number} [n] The number of objects to return. + * @param {boolean} [offline] Returns *only* offline users if true, returns only online and active users if false + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFriends(offset?: number, n?: number, offline?: boolean, options?: any): AxiosPromise> { + return localVarFp.getFriends(offset, n, offline, options).then((request) => request(axios, basePath)); + }, + /** + * Unfriend a user by ID. + * @summary Unfriend + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + unfriend(userId: string, options?: any): AxiosPromise { + return localVarFp.unfriend(userId, options).then((request) => request(axios, basePath)); + }, + }; +}; + +/** + * FriendsApi - object-oriented interface + * @export + * @class FriendsApi + * @extends {BaseAPI} + */ +export class FriendsApi extends BaseAPI { + /** + * Deletes an outgoing pending friend request to another user. To delete an incoming friend request, use the `deleteNotification` endpoint instead. + * @summary Delete Friend Request + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FriendsApi + */ + public deleteFriendRequest(userId: string, options?: any) { + return FriendsApiFp(this.configuration).deleteFriendRequest(userId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Send a friend request to another user. + * @summary Send Friend Request + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FriendsApi + */ + public friend(userId: string, options?: any) { + return FriendsApiFp(this.configuration).friend(userId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Retrieve if the user is currently a friend with a given user, if they have an outgoing friend request, and if they have an incoming friend request. The proper way to receive and accept friend request is by checking if the user has an incoming `Notification` of type `friendRequest`, and then accepting that notification. + * @summary Check Friend Status + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FriendsApi + */ + public getFriendStatus(userId: string, options?: any) { + return FriendsApiFp(this.configuration).getFriendStatus(userId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * List information about friends. + * @summary List Friends + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {number} [n] The number of objects to return. + * @param {boolean} [offline] Returns *only* offline users if true, returns only online and active users if false + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FriendsApi + */ + public getFriends(offset?: number, n?: number, offline?: boolean, options?: any) { + return FriendsApiFp(this.configuration).getFriends(offset, n, offline, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Unfriend a user by ID. + * @summary Unfriend + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FriendsApi + */ + public unfriend(userId: string, options?: any) { + return FriendsApiFp(this.configuration).unfriend(userId, options).then((request) => request(this.axios, this.basePath)); + } +} + + +/** + * NotificationsApi - axios parameter creator + * @export + */ +export const NotificationsApiAxiosParamCreator = function (configuration?: Configuration) { + return { + /** + * Accept a friend request by notification `frq_` ID. Friend requests can be found using the NotificationsAPI `getNotifications` by filtering of type `friendRequest`. + * @summary Accept Friend Request + * @param {string} notificationId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + acceptFriendRequest: async (notificationId: string, options: any = {}): Promise => { + // verify required parameter 'notificationId' is not null or undefined + assertParamExists('acceptFriendRequest', 'notificationId', notificationId) + const localVarPath = `/auth/user/notifications/{notificationId}/accept` + .replace(`{${"notificationId"}}`, encodeURIComponent(String(notificationId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Clear **all** notifications. + * @summary Clear All Notifications + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + clearNotifications: async (options: any = {}): Promise => { + const localVarPath = `/auth/user/notifications/clear`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Delete a notification. + * @summary Delete Notification + * @param {string} notificationId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + deleteNotification: async (notificationId: string, options: any = {}): Promise => { + // verify required parameter 'notificationId' is not null or undefined + assertParamExists('deleteNotification', 'notificationId', notificationId) + const localVarPath = `/auth/user/notifications/{notificationId}/hide` + .replace(`{${"notificationId"}}`, encodeURIComponent(String(notificationId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Retrieve all of the current user\'s notifications. + * @summary List Notifications + * @param {string} [type] Only send notifications of this type (can use `all` for all). + * @param {boolean} [sent] Return notifications sent by the user. Must be false or omitted. + * @param {boolean} [hidden] Whether to return hidden or non-hidden notifications. True only allowed on type `friendRequest`. + * @param {string} [after] Only return notifications sent after this Date. Ignored if type is `friendRequest`. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getNotifications: async (type?: string, sent?: boolean, hidden?: boolean, after?: string, n?: number, offset?: number, options: any = {}): Promise => { + const localVarPath = `/auth/user/notifications`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + if (type !== undefined) { + localVarQueryParameter['type'] = type; + } + + if (sent !== undefined) { + localVarQueryParameter['sent'] = sent; + } + + if (hidden !== undefined) { + localVarQueryParameter['hidden'] = hidden; + } + + if (after !== undefined) { + localVarQueryParameter['after'] = after; + } + + if (n !== undefined) { + localVarQueryParameter['n'] = n; + } + + if (offset !== undefined) { + localVarQueryParameter['offset'] = offset; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Mark a notification as seen. + * @summary Mark As Read + * @param {string} notificationId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + markNotificationAsRead: async (notificationId: string, options: any = {}): Promise => { + // verify required parameter 'notificationId' is not null or undefined + assertParamExists('markNotificationAsRead', 'notificationId', notificationId) + const localVarPath = `/auth/user/notifications/{notificationId}/see` + .replace(`{${"notificationId"}}`, encodeURIComponent(String(notificationId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + } +}; + +/** + * NotificationsApi - functional programming interface + * @export + */ +export const NotificationsApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = NotificationsApiAxiosParamCreator(configuration) + return { + /** + * Accept a friend request by notification `frq_` ID. Friend requests can be found using the NotificationsAPI `getNotifications` by filtering of type `friendRequest`. + * @summary Accept Friend Request + * @param {string} notificationId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async acceptFriendRequest(notificationId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.acceptFriendRequest(notificationId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Clear **all** notifications. + * @summary Clear All Notifications + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async clearNotifications(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.clearNotifications(options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Delete a notification. + * @summary Delete Notification + * @param {string} notificationId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async deleteNotification(notificationId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.deleteNotification(notificationId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Retrieve all of the current user\'s notifications. + * @summary List Notifications + * @param {string} [type] Only send notifications of this type (can use `all` for all). + * @param {boolean} [sent] Return notifications sent by the user. Must be false or omitted. + * @param {boolean} [hidden] Whether to return hidden or non-hidden notifications. True only allowed on type `friendRequest`. + * @param {string} [after] Only return notifications sent after this Date. Ignored if type is `friendRequest`. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getNotifications(type?: string, sent?: boolean, hidden?: boolean, after?: string, n?: number, offset?: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getNotifications(type, sent, hidden, after, n, offset, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Mark a notification as seen. + * @summary Mark As Read + * @param {string} notificationId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async markNotificationAsRead(notificationId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.markNotificationAsRead(notificationId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + } +}; + +/** + * NotificationsApi - factory interface + * @export + */ +export const NotificationsApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = NotificationsApiFp(configuration) + return { + /** + * Accept a friend request by notification `frq_` ID. Friend requests can be found using the NotificationsAPI `getNotifications` by filtering of type `friendRequest`. + * @summary Accept Friend Request + * @param {string} notificationId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + acceptFriendRequest(notificationId: string, options?: any): AxiosPromise { + return localVarFp.acceptFriendRequest(notificationId, options).then((request) => request(axios, basePath)); + }, + /** + * Clear **all** notifications. + * @summary Clear All Notifications + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + clearNotifications(options?: any): AxiosPromise { + return localVarFp.clearNotifications(options).then((request) => request(axios, basePath)); + }, + /** + * Delete a notification. + * @summary Delete Notification + * @param {string} notificationId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + deleteNotification(notificationId: string, options?: any): AxiosPromise { + return localVarFp.deleteNotification(notificationId, options).then((request) => request(axios, basePath)); + }, + /** + * Retrieve all of the current user\'s notifications. + * @summary List Notifications + * @param {string} [type] Only send notifications of this type (can use `all` for all). + * @param {boolean} [sent] Return notifications sent by the user. Must be false or omitted. + * @param {boolean} [hidden] Whether to return hidden or non-hidden notifications. True only allowed on type `friendRequest`. + * @param {string} [after] Only return notifications sent after this Date. Ignored if type is `friendRequest`. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getNotifications(type?: string, sent?: boolean, hidden?: boolean, after?: string, n?: number, offset?: number, options?: any): AxiosPromise> { + return localVarFp.getNotifications(type, sent, hidden, after, n, offset, options).then((request) => request(axios, basePath)); + }, + /** + * Mark a notification as seen. + * @summary Mark As Read + * @param {string} notificationId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + markNotificationAsRead(notificationId: string, options?: any): AxiosPromise { + return localVarFp.markNotificationAsRead(notificationId, options).then((request) => request(axios, basePath)); + }, + }; +}; + +/** + * NotificationsApi - object-oriented interface + * @export + * @class NotificationsApi + * @extends {BaseAPI} + */ +export class NotificationsApi extends BaseAPI { + /** + * Accept a friend request by notification `frq_` ID. Friend requests can be found using the NotificationsAPI `getNotifications` by filtering of type `friendRequest`. + * @summary Accept Friend Request + * @param {string} notificationId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof NotificationsApi + */ + public acceptFriendRequest(notificationId: string, options?: any) { + return NotificationsApiFp(this.configuration).acceptFriendRequest(notificationId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Clear **all** notifications. + * @summary Clear All Notifications + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof NotificationsApi + */ + public clearNotifications(options?: any) { + return NotificationsApiFp(this.configuration).clearNotifications(options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Delete a notification. + * @summary Delete Notification + * @param {string} notificationId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof NotificationsApi + */ + public deleteNotification(notificationId: string, options?: any) { + return NotificationsApiFp(this.configuration).deleteNotification(notificationId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Retrieve all of the current user\'s notifications. + * @summary List Notifications + * @param {string} [type] Only send notifications of this type (can use `all` for all). + * @param {boolean} [sent] Return notifications sent by the user. Must be false or omitted. + * @param {boolean} [hidden] Whether to return hidden or non-hidden notifications. True only allowed on type `friendRequest`. + * @param {string} [after] Only return notifications sent after this Date. Ignored if type is `friendRequest`. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof NotificationsApi + */ + public getNotifications(type?: string, sent?: boolean, hidden?: boolean, after?: string, n?: number, offset?: number, options?: any) { + return NotificationsApiFp(this.configuration).getNotifications(type, sent, hidden, after, n, offset, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Mark a notification as seen. + * @summary Mark As Read + * @param {string} notificationId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof NotificationsApi + */ + public markNotificationAsRead(notificationId: string, options?: any) { + return NotificationsApiFp(this.configuration).markNotificationAsRead(notificationId, options).then((request) => request(this.axios, this.basePath)); + } +} + + +/** + * SystemApi - axios parameter creator + * @export + */ +export const SystemApiAxiosParamCreator = function (configuration?: Configuration) { + return { + /** + * API config contains configuration that the clients needs to work properly. Currently the most important value here is `clientApiKey` which is used for all other API endpoints. + * @summary Fetch API Config + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getConfig: async (options: any = {}): Promise => { + const localVarPath = `/config`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Returns in plain format the number of currently online users. **NOTE:** The response type is not of JSON, but is an integer in plain ASCII format. + * @summary Current Online Users + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getCurrentOnlineUsers: async (options: any = {}): Promise => { + const localVarPath = `/visits`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Gets the overall health status, the server name, and the current build version tag of the API. + * @summary Check API Health + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getHealth: async (options: any = {}): Promise => { + const localVarPath = `/health`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Returns in plain format the current time of the API server. **NOTE:** The response type is not of JSON, but is a string in plain ASCII format. + * @summary Current System Time + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getSystemTime: async (options: any = {}): Promise => { + const localVarPath = `/time`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + } +}; + +/** + * SystemApi - functional programming interface + * @export + */ +export const SystemApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = SystemApiAxiosParamCreator(configuration) + return { + /** + * API config contains configuration that the clients needs to work properly. Currently the most important value here is `clientApiKey` which is used for all other API endpoints. + * @summary Fetch API Config + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getConfig(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getConfig(options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Returns in plain format the number of currently online users. **NOTE:** The response type is not of JSON, but is an integer in plain ASCII format. + * @summary Current Online Users + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getCurrentOnlineUsers(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getCurrentOnlineUsers(options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Gets the overall health status, the server name, and the current build version tag of the API. + * @summary Check API Health + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getHealth(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getHealth(options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Returns in plain format the current time of the API server. **NOTE:** The response type is not of JSON, but is a string in plain ASCII format. + * @summary Current System Time + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getSystemTime(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getSystemTime(options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + } +}; + +/** + * SystemApi - factory interface + * @export + */ +export const SystemApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = SystemApiFp(configuration) + return { + /** + * API config contains configuration that the clients needs to work properly. Currently the most important value here is `clientApiKey` which is used for all other API endpoints. + * @summary Fetch API Config + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getConfig(options?: any): AxiosPromise { + return localVarFp.getConfig(options).then((request) => request(axios, basePath)); + }, + /** + * Returns in plain format the number of currently online users. **NOTE:** The response type is not of JSON, but is an integer in plain ASCII format. + * @summary Current Online Users + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getCurrentOnlineUsers(options?: any): AxiosPromise { + return localVarFp.getCurrentOnlineUsers(options).then((request) => request(axios, basePath)); + }, + /** + * Gets the overall health status, the server name, and the current build version tag of the API. + * @summary Check API Health + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getHealth(options?: any): AxiosPromise { + return localVarFp.getHealth(options).then((request) => request(axios, basePath)); + }, + /** + * Returns in plain format the current time of the API server. **NOTE:** The response type is not of JSON, but is a string in plain ASCII format. + * @summary Current System Time + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getSystemTime(options?: any): AxiosPromise { + return localVarFp.getSystemTime(options).then((request) => request(axios, basePath)); + }, + }; +}; + +/** + * SystemApi - object-oriented interface + * @export + * @class SystemApi + * @extends {BaseAPI} + */ +export class SystemApi extends BaseAPI { + /** + * API config contains configuration that the clients needs to work properly. Currently the most important value here is `clientApiKey` which is used for all other API endpoints. + * @summary Fetch API Config + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof SystemApi + */ + public getConfig(options?: any) { + return SystemApiFp(this.configuration).getConfig(options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Returns in plain format the number of currently online users. **NOTE:** The response type is not of JSON, but is an integer in plain ASCII format. + * @summary Current Online Users + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof SystemApi + */ + public getCurrentOnlineUsers(options?: any) { + return SystemApiFp(this.configuration).getCurrentOnlineUsers(options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Gets the overall health status, the server name, and the current build version tag of the API. + * @summary Check API Health + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof SystemApi + */ + public getHealth(options?: any) { + return SystemApiFp(this.configuration).getHealth(options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Returns in plain format the current time of the API server. **NOTE:** The response type is not of JSON, but is a string in plain ASCII format. + * @summary Current System Time + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof SystemApi + */ + public getSystemTime(options?: any) { + return SystemApiFp(this.configuration).getSystemTime(options).then((request) => request(this.axios, this.basePath)); + } +} + + +/** + * UsersApi - axios parameter creator + * @export + */ +export const UsersApiAxiosParamCreator = function (configuration?: Configuration) { + return { + /** + * Get public user information about a specific user using their ID. + * @summary Get User by ID + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getUser: async (userId: string, options: any = {}): Promise => { + // verify required parameter 'userId' is not null or undefined + assertParamExists('getUser', 'userId', userId) + const localVarPath = `/users/{userId}` + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get public user information about a specific user using their name. + * @summary Get User by Username + * @param {string} username + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getUserByName: async (username: string, options: any = {}): Promise => { + // verify required parameter 'username' is not null or undefined + assertParamExists('getUserByName', 'username', username) + const localVarPath = `/users/{username}/name` + .replace(`{${"username"}}`, encodeURIComponent(String(username))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Search and list any Active users by text query. **Has been locked down and now always respond with \"Invalid Admin Credentials\".** + * @summary Search Active Users + * @param {string} search Username to search for + * @param {string} [developerType] Active user by developer type, none for normal users and internal for moderators + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {number} [n] The number of objects to return. + * @param {*} [options] Override http request option. + * @deprecated + * @throws {RequiredError} + */ + searchActiveUsers: async (search: string, developerType?: string, offset?: number, n?: number, options: any = {}): Promise => { + // verify required parameter 'search' is not null or undefined + assertParamExists('searchActiveUsers', 'search', search) + const localVarPath = `/users/active`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + if (search !== undefined) { + localVarQueryParameter['search'] = search; + } + + if (developerType !== undefined) { + localVarQueryParameter['developerType'] = developerType; + } + + if (offset !== undefined) { + localVarQueryParameter['offset'] = offset; + } + + if (n !== undefined) { + localVarQueryParameter['n'] = n; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Search and list any users by text query + * @summary Search All Users + * @param {string} [search] Searches by `displayName`. Will return empty array if search query is empty or missing. + * @param {string} [developerType] Active user by developer type, none for normal users and internal for moderators + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + searchUsers: async (search?: string, developerType?: string, n?: number, offset?: number, options: any = {}): Promise => { + const localVarPath = `/users`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + if (search !== undefined) { + localVarQueryParameter['search'] = search; + } + + if (developerType !== undefined) { + localVarQueryParameter['developerType'] = developerType; + } + + if (n !== undefined) { + localVarQueryParameter['n'] = n; + } + + if (offset !== undefined) { + localVarQueryParameter['offset'] = offset; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Update a users information such as the email and birthday. + * @summary Update User Info + * @param {string} userId + * @param {InlineObject2} [inlineObject2] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + updateUser: async (userId: string, inlineObject2?: InlineObject2, options: any = {}): Promise => { + // verify required parameter 'userId' is not null or undefined + assertParamExists('updateUser', 'userId', userId) + const localVarPath = `/users/{userId}` + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(inlineObject2, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + } +}; + +/** + * UsersApi - functional programming interface + * @export + */ +export const UsersApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = UsersApiAxiosParamCreator(configuration) + return { + /** + * Get public user information about a specific user using their ID. + * @summary Get User by ID + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getUser(userId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getUser(userId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Get public user information about a specific user using their name. + * @summary Get User by Username + * @param {string} username + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getUserByName(username: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getUserByName(username, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Search and list any Active users by text query. **Has been locked down and now always respond with \"Invalid Admin Credentials\".** + * @summary Search Active Users + * @param {string} search Username to search for + * @param {string} [developerType] Active user by developer type, none for normal users and internal for moderators + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {number} [n] The number of objects to return. + * @param {*} [options] Override http request option. + * @deprecated + * @throws {RequiredError} + */ + async searchActiveUsers(search: string, developerType?: string, offset?: number, n?: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.searchActiveUsers(search, developerType, offset, n, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Search and list any users by text query + * @summary Search All Users + * @param {string} [search] Searches by `displayName`. Will return empty array if search query is empty or missing. + * @param {string} [developerType] Active user by developer type, none for normal users and internal for moderators + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async searchUsers(search?: string, developerType?: string, n?: number, offset?: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.searchUsers(search, developerType, n, offset, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Update a users information such as the email and birthday. + * @summary Update User Info + * @param {string} userId + * @param {InlineObject2} [inlineObject2] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async updateUser(userId: string, inlineObject2?: InlineObject2, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.updateUser(userId, inlineObject2, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + } +}; + +/** + * UsersApi - factory interface + * @export + */ +export const UsersApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = UsersApiFp(configuration) + return { + /** + * Get public user information about a specific user using their ID. + * @summary Get User by ID + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getUser(userId: string, options?: any): AxiosPromise { + return localVarFp.getUser(userId, options).then((request) => request(axios, basePath)); + }, + /** + * Get public user information about a specific user using their name. + * @summary Get User by Username + * @param {string} username + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getUserByName(username: string, options?: any): AxiosPromise { + return localVarFp.getUserByName(username, options).then((request) => request(axios, basePath)); + }, + /** + * Search and list any Active users by text query. **Has been locked down and now always respond with \"Invalid Admin Credentials\".** + * @summary Search Active Users + * @param {string} search Username to search for + * @param {string} [developerType] Active user by developer type, none for normal users and internal for moderators + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {number} [n] The number of objects to return. + * @param {*} [options] Override http request option. + * @deprecated + * @throws {RequiredError} + */ + searchActiveUsers(search: string, developerType?: string, offset?: number, n?: number, options?: any): AxiosPromise> { + return localVarFp.searchActiveUsers(search, developerType, offset, n, options).then((request) => request(axios, basePath)); + }, + /** + * Search and list any users by text query + * @summary Search All Users + * @param {string} [search] Searches by `displayName`. Will return empty array if search query is empty or missing. + * @param {string} [developerType] Active user by developer type, none for normal users and internal for moderators + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + searchUsers(search?: string, developerType?: string, n?: number, offset?: number, options?: any): AxiosPromise> { + return localVarFp.searchUsers(search, developerType, n, offset, options).then((request) => request(axios, basePath)); + }, + /** + * Update a users information such as the email and birthday. + * @summary Update User Info + * @param {string} userId + * @param {InlineObject2} [inlineObject2] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + updateUser(userId: string, inlineObject2?: InlineObject2, options?: any): AxiosPromise { + return localVarFp.updateUser(userId, inlineObject2, options).then((request) => request(axios, basePath)); + }, + }; +}; + +/** + * UsersApi - object-oriented interface + * @export + * @class UsersApi + * @extends {BaseAPI} + */ +export class UsersApi extends BaseAPI { + /** + * Get public user information about a specific user using their ID. + * @summary Get User by ID + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof UsersApi + */ + public getUser(userId: string, options?: any) { + return UsersApiFp(this.configuration).getUser(userId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Get public user information about a specific user using their name. + * @summary Get User by Username + * @param {string} username + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof UsersApi + */ + public getUserByName(username: string, options?: any) { + return UsersApiFp(this.configuration).getUserByName(username, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Search and list any Active users by text query. **Has been locked down and now always respond with \"Invalid Admin Credentials\".** + * @summary Search Active Users + * @param {string} search Username to search for + * @param {string} [developerType] Active user by developer type, none for normal users and internal for moderators + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {number} [n] The number of objects to return. + * @param {*} [options] Override http request option. + * @deprecated + * @throws {RequiredError} + * @memberof UsersApi + */ + public searchActiveUsers(search: string, developerType?: string, offset?: number, n?: number, options?: any) { + return UsersApiFp(this.configuration).searchActiveUsers(search, developerType, offset, n, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Search and list any users by text query + * @summary Search All Users + * @param {string} [search] Searches by `displayName`. Will return empty array if search query is empty or missing. + * @param {string} [developerType] Active user by developer type, none for normal users and internal for moderators + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof UsersApi + */ + public searchUsers(search?: string, developerType?: string, n?: number, offset?: number, options?: any) { + return UsersApiFp(this.configuration).searchUsers(search, developerType, n, offset, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Update a users information such as the email and birthday. + * @summary Update User Info + * @param {string} userId + * @param {InlineObject2} [inlineObject2] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof UsersApi + */ + public updateUser(userId: string, inlineObject2?: InlineObject2, options?: any) { + return UsersApiFp(this.configuration).updateUser(userId, inlineObject2, options).then((request) => request(this.axios, this.basePath)); + } +} + + diff --git a/src/model/UserStatus.js b/base.ts similarity index 59% rename from src/model/UserStatus.js rename to base.ts index 60ccac1..3ea9935 100644 --- a/src/model/UserStatus.js +++ b/base.ts @@ -1,3 +1,5 @@ +/* tslint:disable */ +/* eslint-disable */ /** * VRChat API Documentation * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) @@ -8,60 +10,62 @@ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. - * */ -import ApiClient from '../ApiClient'; -/** -* Enum class UserStatus. -* @enum {} -* @readonly -*/ -export default class UserStatus { - - /** - * value: "active" - * @const - */ - "active" = "active"; - - /** - * value: "join me" - * @const - */ - "join me" = "join me"; +import { Configuration } from "./configuration"; +// Some imports not used depending on template conditions +// @ts-ignore +import globalAxios, { AxiosPromise, AxiosInstance } from 'axios'; - - /** - * value: "ask me" - * @const - */ - "ask me" = "ask me"; +export const BASE_PATH = "https://api.vrchat.cloud/api/1".replace(/\/+$/, ""); - - /** - * value: "busy" - * @const - */ - "busy" = "busy"; +/** + * + * @export + */ +export const COLLECTION_FORMATS = { + csv: ",", + ssv: " ", + tsv: "\t", + pipes: "|", +}; + +/** + * + * @export + * @interface RequestArgs + */ +export interface RequestArgs { + url: string; + options: any; +} - - /** - * value: "offline" - * @const - */ - "offline" = "offline"; +/** + * + * @export + * @class BaseAPI + */ +export class BaseAPI { + protected configuration: Configuration | undefined; - + constructor(configuration?: Configuration, protected basePath: string = BASE_PATH, protected axios: AxiosInstance = globalAxios) { + if (configuration) { + this.configuration = configuration; + this.basePath = configuration.basePath || this.basePath; + } + } +}; - /** - * Returns a UserStatus enum value from a Javascript object name. - * @param {Object} data The plain JavaScript object containing the name of the enum value. - * @return {module:model/UserStatus} The enum UserStatus value. - */ - static constructFromObject(object) { - return object; +/** + * + * @export + * @class RequiredError + * @extends {Error} + */ +export class RequiredError extends Error { + name: "RequiredError" = "RequiredError"; + constructor(public field: string, msg?: string) { + super(msg); } } - diff --git a/common.ts b/common.ts new file mode 100644 index 0000000..e98f85a --- /dev/null +++ b/common.ts @@ -0,0 +1,138 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +import { Configuration } from "./configuration"; +import { RequiredError, RequestArgs } from "./base"; +import { AxiosInstance } from 'axios'; + +/** + * + * @export + */ +export const DUMMY_BASE_URL = 'https://example.com' + +/** + * + * @throws {RequiredError} + * @export + */ +export const assertParamExists = function (functionName: string, paramName: string, paramValue: unknown) { + if (paramValue === null || paramValue === undefined) { + throw new RequiredError(paramName, `Required parameter ${paramName} was null or undefined when calling ${functionName}.`); + } +} + +/** + * + * @export + */ +export const setApiKeyToObject = async function (object: any, keyParamName: string, configuration?: Configuration) { + if (configuration && configuration.apiKey) { + const localVarApiKeyValue = typeof configuration.apiKey === 'function' + ? await configuration.apiKey(keyParamName) + : await configuration.apiKey; + object[keyParamName] = localVarApiKeyValue; + } +} + +/** + * + * @export + */ +export const setBasicAuthToObject = function (object: any, configuration?: Configuration) { + if (configuration && (configuration.username || configuration.password)) { + object["auth"] = { username: configuration.username, password: configuration.password }; + } +} + +/** + * + * @export + */ +export const setBearerAuthToObject = async function (object: any, configuration?: Configuration) { + if (configuration && configuration.accessToken) { + const accessToken = typeof configuration.accessToken === 'function' + ? await configuration.accessToken() + : await configuration.accessToken; + object["Authorization"] = "Bearer " + accessToken; + } +} + +/** + * + * @export + */ +export const setOAuthToObject = async function (object: any, name: string, scopes: string[], configuration?: Configuration) { + if (configuration && configuration.accessToken) { + const localVarAccessTokenValue = typeof configuration.accessToken === 'function' + ? await configuration.accessToken(name, scopes) + : await configuration.accessToken; + object["Authorization"] = "Bearer " + localVarAccessTokenValue; + } +} + +/** + * + * @export + */ +export const setSearchParams = function (url: URL, ...objects: any[]) { + const searchParams = new URLSearchParams(url.search); + for (const object of objects) { + for (const key in object) { + if (Array.isArray(object[key])) { + searchParams.delete(key); + for (const item of object[key]) { + searchParams.append(key, item); + } + } else { + searchParams.set(key, object[key]); + } + } + } + url.search = searchParams.toString(); +} + +/** + * + * @export + */ +export const serializeDataIfNeeded = function (value: any, requestOptions: any, configuration?: Configuration) { + const nonString = typeof value !== 'string'; + const needsSerialization = nonString && configuration && configuration.isJsonMime + ? configuration.isJsonMime(requestOptions.headers['Content-Type']) + : nonString; + return needsSerialization + ? JSON.stringify(value !== undefined ? value : {}) + : (value || ""); +} + +/** + * + * @export + */ +export const toPathString = function (url: URL) { + return url.pathname + url.search + url.hash +} + +/** + * + * @export + */ +export const createRequestFunction = function (axiosArgs: RequestArgs, globalAxios: AxiosInstance, BASE_PATH: string, configuration?: Configuration) { + return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { + const axiosRequestArgs = {...axiosArgs.options, url: (configuration?.basePath || basePath) + axiosArgs.url}; + return axios.request(axiosRequestArgs); + }; +} diff --git a/configuration.ts b/configuration.ts new file mode 100644 index 0000000..5857fcd --- /dev/null +++ b/configuration.ts @@ -0,0 +1,101 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * VRChat API Documentation + * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * + * The version of the OpenAPI document: 1.0.0 + * Contact: me@ruby.js.org + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +export interface ConfigurationParameters { + apiKey?: string | Promise | ((name: string) => string) | ((name: string) => Promise); + username?: string; + password?: string; + accessToken?: string | Promise | ((name?: string, scopes?: string[]) => string) | ((name?: string, scopes?: string[]) => Promise); + basePath?: string; + baseOptions?: any; + formDataCtor?: new () => any; +} + +export class Configuration { + /** + * parameter for apiKey security + * @param name security name + * @memberof Configuration + */ + apiKey?: string | Promise | ((name: string) => string) | ((name: string) => Promise); + /** + * parameter for basic security + * + * @type {string} + * @memberof Configuration + */ + username?: string; + /** + * parameter for basic security + * + * @type {string} + * @memberof Configuration + */ + password?: string; + /** + * parameter for oauth2 security + * @param name security name + * @param scopes oauth2 scope + * @memberof Configuration + */ + accessToken?: string | Promise | ((name?: string, scopes?: string[]) => string) | ((name?: string, scopes?: string[]) => Promise); + /** + * override base path + * + * @type {string} + * @memberof Configuration + */ + basePath?: string; + /** + * base options for axios calls + * + * @type {any} + * @memberof Configuration + */ + baseOptions?: any; + /** + * The FormData constructor that will be used to create multipart form data + * requests. You can inject this here so that execution environments that + * do not support the FormData class can still run the generated client. + * + * @type {new () => FormData} + */ + formDataCtor?: new () => any; + + constructor(param: ConfigurationParameters = {}) { + this.apiKey = param.apiKey; + this.username = param.username; + this.password = param.password; + this.accessToken = param.accessToken; + this.basePath = param.basePath; + this.baseOptions = param.baseOptions; + this.formDataCtor = param.formDataCtor; + } + + /** + * Check if the given MIME is a JSON MIME. + * JSON MIME examples: + * application/json + * application/json; charset=UTF8 + * APPLICATION/JSON + * application/vnd.company+json + * @param mime - MIME (Multipurpose Internet Mail Extensions) + * @return True if the given MIME is JSON, false otherwise. + */ + public isJsonMime(mime: string): boolean { + const jsonMime: RegExp = new RegExp('^(application\/json|[^;/ \t]+\/[^;/ \t]+[+]json)[ \t]*(;.*)?$', 'i'); + return mime !== null && (jsonMime.test(mime) || mime.toLowerCase() === 'application/json-patch+json'); + } +} diff --git a/docs/AuthenticationApi.md b/docs/AuthenticationApi.md deleted file mode 100644 index 52e2615..0000000 --- a/docs/AuthenticationApi.md +++ /dev/null @@ -1,310 +0,0 @@ -# vrchatapi.AuthenticationApi - -All URIs are relative to *https://api.vrchat.cloud/api/1* - -Method | HTTP request | Description -------------- | ------------- | ------------- -[**deleteUserById**](AuthenticationApi.md#deleteUserById) | **PUT** /user/{userId}/delete | Delete User -[**getCurrentUser**](AuthenticationApi.md#getCurrentUser) | **GET** /auth/user | Login and/or Get Current User Info -[**logout**](AuthenticationApi.md#logout) | **PUT** /logout | Logout -[**verify2FA**](AuthenticationApi.md#verify2FA) | **POST** /auth/twofactorauth/totp/verify | Verify 2FA code -[**verifyAuthToken**](AuthenticationApi.md#verifyAuthToken) | **GET** /auth | Verify Auth Token -[**verifyRecoveryCode**](AuthenticationApi.md#verifyRecoveryCode) | **POST** /auth/twofactorauth/otp/verify | Verify 2FA code with Recovery code - - - -## deleteUserById - -> CurrentUser deleteUserById(userId) - -Delete User - -Deletes the account with given ID. Normal users only have permission to delete their own account. Account deletion is 14 days from this request, and will be cancelled if you do an authenticated request with the account afterwards. **VRC+ NOTE:** Despite the 14-days cooldown, any VRC+ subscription will be cancelled **immediately**. **METHOD NOTE:** Despite this being a Delete action, the method type required is PUT. - -### Example - -```javascript -import vrchatapi from 'vrchatapi'; -let defaultClient = vrchatapi.ApiClient.instance; -// Configure API key authorization: apiKeyCookie -let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; -apiKeyCookie.apiKey = 'YOUR API KEY'; -// Configure API key authorization: authCookie -let authCookie = defaultClient.authentications['authCookie']; -authCookie.apiKey = 'YOUR API KEY'; - -let apiInstance = new vrchatapi.AuthenticationApi(); -let userId = "userId_example"; // String | -apiInstance.deleteUserById(userId).then((data) => { - console.log('API called successfully. Returned data: ' + data); -}, (error) => { - console.error(error); -}); - -``` - -### Parameters - - -Name | Type | Description | Notes -------------- | ------------- | ------------- | ------------- - **userId** | **String**| | - -### Return type - -[**CurrentUser**](CurrentUser.md) - -### Authorization - -[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) - -### HTTP request headers - -- **Content-Type**: Not defined -- **Accept**: application/json - - -## getCurrentUser - -> CurrentUser getCurrentUser() - -Login and/or Get Current User Info - -Login and/or Get user data from your VRChat account. If `Authorization` header is present then a new login session will be generated, and a new `auth` cookie is returned. **WARNING: Session Limit:** Each authentication with login credentials counts as a separate session, out of which you have a limited amount. Make sure to save and reuse the `auth` cookie whenever you can, and avoid sending the Authorization header unless strictly neccesary. While the exact number of simultaneous open sessions is secret, expect to **very fast** run into the rate-limit and be temporarily blocked from making new sessions until the old ones expire. - -### Example - -```javascript -import vrchatapi from 'vrchatapi'; -let defaultClient = vrchatapi.ApiClient.instance; -// Configure API key authorization: authCookie -let authCookie = defaultClient.authentications['authCookie']; -authCookie.apiKey = 'YOUR API KEY'; -// Configure HTTP basic authorization: authHeader -let authHeader = defaultClient.authentications['authHeader']; -authHeader.username = 'YOUR USERNAME'; -authHeader.password = 'YOUR PASSWORD'; -// Configure API key authorization: twoFactorAuthCookie -let twoFactorAuthCookie = defaultClient.authentications['twoFactorAuthCookie']; -twoFactorAuthCookie.apiKey = 'YOUR API KEY'; - -let apiInstance = new vrchatapi.AuthenticationApi(); -apiInstance.getCurrentUser().then((data) => { - console.log('API called successfully. Returned data: ' + data); -}, (error) => { - console.error(error); -}); - -``` - -### Parameters - -This endpoint does not need any parameter. - -### Return type - -[**CurrentUser**](CurrentUser.md) - -### Authorization - -[authCookie](../README.md#authCookie), [authHeader](../README.md#authHeader), [twoFactorAuthCookie](../README.md#twoFactorAuthCookie) - -### HTTP request headers - -- **Content-Type**: Not defined -- **Accept**: application/json - - -## logout - -> Success logout() - -Logout - -Invalidates the auth cookie. - -### Example - -```javascript -import vrchatapi from 'vrchatapi'; -let defaultClient = vrchatapi.ApiClient.instance; -// Configure API key authorization: apiKeyCookie -let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; -apiKeyCookie.apiKey = 'YOUR API KEY'; -// Configure API key authorization: authCookie -let authCookie = defaultClient.authentications['authCookie']; -authCookie.apiKey = 'YOUR API KEY'; - -let apiInstance = new vrchatapi.AuthenticationApi(); -apiInstance.logout().then((data) => { - console.log('API called successfully. Returned data: ' + data); -}, (error) => { - console.error(error); -}); - -``` - -### Parameters - -This endpoint does not need any parameter. - -### Return type - -[**Success**](Success.md) - -### Authorization - -[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) - -### HTTP request headers - -- **Content-Type**: Not defined -- **Accept**: application/json - - -## verify2FA - -> InlineResponse2001 verify2FA(opts) - -Verify 2FA code - -Finishes the login sequence with a normal 2FA-generated code for accounts with 2FA-protection enabled. - -### Example - -```javascript -import vrchatapi from 'vrchatapi'; -let defaultClient = vrchatapi.ApiClient.instance; -// Configure API key authorization: authCookie -let authCookie = defaultClient.authentications['authCookie']; -authCookie.apiKey = 'YOUR API KEY'; - -let apiInstance = new vrchatapi.AuthenticationApi(); -let opts = { - 'inlineObject': new vrchatapi.InlineObject() // InlineObject | -}; -apiInstance.verify2FA(opts).then((data) => { - console.log('API called successfully. Returned data: ' + data); -}, (error) => { - console.error(error); -}); - -``` - -### Parameters - - -Name | Type | Description | Notes -------------- | ------------- | ------------- | ------------- - **inlineObject** | [**InlineObject**](InlineObject.md)| | [optional] - -### Return type - -[**InlineResponse2001**](InlineResponse2001.md) - -### Authorization - -[authCookie](../README.md#authCookie) - -### HTTP request headers - -- **Content-Type**: application/json -- **Accept**: application/json - - -## verifyAuthToken - -> InlineResponse200 verifyAuthToken() - -Verify Auth Token - -Verify whether the currently provided Auth Token is valid. - -### Example - -```javascript -import vrchatapi from 'vrchatapi'; -let defaultClient = vrchatapi.ApiClient.instance; -// Configure API key authorization: apiKeyCookie -let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; -apiKeyCookie.apiKey = 'YOUR API KEY'; -// Configure API key authorization: authCookie -let authCookie = defaultClient.authentications['authCookie']; -authCookie.apiKey = 'YOUR API KEY'; - -let apiInstance = new vrchatapi.AuthenticationApi(); -apiInstance.verifyAuthToken().then((data) => { - console.log('API called successfully. Returned data: ' + data); -}, (error) => { - console.error(error); -}); - -``` - -### Parameters - -This endpoint does not need any parameter. - -### Return type - -[**InlineResponse200**](InlineResponse200.md) - -### Authorization - -[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) - -### HTTP request headers - -- **Content-Type**: Not defined -- **Accept**: application/json - - -## verifyRecoveryCode - -> InlineResponse2001 verifyRecoveryCode(opts) - -Verify 2FA code with Recovery code - -Finishes the login sequence with an OTP (One Time Password) recovery code for accounts with 2FA-protection enabled. - -### Example - -```javascript -import vrchatapi from 'vrchatapi'; -let defaultClient = vrchatapi.ApiClient.instance; -// Configure API key authorization: authCookie -let authCookie = defaultClient.authentications['authCookie']; -authCookie.apiKey = 'YOUR API KEY'; - -let apiInstance = new vrchatapi.AuthenticationApi(); -let opts = { - 'inlineObject1': new vrchatapi.InlineObject1() // InlineObject1 | -}; -apiInstance.verifyRecoveryCode(opts).then((data) => { - console.log('API called successfully. Returned data: ' + data); -}, (error) => { - console.error(error); -}); - -``` - -### Parameters - - -Name | Type | Description | Notes -------------- | ------------- | ------------- | ------------- - **inlineObject1** | [**InlineObject1**](InlineObject1.md)| | [optional] - -### Return type - -[**InlineResponse2001**](InlineResponse2001.md) - -### Authorization - -[authCookie](../README.md#authCookie) - -### HTTP request headers - -- **Content-Type**: application/json -- **Accept**: application/json - diff --git a/docs/Config.md b/docs/Config.md deleted file mode 100644 index a602f82..0000000 --- a/docs/Config.md +++ /dev/null @@ -1,83 +0,0 @@ -# vrchatapi.Config - -## Properties - -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**address** | **String** | VRChat's office address | [readonly] -**announcements** | [**[ConfigAnnouncements]**](ConfigAnnouncements.md) | PSA, Public Announcements | [readonly] -**apiKey** | **String** | apiKey to be used for all other requests | [readonly] -**appName** | **String** | Game name | [readonly] [default to 'VrChat'] -**buildVersionTag** | **String** | Build tag of the API server | [readonly] -**clientApiKey** | **String** | apiKey to be used for all other requests | [readonly] -**clientBPSCeiling** | **Number** | Unknown | [optional] -**clientDisconnectTimeout** | **Number** | Unknown | [optional] -**clientReservedPlayerBPS** | **Number** | Unknown | [optional] -**clientSentCountAllowance** | **Number** | Unknown | [optional] -**contactEmail** | **String** | VRChat's contact email | [readonly] -**copyrightEmail** | **String** | VRChat's copyright-issues-related email | [readonly] -**currentTOSVersion** | **Number** | Current version number of the Terms of Service | [readonly] -**defaultAvatar** | **String** | | -**deploymentGroup** | [**DeploymentGroup**](DeploymentGroup.md) | | -**devAppVersionStandalone** | **String** | Version number for game development build | [readonly] -**devDownloadLinkWindows** | **String** | Developer Download link | [readonly] -**devSdkUrl** | **String** | Link to download the development SDK, use downloadUrls instead | [readonly] -**devSdkVersion** | **String** | Version of the development SDK | [readonly] -**devServerVersionStandalone** | **String** | Version number for server development build | [readonly] -**disableAvatarCopying** | **Boolean** | Toggles if copying avatars should be disabled | [default to false] -**disableAvatarGating** | **Boolean** | Toggles if avatar gating should be disabled. Avatar gating restricts uploading of avatars to people with the `system_avatar_access` Tag or `admin_avatar_access` Tag | [default to false] -**disableCommunityLabs** | **Boolean** | Toggles if the Community Labs should be disabled | [default to false] -**disableCommunityLabsPromotion** | **Boolean** | Toggles if promotion out of Community Labs should be disabled | [default to false] -**disableEmail** | **Boolean** | Unknown | [optional] [default to false] -**disableEventStream** | **Boolean** | Toggles if Analytics should be disabled (this sreportedly not used in the Client) | [default to false] -**disableFeedbackGating** | **Boolean** | Toggles if feedback gating should be disabled. Feedback gating restricts submission of feedback (reporting a World or User) to people with the `system_feedback_access` Tag. | [default to false] -**disableHello** | **Boolean** | Unknown | [optional] [default to false] -**disableRegistration** | **Boolean** | Toggles if new user account registration should be disabled | [default to false] -**disableSteamNetworking** | **Boolean** | Toggles if Steam Networking should be disabled. VRChat these days uses Photon Unity Networking (PUN) instead. | [default to true] -**disableTwoFactorAuth** | **Boolean** | Toggles if 2FA should be disabled. | [default to false] -**disableUdon** | **Boolean** | Toggles if Udon should be universally disabled in-game. | [default to false] -**disableUpgradeAccount** | **Boolean** | Toggles if account upgrading \"linking with Steam/Oculus\" should be disabled. | [default to false] -**downloadLinkWindows** | **String** | Download link for game on the Oculus Rift website. | [readonly] -**downloadUrls** | [**ConfigDownloadUrls**](ConfigDownloadUrls.md) | | -**dynamicWorldRows** | [**[ConfigDynamicWorldRows]**](ConfigDynamicWorldRows.md) | Array of DynamicWorldRow objects, used by the game to display the list of world rows | [readonly] -**events** | [**ConfigEvents**](ConfigEvents.md) | | -**gearDemoRoomId** | **String** | Unknown | [readonly] -**homepageRedirectTarget** | **String** | Redirect target if you try to open the base API domain in your browser | [readonly] [default to 'https://hello.vrchat.com'] -**homeWorldId** | **String** | | -**hubWorldId** | **String** | | -**jobsEmail** | **String** | VRChat's job application email | [readonly] -**messageOfTheDay** | **String** | MOTD | [readonly] -**moderationEmail** | **String** | VRChat's moderation related email | [readonly] -**moderationQueryPeriod** | **Number** | Unknown | -**notAllowedToSelectAvatarInPrivateWorldMessage** | **String** | Used in-game to notify a user they aren't allowed to select avatars in private worlds | [readonly] -**plugin** | **String** | Extra [plugin](https://doc.photonengine.com/en-us/server/current/plugins/manual) to run in each instance | [readonly] -**releaseAppVersionStandalone** | **String** | Version number for game release build | [readonly] -**releaseSdkUrl** | **String** | Link to download the release SDK | [readonly] -**releaseSdkVersion** | **String** | Version of the release SDK | [readonly] -**releaseServerVersionStandalone** | **String** | Version number for server release build | [readonly] -**sdkDeveloperFaqUrl** | **String** | Link to the developer FAQ | [readonly] -**sdkDiscordUrl** | **String** | Link to the official VRChat Discord | [readonly] -**sdkNotAllowedToPublishMessage** | **String** | Used in the SDK to notify a user they aren't allowed to upload avatars/worlds yet | [readonly] -**sdkUnityVersion** | **String** | Unity version supported by the SDK | [readonly] -**serverName** | **String** | Server name of the API server currently responding | [readonly] -**supportEmail** | **String** | VRChat's support email | [readonly] -**timeOutWorldId** | **String** | | -**tutorialWorldId** | **String** | | -**updateRateMsMaximum** | **Number** | Unknown | [readonly] -**updateRateMsMinimum** | **Number** | Unknown | [readonly] -**updateRateMsNormal** | **Number** | Unknown | [readonly] -**updateRateMsUdonManual** | **Number** | Unknown | [readonly] -**uploadAnalysisPercent** | **Number** | Unknown | [readonly] -**urlList** | **[String]** | List of allowed URLs that bypass the \"Allow untrusted URL's\" setting in-game | [readonly] -**useReliableUdpForVoice** | **Boolean** | Unknown | [default to false] -**userUpdatePeriod** | **Number** | Unknown | [readonly] -**userVerificationDelay** | **Number** | Unknown | [readonly] -**userVerificationRetry** | **Number** | Unknown | [readonly] -**userVerificationTimeout** | **Number** | Unknown | [readonly] -**viveWindowsUrl** | **String** | Download link for game on the Steam website. | [readonly] -**whiteListedAssetUrls** | **[String]** | List of allowed URLs that are allowed to host avatar assets | [readonly] -**worldUpdatePeriod** | **Number** | Unknown | [readonly] -**youtubedlHash** | **String** | Currently used youtube-dl.exe hash in SHA-256-delimited format | [readonly] -**youtubedlVersion** | **String** | Currently used youtube-dl.exe version | [readonly] - - diff --git a/docs/ConfigAnnouncements.md b/docs/ConfigAnnouncements.md deleted file mode 100644 index 863db9d..0000000 --- a/docs/ConfigAnnouncements.md +++ /dev/null @@ -1,10 +0,0 @@ -# vrchatapi.ConfigAnnouncements - -## Properties - -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**name** | **String** | Announcement name | [readonly] -**text** | **String** | Announcement text | [readonly] - - diff --git a/docs/ConfigDownloadUrls.md b/docs/ConfigDownloadUrls.md deleted file mode 100644 index ef5ecfc..0000000 --- a/docs/ConfigDownloadUrls.md +++ /dev/null @@ -1,11 +0,0 @@ -# vrchatapi.ConfigDownloadUrls - -## Properties - -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**sdk2** | **String** | Download link for legacy SDK2 | [readonly] -**sdk3Avatars** | **String** | Download link for SDK3 for Avatars | [readonly] -**sdk3Worlds** | **String** | Download link for SDK3 for Worlds | [readonly] - - diff --git a/docs/ConfigDynamicWorldRows.md b/docs/ConfigDynamicWorldRows.md deleted file mode 100644 index 063ad5f..0000000 --- a/docs/ConfigDynamicWorldRows.md +++ /dev/null @@ -1,15 +0,0 @@ -# vrchatapi.ConfigDynamicWorldRows - -## Properties - -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**index** | **Number** | | [readonly] -**name** | **String** | | [readonly] -**platform** | **String** | | [readonly] -**sortHeading** | **String** | | [readonly] -**sortOrder** | **String** | | [readonly] -**sortOwnership** | **String** | | [readonly] -**tag** | **String** | Tag to filter worlds for this row | [optional] [readonly] - - diff --git a/docs/ConfigEvents.md b/docs/ConfigEvents.md deleted file mode 100644 index 5db3cdc..0000000 --- a/docs/ConfigEvents.md +++ /dev/null @@ -1,18 +0,0 @@ -# vrchatapi.ConfigEvents - -## Properties - -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**distanceClose** | **Number** | Unknown | [readonly] -**distanceFactor** | **Number** | Unknown | [readonly] -**distanceFar** | **Number** | Unknown | [readonly] -**groupDistance** | **Number** | Unknown | [readonly] -**maximumBunchSize** | **Number** | Unknown | [readonly] -**notVisibleFactor** | **Number** | Unknown | [readonly] -**playerOrderBucketSize** | **Number** | Unknown | [readonly] -**playerOrderFactor** | **Number** | Unknown | [readonly] -**slowUpdateFactorThreshold** | **Number** | Unknown | [readonly] -**viewSegmentLength** | **Number** | Unknown | [readonly] - - diff --git a/docs/CurrentUser.md b/docs/CurrentUser.md deleted file mode 100644 index ba918f4..0000000 --- a/docs/CurrentUser.md +++ /dev/null @@ -1,54 +0,0 @@ -# vrchatapi.CurrentUser - -## Properties - -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**id** | **String** | | [readonly] -**username** | **String** | | -**displayName** | **String** | | -**userIcon** | **String** | | -**bio** | **String** | | -**bioLinks** | **[String]** | | -**profilePicOverride** | **String** | | -**statusDescription** | **String** | | -**pastDisplayNames** | **[String]** | | -**hasEmail** | **Boolean** | | -**hasPendingEmail** | **Boolean** | | -**obfuscatedEmail** | **String** | | -**obfuscatedPendingEmail** | **String** | | -**emailVerified** | **Boolean** | | -**hasBirthday** | **Boolean** | | -**unsubscribe** | **Boolean** | | -**statusHistory** | **[String]** | | -**statusFirstTime** | **Boolean** | | -**friends** | **[String]** | | -**friendGroupNames** | **[String]** | | -**currentAvatarImageUrl** | **String** | | -**currentAvatarThumbnailImageUrl** | **String** | | -**fallbackAvatar** | **String** | | -**currentAvatar** | **String** | | -**currentAvatarAssetUrl** | **String** | | -**accountDeletionDate** | **Date** | | [optional] -**acceptedTOSVersion** | **Number** | | -**steamId** | **String** | | -**steamDetails** | **Object** | | -**oculusId** | **String** | | -**hasLoggedInFromClient** | **Boolean** | | -**homeLocation** | **String** | | -**twoFactorAuthEnabled** | **Boolean** | | -**state** | [**UserState**](UserState.md) | | -**tags** | **[String]** | | -**developerType** | [**DeveloperType**](DeveloperType.md) | | -**lastLogin** | **Date** | | -**lastPlatform** | **String** | | -**allowAvatarCopying** | **Boolean** | | -**status** | [**UserStatus**](UserStatus.md) | | -**dateJoined** | **Date** | | [readonly] -**isFriend** | **Boolean** | | [default to false] -**friendKey** | **String** | | -**onlineFriends** | **[String]** | | -**activeFriends** | **[String]** | | -**offlineFriends** | **[String]** | | - - diff --git a/docs/DeploymentGroup.md b/docs/DeploymentGroup.md deleted file mode 100644 index 0781986..0000000 --- a/docs/DeploymentGroup.md +++ /dev/null @@ -1,14 +0,0 @@ -# vrchatapi.DeploymentGroup - -## Enum - - -* `blue` (value: `"blue"`) - -* `green` (value: `"green"`) - -* `grape` (value: `"grape"`) - -* `cherry` (value: `"cherry"`) - - diff --git a/docs/DeveloperType.md b/docs/DeveloperType.md deleted file mode 100644 index f524561..0000000 --- a/docs/DeveloperType.md +++ /dev/null @@ -1,14 +0,0 @@ -# vrchatapi.DeveloperType - -## Enum - - -* `none` (value: `"none"`) - -* `trusted` (value: `"trusted"`) - -* `internal` (value: `"internal"`) - -* `moderator` (value: `"moderator"`) - - diff --git a/docs/Error.md b/docs/Error.md deleted file mode 100644 index 08123f3..0000000 --- a/docs/Error.md +++ /dev/null @@ -1,9 +0,0 @@ -# vrchatapi.Error - -## Properties - -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**error** | [**Response**](Response.md) | | [optional] - - diff --git a/docs/File.md b/docs/File.md deleted file mode 100644 index 826fa14..0000000 --- a/docs/File.md +++ /dev/null @@ -1,15 +0,0 @@ -# vrchatapi.File - -## Properties - -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**id** | **String** | | -**name** | **String** | | -**ownerId** | **String** | | [readonly] -**mimeType** | [**MIMEType**](MIMEType.md) | | -**extension** | **String** | | -**tags** | **[String]** | | -**versions** | [**[FileVersion]**](FileVersion.md) | | - - diff --git a/docs/FileData.md b/docs/FileData.md deleted file mode 100644 index 04e3fc2..0000000 --- a/docs/FileData.md +++ /dev/null @@ -1,28 +0,0 @@ -# vrchatapi.FileData - -## Properties - -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**fileName** | **String** | | -**url** | **String** | | -**md5** | **String** | | -**sizeInBytes** | **Number** | | -**status** | [**FileStatus**](FileStatus.md) | | -**category** | **String** | | [readonly] -**uploadId** | **String** | | [default to ''] - - - -## Enum: CategoryEnum - - -* `multipart` (value: `"multipart"`) - -* `queued` (value: `"queued"`) - -* `simple` (value: `"simple"`) - - - - diff --git a/docs/FileStatus.md b/docs/FileStatus.md deleted file mode 100644 index 77ca0f3..0000000 --- a/docs/FileStatus.md +++ /dev/null @@ -1,12 +0,0 @@ -# vrchatapi.FileStatus - -## Enum - - -* `waiting` (value: `"waiting"`) - -* `complete` (value: `"complete"`) - -* `none` (value: `"none"`) - - diff --git a/docs/FileVersion.md b/docs/FileVersion.md deleted file mode 100644 index 0b6038a..0000000 --- a/docs/FileVersion.md +++ /dev/null @@ -1,15 +0,0 @@ -# vrchatapi.FileVersion - -## Properties - -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**version** | **Number** | Incremental version counter, can only be increased. | [default to 0] -**status** | [**FileStatus**](FileStatus.md) | | -**createdAt** | **Date** | | [readonly] -**file** | [**FileData**](FileData.md) | | [optional] -**delta** | [**FileData**](FileData.md) | | [optional] -**signature** | [**FileData**](FileData.md) | | [optional] -**deleted** | **Boolean** | Usually only present if `true` | [optional] [default to true] - - diff --git a/docs/FilesApi.md b/docs/FilesApi.md deleted file mode 100644 index c73b1f3..0000000 --- a/docs/FilesApi.md +++ /dev/null @@ -1,560 +0,0 @@ -# vrchatapi.FilesApi - -All URIs are relative to *https://api.vrchat.cloud/api/1* - -Method | HTTP request | Description -------------- | ------------- | ------------- -[**createFile**](FilesApi.md#createFile) | **POST** /file | Create File -[**createFileVersion**](FilesApi.md#createFileVersion) | **POST** /file/{fileId} | Create File Version -[**deleteFile**](FilesApi.md#deleteFile) | **DELETE** /file/{fileId} | Delete File -[**deleteFileVersion**](FilesApi.md#deleteFileVersion) | **DELETE** /file/{fileId}/{versionId} | Delete File Version -[**downloadFileVersion**](FilesApi.md#downloadFileVersion) | **GET** /file/{fileId}/{versionId} | Download File Version -[**finishFileDataUpload**](FilesApi.md#finishFileDataUpload) | **PUT** /file/{fileId}/{versionId}/{fileType}/finish | Finish FileData Upload -[**getFile**](FilesApi.md#getFile) | **GET** /file/{fileId} | Show File -[**getFileDataUploadStatus**](FilesApi.md#getFileDataUploadStatus) | **GET** /file/{fileId}/{versionId}/{fileType}/status | Check FileData Upload Status -[**getFiles**](FilesApi.md#getFiles) | **GET** /files | List Files -[**startFileDataUpload**](FilesApi.md#startFileDataUpload) | **PUT** /file/{fileId}/{versionId}/{fileType}/start | Start FileData Upload - - - -## createFile - -> File createFile(opts) - -Create File - -Creates a new File object - -### Example - -```javascript -import vrchatapi from 'vrchatapi'; -let defaultClient = vrchatapi.ApiClient.instance; -// Configure API key authorization: apiKeyCookie -let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; -apiKeyCookie.apiKey = 'YOUR API KEY'; -// Configure API key authorization: authCookie -let authCookie = defaultClient.authentications['authCookie']; -authCookie.apiKey = 'YOUR API KEY'; - -let apiInstance = new vrchatapi.FilesApi(); -let opts = { - 'inlineObject3': new vrchatapi.InlineObject3() // InlineObject3 | -}; -apiInstance.createFile(opts).then((data) => { - console.log('API called successfully. Returned data: ' + data); -}, (error) => { - console.error(error); -}); - -``` - -### Parameters - - -Name | Type | Description | Notes -------------- | ------------- | ------------- | ------------- - **inlineObject3** | [**InlineObject3**](InlineObject3.md)| | [optional] - -### Return type - -**File** - -### Authorization - -[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) - -### HTTP request headers - -- **Content-Type**: application/json -- **Accept**: application/json - - -## createFileVersion - -> File createFileVersion(fileId) - -Create File Version - -Creates a new FileVersion. Once a Version has been created, proceed to the `/file/{fileId}/{versionId}/file/start` endpoint to start a file upload. - -### Example - -```javascript -import vrchatapi from 'vrchatapi'; -let defaultClient = vrchatapi.ApiClient.instance; -// Configure API key authorization: apiKeyCookie -let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; -apiKeyCookie.apiKey = 'YOUR API KEY'; -// Configure API key authorization: authCookie -let authCookie = defaultClient.authentications['authCookie']; -authCookie.apiKey = 'YOUR API KEY'; - -let apiInstance = new vrchatapi.FilesApi(); -let fileId = file_00000000-0000-0000-0000-000000000000; // String | -apiInstance.createFileVersion(fileId).then((data) => { - console.log('API called successfully. Returned data: ' + data); -}, (error) => { - console.error(error); -}); - -``` - -### Parameters - - -Name | Type | Description | Notes -------------- | ------------- | ------------- | ------------- - **fileId** | **String**| | - -### Return type - -**File** - -### Authorization - -[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) - -### HTTP request headers - -- **Content-Type**: Not defined -- **Accept**: application/json - - -## deleteFile - -> Success deleteFile(fileId) - -Delete File - -Deletes a File object. - -### Example - -```javascript -import vrchatapi from 'vrchatapi'; -let defaultClient = vrchatapi.ApiClient.instance; -// Configure API key authorization: apiKeyCookie -let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; -apiKeyCookie.apiKey = 'YOUR API KEY'; -// Configure API key authorization: authCookie -let authCookie = defaultClient.authentications['authCookie']; -authCookie.apiKey = 'YOUR API KEY'; - -let apiInstance = new vrchatapi.FilesApi(); -let fileId = file_00000000-0000-0000-0000-000000000000; // String | -apiInstance.deleteFile(fileId).then((data) => { - console.log('API called successfully. Returned data: ' + data); -}, (error) => { - console.error(error); -}); - -``` - -### Parameters - - -Name | Type | Description | Notes -------------- | ------------- | ------------- | ------------- - **fileId** | **String**| | - -### Return type - -[**Success**](Success.md) - -### Authorization - -[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) - -### HTTP request headers - -- **Content-Type**: Not defined -- **Accept**: application/json - - -## deleteFileVersion - -> File deleteFileVersion(fileId, versionId) - -Delete File Version - -Delete a specific version of a file. You can only delete the latest version. - -### Example - -```javascript -import vrchatapi from 'vrchatapi'; -let defaultClient = vrchatapi.ApiClient.instance; -// Configure API key authorization: apiKeyCookie -let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; -apiKeyCookie.apiKey = 'YOUR API KEY'; -// Configure API key authorization: authCookie -let authCookie = defaultClient.authentications['authCookie']; -authCookie.apiKey = 'YOUR API KEY'; - -let apiInstance = new vrchatapi.FilesApi(); -let fileId = file_00000000-0000-0000-0000-000000000000; // String | -let versionId = 1; // Number | -apiInstance.deleteFileVersion(fileId, versionId).then((data) => { - console.log('API called successfully. Returned data: ' + data); -}, (error) => { - console.error(error); -}); - -``` - -### Parameters - - -Name | Type | Description | Notes -------------- | ------------- | ------------- | ------------- - **fileId** | **String**| | - **versionId** | **Number**| | - -### Return type - -**File** - -### Authorization - -[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) - -### HTTP request headers - -- **Content-Type**: Not defined -- **Accept**: application/json - - -## downloadFileVersion - -> downloadFileVersion(fileId, versionId) - -Download File Version - -Downloads the file with the provided version number. **Version Note:** Version 0 is always when the file was created. The real data is usually always located in version 1 and up. **Extension Note:** Files are not guaranteed to have a file extensions. UnityPackage files tends to have it, images through this endpoint do not. You are responsible for appending file extension from the `extension` field when neccesary. - -### Example - -```javascript -import vrchatapi from 'vrchatapi'; -let defaultClient = vrchatapi.ApiClient.instance; -// Configure API key authorization: apiKeyCookie -let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; -apiKeyCookie.apiKey = 'YOUR API KEY'; -// Configure API key authorization: authCookie -let authCookie = defaultClient.authentications['authCookie']; -authCookie.apiKey = 'YOUR API KEY'; - -let apiInstance = new vrchatapi.FilesApi(); -let fileId = file_00000000-0000-0000-0000-000000000000; // String | -let versionId = 1; // Number | -apiInstance.downloadFileVersion(fileId, versionId).then(() => { - console.log('API called successfully.'); -}, (error) => { - console.error(error); -}); - -``` - -### Parameters - - -Name | Type | Description | Notes -------------- | ------------- | ------------- | ------------- - **fileId** | **String**| | - **versionId** | **Number**| | - -### Return type - -null (empty response body) - -### Authorization - -[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) - -### HTTP request headers - -- **Content-Type**: Not defined -- **Accept**: Not defined - - -## finishFileDataUpload - -> File finishFileDataUpload(fileId, versionId, fileType, opts) - -Finish FileData Upload - -Finish an upload of a FileData. This will mark it as \"complete\". After uploading the `file` for Avatars and Worlds you then have to upload a `signature` file. - -### Example - -```javascript -import vrchatapi from 'vrchatapi'; -let defaultClient = vrchatapi.ApiClient.instance; -// Configure API key authorization: apiKeyCookie -let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; -apiKeyCookie.apiKey = 'YOUR API KEY'; -// Configure API key authorization: authCookie -let authCookie = defaultClient.authentications['authCookie']; -authCookie.apiKey = 'YOUR API KEY'; - -let apiInstance = new vrchatapi.FilesApi(); -let fileId = file_00000000-0000-0000-0000-000000000000; // String | -let versionId = 1; // Number | -let fileType = file; // String | -let opts = { - 'inlineObject4': new vrchatapi.InlineObject4() // InlineObject4 | -}; -apiInstance.finishFileDataUpload(fileId, versionId, fileType, opts).then((data) => { - console.log('API called successfully. Returned data: ' + data); -}, (error) => { - console.error(error); -}); - -``` - -### Parameters - - -Name | Type | Description | Notes -------------- | ------------- | ------------- | ------------- - **fileId** | **String**| | - **versionId** | **Number**| | - **fileType** | **String**| | - **inlineObject4** | [**InlineObject4**](InlineObject4.md)| | [optional] - -### Return type - -**File** - -### Authorization - -[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) - -### HTTP request headers - -- **Content-Type**: application/json -- **Accept**: application/json - - -## getFile - -> File getFile(fileId) - -Show File - -Shows general information about the \"File\" object. Each File can have several \"Version\"'s, and each Version can have multiple real files or \"Data\" blobs. - -### Example - -```javascript -import vrchatapi from 'vrchatapi'; -let defaultClient = vrchatapi.ApiClient.instance; -// Configure API key authorization: apiKeyCookie -let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; -apiKeyCookie.apiKey = 'YOUR API KEY'; -// Configure API key authorization: authCookie -let authCookie = defaultClient.authentications['authCookie']; -authCookie.apiKey = 'YOUR API KEY'; - -let apiInstance = new vrchatapi.FilesApi(); -let fileId = file_00000000-0000-0000-0000-000000000000; // String | -apiInstance.getFile(fileId).then((data) => { - console.log('API called successfully. Returned data: ' + data); -}, (error) => { - console.error(error); -}); - -``` - -### Parameters - - -Name | Type | Description | Notes -------------- | ------------- | ------------- | ------------- - **fileId** | **String**| | - -### Return type - -**File** - -### Authorization - -[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) - -### HTTP request headers - -- **Content-Type**: Not defined -- **Accept**: application/json - - -## getFileDataUploadStatus - -> InlineResponse2004 getFileDataUploadStatus(fileId, versionId, fileType) - -Check FileData Upload Status - -Retrieves the upload status for file upload. Can currently only be accessed when `status` is `waiting`. Trying to access it on a file version already uploaded currently times out. - -### Example - -```javascript -import vrchatapi from 'vrchatapi'; -let defaultClient = vrchatapi.ApiClient.instance; -// Configure API key authorization: apiKeyCookie -let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; -apiKeyCookie.apiKey = 'YOUR API KEY'; -// Configure API key authorization: authCookie -let authCookie = defaultClient.authentications['authCookie']; -authCookie.apiKey = 'YOUR API KEY'; - -let apiInstance = new vrchatapi.FilesApi(); -let fileId = file_00000000-0000-0000-0000-000000000000; // String | -let versionId = 1; // Number | -let fileType = file; // String | -apiInstance.getFileDataUploadStatus(fileId, versionId, fileType).then((data) => { - console.log('API called successfully. Returned data: ' + data); -}, (error) => { - console.error(error); -}); - -``` - -### Parameters - - -Name | Type | Description | Notes -------------- | ------------- | ------------- | ------------- - **fileId** | **String**| | - **versionId** | **Number**| | - **fileType** | **String**| | - -### Return type - -[**InlineResponse2004**](InlineResponse2004.md) - -### Authorization - -[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) - -### HTTP request headers - -- **Content-Type**: Not defined -- **Accept**: application/json - - -## getFiles - -> [File] getFiles(opts) - -List Files - -Returns a list of files - -### Example - -```javascript -import vrchatapi from 'vrchatapi'; -let defaultClient = vrchatapi.ApiClient.instance; -// Configure API key authorization: apiKeyCookie -let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; -apiKeyCookie.apiKey = 'YOUR API KEY'; -// Configure API key authorization: authCookie -let authCookie = defaultClient.authentications['authCookie']; -authCookie.apiKey = 'YOUR API KEY'; - -let apiInstance = new vrchatapi.FilesApi(); -let opts = { - 'tag': "tag_example", // String | Tag, for example \"icon\" or \"gallery\", not included by default. - 'userId': "userId_example", // String | UserID, will always generate a 500 permission error. - 'n': 60, // Number | The number of objects to return. - 'offset': 56 // Number | A zero-based offset from the default object sorting from where search results start. -}; -apiInstance.getFiles(opts).then((data) => { - console.log('API called successfully. Returned data: ' + data); -}, (error) => { - console.error(error); -}); - -``` - -### Parameters - - -Name | Type | Description | Notes -------------- | ------------- | ------------- | ------------- - **tag** | **String**| Tag, for example \"icon\" or \"gallery\", not included by default. | [optional] - **userId** | **String**| UserID, will always generate a 500 permission error. | [optional] - **n** | **Number**| The number of objects to return. | [optional] [default to 60] - **offset** | **Number**| A zero-based offset from the default object sorting from where search results start. | [optional] - -### Return type - -**[File]** - -### Authorization - -[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) - -### HTTP request headers - -- **Content-Type**: Not defined -- **Accept**: application/json - - -## startFileDataUpload - -> InlineResponse2005 startFileDataUpload(fileId, versionId, fileType, partNumber) - -Start FileData Upload - -Starts an upload of a specific FilePart. This endpoint will return an AWS URL which you can PUT data to. You need to call this and receive a new AWS API URL for each `partNumber`. Please see AWS's REST documentation on \"PUT Object to S3\" on how to upload. Once all parts has been uploaded, proceed to `/finish` endpoint. **Note:** `nextPartNumber` seems like it is always ignored. Despite it returning 0, first partNumber is always 1. - -### Example - -```javascript -import vrchatapi from 'vrchatapi'; -let defaultClient = vrchatapi.ApiClient.instance; -// Configure API key authorization: apiKeyCookie -let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; -apiKeyCookie.apiKey = 'YOUR API KEY'; -// Configure API key authorization: authCookie -let authCookie = defaultClient.authentications['authCookie']; -authCookie.apiKey = 'YOUR API KEY'; - -let apiInstance = new vrchatapi.FilesApi(); -let fileId = file_00000000-0000-0000-0000-000000000000; // String | -let versionId = 1; // Number | -let fileType = file; // String | -let partNumber = 1; // Number | -apiInstance.startFileDataUpload(fileId, versionId, fileType, partNumber).then((data) => { - console.log('API called successfully. Returned data: ' + data); -}, (error) => { - console.error(error); -}); - -``` - -### Parameters - - -Name | Type | Description | Notes -------------- | ------------- | ------------- | ------------- - **fileId** | **String**| | - **versionId** | **Number**| | - **fileType** | **String**| | - **partNumber** | **Number**| | - -### Return type - -[**InlineResponse2005**](InlineResponse2005.md) - -### Authorization - -[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) - -### HTTP request headers - -- **Content-Type**: Not defined -- **Accept**: application/json - diff --git a/docs/FriendsApi.md b/docs/FriendsApi.md deleted file mode 100644 index e14b27d..0000000 --- a/docs/FriendsApi.md +++ /dev/null @@ -1,274 +0,0 @@ -# vrchatapi.FriendsApi - -All URIs are relative to *https://api.vrchat.cloud/api/1* - -Method | HTTP request | Description -------------- | ------------- | ------------- -[**deleteFriendRequest**](FriendsApi.md#deleteFriendRequest) | **DELETE** /user/{userId}/friendRequest | Delete Friend Request -[**friend**](FriendsApi.md#friend) | **POST** /user/{userId}/friendRequest | Send Friend Request -[**getFriendStatus**](FriendsApi.md#getFriendStatus) | **GET** /user/{userId}/friendStatus | Check Friend Status -[**getFriends**](FriendsApi.md#getFriends) | **GET** /auth/user/friends | List Friends -[**unfriend**](FriendsApi.md#unfriend) | **DELETE** /auth/user/friends/{userId} | Unfriend - - - -## deleteFriendRequest - -> Success deleteFriendRequest(userId) - -Delete Friend Request - -Deletes an outgoing pending friend request to another user. To delete an incoming friend request, use the `deleteNotification` endpoint instead. - -### Example - -```javascript -import vrchatapi from 'vrchatapi'; -let defaultClient = vrchatapi.ApiClient.instance; -// Configure API key authorization: apiKeyCookie -let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; -apiKeyCookie.apiKey = 'YOUR API KEY'; -// Configure API key authorization: authCookie -let authCookie = defaultClient.authentications['authCookie']; -authCookie.apiKey = 'YOUR API KEY'; - -let apiInstance = new vrchatapi.FriendsApi(); -let userId = "userId_example"; // String | -apiInstance.deleteFriendRequest(userId).then((data) => { - console.log('API called successfully. Returned data: ' + data); -}, (error) => { - console.error(error); -}); - -``` - -### Parameters - - -Name | Type | Description | Notes -------------- | ------------- | ------------- | ------------- - **userId** | **String**| | - -### Return type - -[**Success**](Success.md) - -### Authorization - -[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) - -### HTTP request headers - -- **Content-Type**: Not defined -- **Accept**: application/json - - -## friend - -> Notification friend(userId) - -Send Friend Request - -Send a friend request to another user. - -### Example - -```javascript -import vrchatapi from 'vrchatapi'; -let defaultClient = vrchatapi.ApiClient.instance; -// Configure API key authorization: apiKeyCookie -let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; -apiKeyCookie.apiKey = 'YOUR API KEY'; -// Configure API key authorization: authCookie -let authCookie = defaultClient.authentications['authCookie']; -authCookie.apiKey = 'YOUR API KEY'; - -let apiInstance = new vrchatapi.FriendsApi(); -let userId = "userId_example"; // String | -apiInstance.friend(userId).then((data) => { - console.log('API called successfully. Returned data: ' + data); -}, (error) => { - console.error(error); -}); - -``` - -### Parameters - - -Name | Type | Description | Notes -------------- | ------------- | ------------- | ------------- - **userId** | **String**| | - -### Return type - -[**Notification**](Notification.md) - -### Authorization - -[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) - -### HTTP request headers - -- **Content-Type**: Not defined -- **Accept**: application/json - - -## getFriendStatus - -> InlineResponse2003 getFriendStatus(userId) - -Check Friend Status - -Retrieve if the user is currently a friend with a given user, if they have an outgoing friend request, and if they have an incoming friend request. The proper way to receive and accept friend request is by checking if the user has an incoming `Notification` of type `friendRequest`, and then accepting that notification. - -### Example - -```javascript -import vrchatapi from 'vrchatapi'; -let defaultClient = vrchatapi.ApiClient.instance; -// Configure API key authorization: apiKeyCookie -let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; -apiKeyCookie.apiKey = 'YOUR API KEY'; -// Configure API key authorization: authCookie -let authCookie = defaultClient.authentications['authCookie']; -authCookie.apiKey = 'YOUR API KEY'; - -let apiInstance = new vrchatapi.FriendsApi(); -let userId = "userId_example"; // String | -apiInstance.getFriendStatus(userId).then((data) => { - console.log('API called successfully. Returned data: ' + data); -}, (error) => { - console.error(error); -}); - -``` - -### Parameters - - -Name | Type | Description | Notes -------------- | ------------- | ------------- | ------------- - **userId** | **String**| | - -### Return type - -[**InlineResponse2003**](InlineResponse2003.md) - -### Authorization - -[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) - -### HTTP request headers - -- **Content-Type**: Not defined -- **Accept**: application/json - - -## getFriends - -> [LimitedUser] getFriends(opts) - -List Friends - -List information about friends. - -### Example - -```javascript -import vrchatapi from 'vrchatapi'; -let defaultClient = vrchatapi.ApiClient.instance; -// Configure API key authorization: apiKeyCookie -let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; -apiKeyCookie.apiKey = 'YOUR API KEY'; -// Configure API key authorization: authCookie -let authCookie = defaultClient.authentications['authCookie']; -authCookie.apiKey = 'YOUR API KEY'; - -let apiInstance = new vrchatapi.FriendsApi(); -let opts = { - 'offset': 56, // Number | A zero-based offset from the default object sorting from where search results start. - 'n': 60, // Number | The number of objects to return. - 'offline': true // Boolean | Returns *only* offline users if true, returns only online and active users if false -}; -apiInstance.getFriends(opts).then((data) => { - console.log('API called successfully. Returned data: ' + data); -}, (error) => { - console.error(error); -}); - -``` - -### Parameters - - -Name | Type | Description | Notes -------------- | ------------- | ------------- | ------------- - **offset** | **Number**| A zero-based offset from the default object sorting from where search results start. | [optional] - **n** | **Number**| The number of objects to return. | [optional] [default to 60] - **offline** | **Boolean**| Returns *only* offline users if true, returns only online and active users if false | [optional] - -### Return type - -[**[LimitedUser]**](LimitedUser.md) - -### Authorization - -[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) - -### HTTP request headers - -- **Content-Type**: Not defined -- **Accept**: application/json - - -## unfriend - -> Success unfriend(userId) - -Unfriend - -Unfriend a user by ID. - -### Example - -```javascript -import vrchatapi from 'vrchatapi'; -let defaultClient = vrchatapi.ApiClient.instance; -// Configure API key authorization: apiKeyCookie -let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; -apiKeyCookie.apiKey = 'YOUR API KEY'; -// Configure API key authorization: authCookie -let authCookie = defaultClient.authentications['authCookie']; -authCookie.apiKey = 'YOUR API KEY'; - -let apiInstance = new vrchatapi.FriendsApi(); -let userId = "userId_example"; // String | -apiInstance.unfriend(userId).then((data) => { - console.log('API called successfully. Returned data: ' + data); -}, (error) => { - console.error(error); -}); - -``` - -### Parameters - - -Name | Type | Description | Notes -------------- | ------------- | ------------- | ------------- - **userId** | **String**| | - -### Return type - -[**Success**](Success.md) - -### Authorization - -[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) - -### HTTP request headers - -- **Content-Type**: Not defined -- **Accept**: application/json - diff --git a/docs/InlineObject.md b/docs/InlineObject.md deleted file mode 100644 index ba2a497..0000000 --- a/docs/InlineObject.md +++ /dev/null @@ -1,9 +0,0 @@ -# vrchatapi.InlineObject - -## Properties - -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**code** | **String** | | - - diff --git a/docs/InlineObject1.md b/docs/InlineObject1.md deleted file mode 100644 index 9e86a8e..0000000 --- a/docs/InlineObject1.md +++ /dev/null @@ -1,9 +0,0 @@ -# vrchatapi.InlineObject1 - -## Properties - -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**code** | **String** | | - - diff --git a/docs/InlineObject2.md b/docs/InlineObject2.md deleted file mode 100644 index 3889d19..0000000 --- a/docs/InlineObject2.md +++ /dev/null @@ -1,17 +0,0 @@ -# vrchatapi.InlineObject2 - -## Properties - -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**email** | **String** | | [optional] -**birthday** | **Date** | | [optional] -**acceptedTOSVersion** | **Number** | | [optional] -**tags** | **[String]** | | [optional] -**status** | [**UserStatus**](UserStatus.md) | | [optional] -**statusDescription** | **String** | | [optional] -**bio** | **String** | | [optional] -**bioLinks** | **[String]** | | [optional] -**userIcon** | **String** | MUST be a valid VRChat /file/ url. | [optional] - - diff --git a/docs/InlineObject3.md b/docs/InlineObject3.md deleted file mode 100644 index 58857cc..0000000 --- a/docs/InlineObject3.md +++ /dev/null @@ -1,12 +0,0 @@ -# vrchatapi.InlineObject3 - -## Properties - -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**name** | **String** | | -**mimeType** | [**MIMEType**](MIMEType.md) | | -**extension** | **String** | | -**tags** | **[String]** | | [optional] - - diff --git a/docs/InlineObject4.md b/docs/InlineObject4.md deleted file mode 100644 index d3e5f5b..0000000 --- a/docs/InlineObject4.md +++ /dev/null @@ -1,29 +0,0 @@ -# vrchatapi.InlineObject4 - -## Properties - -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**etags** | **[String]** | Array of ETags uploaded. | [optional] -**nextPartNumber** | **String** | Always a zero in string form, despite how many parts uploaded. | [default to '0'] -**maxParts** | **String** | Always a zero in string form, despite how many parts uploaded. | [default to '0'] - - - -## Enum: NextPartNumberEnum - - -* `0` (value: `"0"`) - - - - - -## Enum: MaxPartsEnum - - -* `0` (value: `"0"`) - - - - diff --git a/docs/InlineResponse200.md b/docs/InlineResponse200.md deleted file mode 100644 index 32871ea..0000000 --- a/docs/InlineResponse200.md +++ /dev/null @@ -1,10 +0,0 @@ -# vrchatapi.InlineResponse200 - -## Properties - -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**ok** | **Boolean** | | -**token** | **String** | | - - diff --git a/docs/InlineResponse2001.md b/docs/InlineResponse2001.md deleted file mode 100644 index 1932822..0000000 --- a/docs/InlineResponse2001.md +++ /dev/null @@ -1,9 +0,0 @@ -# vrchatapi.InlineResponse2001 - -## Properties - -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**verified** | **Boolean** | | - - diff --git a/docs/InlineResponse2002.md b/docs/InlineResponse2002.md deleted file mode 100644 index b2a3e86..0000000 --- a/docs/InlineResponse2002.md +++ /dev/null @@ -1,11 +0,0 @@ -# vrchatapi.InlineResponse2002 - -## Properties - -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**ok** | **Boolean** | | -**serverName** | **String** | | -**buildVersionTag** | **String** | | - - diff --git a/docs/InlineResponse2003.md b/docs/InlineResponse2003.md deleted file mode 100644 index 7227f1d..0000000 --- a/docs/InlineResponse2003.md +++ /dev/null @@ -1,11 +0,0 @@ -# vrchatapi.InlineResponse2003 - -## Properties - -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**isFriend** | **Boolean** | | [default to false] -**outgoingRequest** | **Boolean** | | [default to false] -**incomingRequest** | **Boolean** | | [default to false] - - diff --git a/docs/InlineResponse2004.md b/docs/InlineResponse2004.md deleted file mode 100644 index f155f82..0000000 --- a/docs/InlineResponse2004.md +++ /dev/null @@ -1,14 +0,0 @@ -# vrchatapi.InlineResponse2004 - -## Properties - -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**uploadId** | **String** | | [readonly] -**fileName** | **String** | | [readonly] -**nextPartNumber** | **Number** | | [readonly] -**maxParts** | **Number** | | [readonly] -**parts** | **[Object]** | | [readonly] -**etags** | **[Object]** | Unknown | [readonly] - - diff --git a/docs/InlineResponse2005.md b/docs/InlineResponse2005.md deleted file mode 100644 index c62e70a..0000000 --- a/docs/InlineResponse2005.md +++ /dev/null @@ -1,9 +0,0 @@ -# vrchatapi.InlineResponse2005 - -## Properties - -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**url** | **String** | | - - diff --git a/docs/InlineResponse401.md b/docs/InlineResponse401.md deleted file mode 100644 index 937d895..0000000 --- a/docs/InlineResponse401.md +++ /dev/null @@ -1,9 +0,0 @@ -# vrchatapi.InlineResponse401 - -## Properties - -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**error** | [**Error**](Error.md) | | - - diff --git a/docs/LimitedUser.md b/docs/LimitedUser.md deleted file mode 100644 index 64b87de..0000000 --- a/docs/LimitedUser.md +++ /dev/null @@ -1,24 +0,0 @@ -# vrchatapi.LimitedUser - -## Properties - -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**id** | **String** | | [readonly] -**username** | **String** | | -**displayName** | **String** | | -**bio** | **String** | | [optional] -**userIcon** | **String** | | -**profilePicOverride** | **String** | | -**statusDescription** | **String** | | -**currentAvatarImageUrl** | **String** | | -**currentAvatarThumbnailImageUrl** | **String** | | -**fallbackAvatar** | **String** | | -**developerType** | [**DeveloperType**](DeveloperType.md) | | -**lastPlatform** | **String** | | -**status** | [**UserStatus**](UserStatus.md) | | -**isFriend** | **Boolean** | | -**location** | **String** | | -**tags** | **[String]** | Always empty | - - diff --git a/docs/LimitedWorld.md b/docs/LimitedWorld.md deleted file mode 100644 index 8cf895b..0000000 --- a/docs/LimitedWorld.md +++ /dev/null @@ -1,27 +0,0 @@ -# vrchatapi.LimitedWorld - -## Properties - -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**authorId** | **String** | | [readonly] -**authorName** | **String** | | -**capacity** | **Number** | | -**createdAt** | **Date** | | [optional] -**favorites** | **Number** | | -**heat** | **Number** | | -**id** | **String** | | -**imageUrl** | **String** | | -**labsPublicationDate** | **String** | | [optional] -**name** | **String** | | -**occupants** | **Number** | | [optional] -**organization** | **String** | | -**popularity** | **Number** | | -**publicationDate** | **String** | | -**releaseStatus** | [**ReleaseStatus**](ReleaseStatus.md) | | -**tags** | **[String]** | | -**thumbnailImageUrl** | **String** | | -**unityPackages** | **[Object]** | | -**updatedAt** | **Date** | | [optional] - - diff --git a/docs/MIMEType.md b/docs/MIMEType.md deleted file mode 100644 index 7c0c94d..0000000 --- a/docs/MIMEType.md +++ /dev/null @@ -1,34 +0,0 @@ -# vrchatapi.MIMEType - -## Enum - - -* `image⁄jpeg` (value: `"image⁄jpeg"`) - -* `image⁄jpg` (value: `"image⁄jpg"`) - -* `image⁄png` (value: `"image⁄png"`) - -* `image⁄webp` (value: `"image⁄webp"`) - -* `image⁄gif` (value: `"image⁄gif"`) - -* `image⁄bmp` (value: `"image⁄bmp"`) - -* `image⁄svg+xml` (value: `"image⁄svg+xml"`) - -* `image⁄tiff` (value: `"image⁄tiff"`) - -* `application⁄x-avatar` (value: `"application⁄x-avatar"`) - -* `application⁄x-world` (value: `"application⁄x-world"`) - -* `application⁄gzip` (value: `"application⁄gzip"`) - -* `application/x-rsync-signature` (value: `"application/x-rsync-signature"`) - -* `application/x-rsync-delta` (value: `"application/x-rsync-delta"`) - -* `application/octet-stream` (value: `"application/octet-stream"`) - - diff --git a/docs/Notification.md b/docs/Notification.md deleted file mode 100644 index 89f9f6d..0000000 --- a/docs/Notification.md +++ /dev/null @@ -1,16 +0,0 @@ -# vrchatapi.Notification - -## Properties - -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**id** | **String** | | -**senderUserId** | **String** | | [readonly] -**senderUsername** | **String** | | -**type** | [**NotificationType**](NotificationType.md) | | -**message** | **String** | | -**details** | **String** | **NOTICE:** This is not a JSON object, this is a json **encoded** object, meaning you have to json-de-encode to get the NotificationDetail object depending on the NotificationType. | [default to '{}'] -**seen** | **Boolean** | | [default to false] -**createdAt** | **Date** | | [readonly] - - diff --git a/docs/NotificationType.md b/docs/NotificationType.md deleted file mode 100644 index a8ea8c7..0000000 --- a/docs/NotificationType.md +++ /dev/null @@ -1,20 +0,0 @@ -# vrchatapi.NotificationType - -## Enum - - -* `all` (value: `"all"`) - -* `broadcast` (value: `"broadcast"`) - -* `friendRequest` (value: `"friendRequest"`) - -* `invite` (value: `"invite"`) - -* `message` (value: `"message"`) - -* `RequestInvite` (value: `"RequestInvite"`) - -* `votetokick` (value: `"votetokick"`) - - diff --git a/docs/NotificationsApi.md b/docs/NotificationsApi.md deleted file mode 100644 index 4c95615..0000000 --- a/docs/NotificationsApi.md +++ /dev/null @@ -1,276 +0,0 @@ -# vrchatapi.NotificationsApi - -All URIs are relative to *https://api.vrchat.cloud/api/1* - -Method | HTTP request | Description -------------- | ------------- | ------------- -[**acceptFriendRequest**](NotificationsApi.md#acceptFriendRequest) | **PUT** /auth/user/notifications/{notificationId}/accept | Accept Friend Request -[**clearNotifications**](NotificationsApi.md#clearNotifications) | **PUT** /auth/user/notifications/clear | Clear All Notifications -[**deleteNotification**](NotificationsApi.md#deleteNotification) | **PUT** /auth/user/notifications/{notificationId}/hide | Delete Notification -[**getNotifications**](NotificationsApi.md#getNotifications) | **GET** /auth/user/notifications | List Notifications -[**markNotificationAsRead**](NotificationsApi.md#markNotificationAsRead) | **PUT** /auth/user/notifications/{notificationId}/see | Mark As Read - - - -## acceptFriendRequest - -> Success acceptFriendRequest(notificationId) - -Accept Friend Request - -Accept a friend request by notification `frq_` ID. Friend requests can be found using the NotificationsAPI `getNotifications` by filtering of type `friendRequest`. - -### Example - -```javascript -import vrchatapi from 'vrchatapi'; -let defaultClient = vrchatapi.ApiClient.instance; -// Configure API key authorization: apiKeyCookie -let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; -apiKeyCookie.apiKey = 'YOUR API KEY'; -// Configure API key authorization: authCookie -let authCookie = defaultClient.authentications['authCookie']; -authCookie.apiKey = 'YOUR API KEY'; - -let apiInstance = new vrchatapi.NotificationsApi(); -let notificationId = "notificationId_example"; // String | -apiInstance.acceptFriendRequest(notificationId).then((data) => { - console.log('API called successfully. Returned data: ' + data); -}, (error) => { - console.error(error); -}); - -``` - -### Parameters - - -Name | Type | Description | Notes -------------- | ------------- | ------------- | ------------- - **notificationId** | **String**| | - -### Return type - -[**Success**](Success.md) - -### Authorization - -[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) - -### HTTP request headers - -- **Content-Type**: Not defined -- **Accept**: application/json - - -## clearNotifications - -> Success clearNotifications() - -Clear All Notifications - -Clear **all** notifications. - -### Example - -```javascript -import vrchatapi from 'vrchatapi'; -let defaultClient = vrchatapi.ApiClient.instance; -// Configure API key authorization: apiKeyCookie -let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; -apiKeyCookie.apiKey = 'YOUR API KEY'; -// Configure API key authorization: authCookie -let authCookie = defaultClient.authentications['authCookie']; -authCookie.apiKey = 'YOUR API KEY'; - -let apiInstance = new vrchatapi.NotificationsApi(); -apiInstance.clearNotifications().then((data) => { - console.log('API called successfully. Returned data: ' + data); -}, (error) => { - console.error(error); -}); - -``` - -### Parameters - -This endpoint does not need any parameter. - -### Return type - -[**Success**](Success.md) - -### Authorization - -[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) - -### HTTP request headers - -- **Content-Type**: Not defined -- **Accept**: application/json - - -## deleteNotification - -> Notification deleteNotification(notificationId) - -Delete Notification - -Delete a notification. - -### Example - -```javascript -import vrchatapi from 'vrchatapi'; -let defaultClient = vrchatapi.ApiClient.instance; -// Configure API key authorization: apiKeyCookie -let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; -apiKeyCookie.apiKey = 'YOUR API KEY'; -// Configure API key authorization: authCookie -let authCookie = defaultClient.authentications['authCookie']; -authCookie.apiKey = 'YOUR API KEY'; - -let apiInstance = new vrchatapi.NotificationsApi(); -let notificationId = "notificationId_example"; // String | -apiInstance.deleteNotification(notificationId).then((data) => { - console.log('API called successfully. Returned data: ' + data); -}, (error) => { - console.error(error); -}); - -``` - -### Parameters - - -Name | Type | Description | Notes -------------- | ------------- | ------------- | ------------- - **notificationId** | **String**| | - -### Return type - -[**Notification**](Notification.md) - -### Authorization - -[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) - -### HTTP request headers - -- **Content-Type**: Not defined -- **Accept**: application/json - - -## getNotifications - -> [Notification] getNotifications(opts) - -List Notifications - -Retrieve all of the current user's notifications. - -### Example - -```javascript -import vrchatapi from 'vrchatapi'; -let defaultClient = vrchatapi.ApiClient.instance; -// Configure API key authorization: apiKeyCookie -let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; -apiKeyCookie.apiKey = 'YOUR API KEY'; -// Configure API key authorization: authCookie -let authCookie = defaultClient.authentications['authCookie']; -authCookie.apiKey = 'YOUR API KEY'; - -let apiInstance = new vrchatapi.NotificationsApi(); -let opts = { - 'type': all, // String | Only send notifications of this type (can use `all` for all). - 'sent': true, // Boolean | Return notifications sent by the user. Must be false or omitted. - 'hidden': true, // Boolean | Whether to return hidden or non-hidden notifications. True only allowed on type `friendRequest`. - 'after': five_minutes_ago, // String | Only return notifications sent after this Date. Ignored if type is `friendRequest`. - 'n': 60, // Number | The number of objects to return. - 'offset': 56 // Number | A zero-based offset from the default object sorting from where search results start. -}; -apiInstance.getNotifications(opts).then((data) => { - console.log('API called successfully. Returned data: ' + data); -}, (error) => { - console.error(error); -}); - -``` - -### Parameters - - -Name | Type | Description | Notes -------------- | ------------- | ------------- | ------------- - **type** | **String**| Only send notifications of this type (can use `all` for all). | [optional] - **sent** | **Boolean**| Return notifications sent by the user. Must be false or omitted. | [optional] - **hidden** | **Boolean**| Whether to return hidden or non-hidden notifications. True only allowed on type `friendRequest`. | [optional] - **after** | **String**| Only return notifications sent after this Date. Ignored if type is `friendRequest`. | [optional] - **n** | **Number**| The number of objects to return. | [optional] [default to 60] - **offset** | **Number**| A zero-based offset from the default object sorting from where search results start. | [optional] - -### Return type - -[**[Notification]**](Notification.md) - -### Authorization - -[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) - -### HTTP request headers - -- **Content-Type**: Not defined -- **Accept**: application/json - - -## markNotificationAsRead - -> Notification markNotificationAsRead(notificationId) - -Mark As Read - -Mark a notification as seen. - -### Example - -```javascript -import vrchatapi from 'vrchatapi'; -let defaultClient = vrchatapi.ApiClient.instance; -// Configure API key authorization: apiKeyCookie -let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; -apiKeyCookie.apiKey = 'YOUR API KEY'; -// Configure API key authorization: authCookie -let authCookie = defaultClient.authentications['authCookie']; -authCookie.apiKey = 'YOUR API KEY'; - -let apiInstance = new vrchatapi.NotificationsApi(); -let notificationId = "notificationId_example"; // String | -apiInstance.markNotificationAsRead(notificationId).then((data) => { - console.log('API called successfully. Returned data: ' + data); -}, (error) => { - console.error(error); -}); - -``` - -### Parameters - - -Name | Type | Description | Notes -------------- | ------------- | ------------- | ------------- - **notificationId** | **String**| | - -### Return type - -[**Notification**](Notification.md) - -### Authorization - -[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) - -### HTTP request headers - -- **Content-Type**: Not defined -- **Accept**: application/json - diff --git a/docs/ReleaseStatus.md b/docs/ReleaseStatus.md deleted file mode 100644 index f86cd7d..0000000 --- a/docs/ReleaseStatus.md +++ /dev/null @@ -1,12 +0,0 @@ -# vrchatapi.ReleaseStatus - -## Enum - - -* `public` (value: `"public"`) - -* `private` (value: `"private"`) - -* `hidden` (value: `"hidden"`) - - diff --git a/docs/Response.md b/docs/Response.md deleted file mode 100644 index e7224c1..0000000 --- a/docs/Response.md +++ /dev/null @@ -1,10 +0,0 @@ -# vrchatapi.Response - -## Properties - -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**message** | **String** | | -**statusCode** | **Number** | | - - diff --git a/docs/Success.md b/docs/Success.md deleted file mode 100644 index 5cb6ce8..0000000 --- a/docs/Success.md +++ /dev/null @@ -1,9 +0,0 @@ -# vrchatapi.Success - -## Properties - -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**success** | [**Response**](Response.md) | | [optional] - - diff --git a/docs/SystemApi.md b/docs/SystemApi.md deleted file mode 100644 index a1a6914..0000000 --- a/docs/SystemApi.md +++ /dev/null @@ -1,172 +0,0 @@ -# vrchatapi.SystemApi - -All URIs are relative to *https://api.vrchat.cloud/api/1* - -Method | HTTP request | Description -------------- | ------------- | ------------- -[**getConfig**](SystemApi.md#getConfig) | **GET** /config | Fetch API Config -[**getCurrentOnlineUsers**](SystemApi.md#getCurrentOnlineUsers) | **GET** /visits | Current Online Users -[**getHealth**](SystemApi.md#getHealth) | **GET** /health | Check API Health -[**getSystemTime**](SystemApi.md#getSystemTime) | **GET** /time | Current System Time - - - -## getConfig - -> Config getConfig() - -Fetch API Config - -API config contains configuration that the clients needs to work properly. Currently the most important value here is `clientApiKey` which is used for all other API endpoints. - -### Example - -```javascript -import vrchatapi from 'vrchatapi'; - -let apiInstance = new vrchatapi.SystemApi(); -apiInstance.getConfig().then((data) => { - console.log('API called successfully. Returned data: ' + data); -}, (error) => { - console.error(error); -}); - -``` - -### Parameters - -This endpoint does not need any parameter. - -### Return type - -[**Config**](Config.md) - -### Authorization - -No authorization required - -### HTTP request headers - -- **Content-Type**: Not defined -- **Accept**: application/json - - -## getCurrentOnlineUsers - -> Number getCurrentOnlineUsers() - -Current Online Users - -Returns in plain format the number of currently online users. **NOTE:** The response type is not of JSON, but is an integer in plain ASCII format. - -### Example - -```javascript -import vrchatapi from 'vrchatapi'; - -let apiInstance = new vrchatapi.SystemApi(); -apiInstance.getCurrentOnlineUsers().then((data) => { - console.log('API called successfully. Returned data: ' + data); -}, (error) => { - console.error(error); -}); - -``` - -### Parameters - -This endpoint does not need any parameter. - -### Return type - -**Number** - -### Authorization - -No authorization required - -### HTTP request headers - -- **Content-Type**: Not defined -- **Accept**: text/plain - - -## getHealth - -> InlineResponse2002 getHealth() - -Check API Health - -Gets the overall health status, the server name, and the current build version tag of the API. - -### Example - -```javascript -import vrchatapi from 'vrchatapi'; - -let apiInstance = new vrchatapi.SystemApi(); -apiInstance.getHealth().then((data) => { - console.log('API called successfully. Returned data: ' + data); -}, (error) => { - console.error(error); -}); - -``` - -### Parameters - -This endpoint does not need any parameter. - -### Return type - -[**InlineResponse2002**](InlineResponse2002.md) - -### Authorization - -No authorization required - -### HTTP request headers - -- **Content-Type**: Not defined -- **Accept**: application/json - - -## getSystemTime - -> Date getSystemTime() - -Current System Time - -Returns in plain format the current time of the API server. **NOTE:** The response type is not of JSON, but is a string in plain ASCII format. - -### Example - -```javascript -import vrchatapi from 'vrchatapi'; - -let apiInstance = new vrchatapi.SystemApi(); -apiInstance.getSystemTime().then((data) => { - console.log('API called successfully. Returned data: ' + data); -}, (error) => { - console.error(error); -}); - -``` - -### Parameters - -This endpoint does not need any parameter. - -### Return type - -**Date** - -### Authorization - -No authorization required - -### HTTP request headers - -- **Content-Type**: Not defined -- **Accept**: text/plain - diff --git a/docs/User.md b/docs/User.md deleted file mode 100644 index 5ea8e68..0000000 --- a/docs/User.md +++ /dev/null @@ -1,32 +0,0 @@ -# vrchatapi.User - -## Properties - -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- -**id** | **String** | | [readonly] -**username** | **String** | | -**displayName** | **String** | | -**userIcon** | **String** | | -**bio** | **String** | | -**bioLinks** | **[String]** | | -**profilePicOverride** | **String** | | -**statusDescription** | **String** | | -**currentAvatarImageUrl** | **String** | | -**currentAvatarThumbnailImageUrl** | **String** | | -**fallbackAvatar** | **String** | | -**state** | [**UserState**](UserState.md) | | -**tags** | **[String]** | | -**developerType** | [**DeveloperType**](DeveloperType.md) | | -**lastLogin** | **Date** | | -**lastPlatform** | **String** | | -**allowAvatarCopying** | **Boolean** | | -**status** | [**UserStatus**](UserStatus.md) | | -**dateJoined** | **Date** | | [readonly] -**isFriend** | **Boolean** | | -**friendKey** | **String** | | -**worldId** | **String** | | [optional] -**instanceId** | **String** | | [optional] -**location** | **String** | | [optional] - - diff --git a/docs/UserState.md b/docs/UserState.md deleted file mode 100644 index bdfd54b..0000000 --- a/docs/UserState.md +++ /dev/null @@ -1,12 +0,0 @@ -# vrchatapi.UserState - -## Enum - - -* `offline` (value: `"offline"`) - -* `active` (value: `"active"`) - -* `online` (value: `"online"`) - - diff --git a/docs/UserStatus.md b/docs/UserStatus.md deleted file mode 100644 index e8b7de0..0000000 --- a/docs/UserStatus.md +++ /dev/null @@ -1,16 +0,0 @@ -# vrchatapi.UserStatus - -## Enum - - -* `active` (value: `"active"`) - -* `join me` (value: `"join me"`) - -* `ask me` (value: `"ask me"`) - -* `busy` (value: `"busy"`) - -* `offline` (value: `"offline"`) - - diff --git a/docs/UsersApi.md b/docs/UsersApi.md deleted file mode 100644 index ef3b8f7..0000000 --- a/docs/UsersApi.md +++ /dev/null @@ -1,288 +0,0 @@ -# vrchatapi.UsersApi - -All URIs are relative to *https://api.vrchat.cloud/api/1* - -Method | HTTP request | Description -------------- | ------------- | ------------- -[**getUser**](UsersApi.md#getUser) | **GET** /users/{userId} | Get User by ID -[**getUserByName**](UsersApi.md#getUserByName) | **GET** /users/{username}/name | Get User by Username -[**searchActiveUsers**](UsersApi.md#searchActiveUsers) | **GET** /users/active | Search Active Users -[**searchUsers**](UsersApi.md#searchUsers) | **GET** /users | Search All Users -[**updateUser**](UsersApi.md#updateUser) | **PUT** /users/{userId} | Update User Info - - - -## getUser - -> User getUser(userId) - -Get User by ID - -Get public user information about a specific user using their ID. - -### Example - -```javascript -import vrchatapi from 'vrchatapi'; -let defaultClient = vrchatapi.ApiClient.instance; -// Configure API key authorization: apiKeyCookie -let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; -apiKeyCookie.apiKey = 'YOUR API KEY'; -// Configure API key authorization: authCookie -let authCookie = defaultClient.authentications['authCookie']; -authCookie.apiKey = 'YOUR API KEY'; - -let apiInstance = new vrchatapi.UsersApi(); -let userId = "userId_example"; // String | -apiInstance.getUser(userId).then((data) => { - console.log('API called successfully. Returned data: ' + data); -}, (error) => { - console.error(error); -}); - -``` - -### Parameters - - -Name | Type | Description | Notes -------------- | ------------- | ------------- | ------------- - **userId** | **String**| | - -### Return type - -[**User**](User.md) - -### Authorization - -[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) - -### HTTP request headers - -- **Content-Type**: Not defined -- **Accept**: application/json - - -## getUserByName - -> User getUserByName(username) - -Get User by Username - -Get public user information about a specific user using their name. - -### Example - -```javascript -import vrchatapi from 'vrchatapi'; -let defaultClient = vrchatapi.ApiClient.instance; -// Configure API key authorization: apiKeyCookie -let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; -apiKeyCookie.apiKey = 'YOUR API KEY'; -// Configure API key authorization: authCookie -let authCookie = defaultClient.authentications['authCookie']; -authCookie.apiKey = 'YOUR API KEY'; - -let apiInstance = new vrchatapi.UsersApi(); -let username = "username_example"; // String | -apiInstance.getUserByName(username).then((data) => { - console.log('API called successfully. Returned data: ' + data); -}, (error) => { - console.error(error); -}); - -``` - -### Parameters - - -Name | Type | Description | Notes -------------- | ------------- | ------------- | ------------- - **username** | **String**| | - -### Return type - -[**User**](User.md) - -### Authorization - -[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) - -### HTTP request headers - -- **Content-Type**: Not defined -- **Accept**: application/json - - -## searchActiveUsers - -> [LimitedUser] searchActiveUsers(search, opts) - -Search Active Users - -Search and list any Active users by text query. **Has been locked down and now always respond with \"Invalid Admin Credentials\".** - -### Example - -```javascript -import vrchatapi from 'vrchatapi'; -let defaultClient = vrchatapi.ApiClient.instance; -// Configure API key authorization: apiKeyCookie -let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; -apiKeyCookie.apiKey = 'YOUR API KEY'; -// Configure API key authorization: authCookie -let authCookie = defaultClient.authentications['authCookie']; -authCookie.apiKey = 'YOUR API KEY'; - -let apiInstance = new vrchatapi.UsersApi(); -let search = "search_example"; // String | Username to search for -let opts = { - 'developerType': "developerType_example", // String | Active user by developer type, none for normal users and internal for moderators - 'offset': 56, // Number | A zero-based offset from the default object sorting from where search results start. - 'n': 60 // Number | The number of objects to return. -}; -apiInstance.searchActiveUsers(search, opts).then((data) => { - console.log('API called successfully. Returned data: ' + data); -}, (error) => { - console.error(error); -}); - -``` - -### Parameters - - -Name | Type | Description | Notes -------------- | ------------- | ------------- | ------------- - **search** | **String**| Username to search for | - **developerType** | **String**| Active user by developer type, none for normal users and internal for moderators | [optional] - **offset** | **Number**| A zero-based offset from the default object sorting from where search results start. | [optional] - **n** | **Number**| The number of objects to return. | [optional] [default to 60] - -### Return type - -[**[LimitedUser]**](LimitedUser.md) - -### Authorization - -[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) - -### HTTP request headers - -- **Content-Type**: Not defined -- **Accept**: application/json - - -## searchUsers - -> [LimitedUser] searchUsers(opts) - -Search All Users - -Search and list any users by text query - -### Example - -```javascript -import vrchatapi from 'vrchatapi'; -let defaultClient = vrchatapi.ApiClient.instance; -// Configure API key authorization: apiKeyCookie -let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; -apiKeyCookie.apiKey = 'YOUR API KEY'; -// Configure API key authorization: authCookie -let authCookie = defaultClient.authentications['authCookie']; -authCookie.apiKey = 'YOUR API KEY'; - -let apiInstance = new vrchatapi.UsersApi(); -let opts = { - 'search': "search_example", // String | Searches by `displayName`. Will return empty array if search query is empty or missing. - 'developerType': "developerType_example", // String | Active user by developer type, none for normal users and internal for moderators - 'n': 60, // Number | The number of objects to return. - 'offset': 56 // Number | A zero-based offset from the default object sorting from where search results start. -}; -apiInstance.searchUsers(opts).then((data) => { - console.log('API called successfully. Returned data: ' + data); -}, (error) => { - console.error(error); -}); - -``` - -### Parameters - - -Name | Type | Description | Notes -------------- | ------------- | ------------- | ------------- - **search** | **String**| Searches by `displayName`. Will return empty array if search query is empty or missing. | [optional] - **developerType** | **String**| Active user by developer type, none for normal users and internal for moderators | [optional] - **n** | **Number**| The number of objects to return. | [optional] [default to 60] - **offset** | **Number**| A zero-based offset from the default object sorting from where search results start. | [optional] - -### Return type - -[**[LimitedUser]**](LimitedUser.md) - -### Authorization - -[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) - -### HTTP request headers - -- **Content-Type**: Not defined -- **Accept**: application/json - - -## updateUser - -> CurrentUser updateUser(userId, opts) - -Update User Info - -Update a users information such as the email and birthday. - -### Example - -```javascript -import vrchatapi from 'vrchatapi'; -let defaultClient = vrchatapi.ApiClient.instance; -// Configure API key authorization: apiKeyCookie -let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; -apiKeyCookie.apiKey = 'YOUR API KEY'; -// Configure API key authorization: authCookie -let authCookie = defaultClient.authentications['authCookie']; -authCookie.apiKey = 'YOUR API KEY'; - -let apiInstance = new vrchatapi.UsersApi(); -let userId = "userId_example"; // String | -let opts = { - 'inlineObject2': new vrchatapi.InlineObject2() // InlineObject2 | -}; -apiInstance.updateUser(userId, opts).then((data) => { - console.log('API called successfully. Returned data: ' + data); -}, (error) => { - console.error(error); -}); - -``` - -### Parameters - - -Name | Type | Description | Notes -------------- | ------------- | ------------- | ------------- - **userId** | **String**| | - **inlineObject2** | [**InlineObject2**](InlineObject2.md)| | [optional] - -### Return type - -[**CurrentUser**](CurrentUser.md) - -### Authorization - -[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) - -### HTTP request headers - -- **Content-Type**: application/json -- **Accept**: application/json - diff --git a/docs/WorldsApi.md b/docs/WorldsApi.md deleted file mode 100644 index 553acd5..0000000 --- a/docs/WorldsApi.md +++ /dev/null @@ -1,92 +0,0 @@ -# vrchatapi.WorldsApi - -All URIs are relative to *https://api.vrchat.cloud/api/1* - -Method | HTTP request | Description -------------- | ------------- | ------------- -[**searchWorlds**](WorldsApi.md#searchWorlds) | **GET** /worlds | Search all worlds - - - -## searchWorlds - -> [LimitedWorld] searchWorlds(opts) - -Search all worlds - -Search and list any worlds by text query - -### Example - -```javascript -import vrchatapi from 'vrchatapi'; -let defaultClient = vrchatapi.ApiClient.instance; -// Configure API key authorization: apiKeyCookie -let apiKeyCookie = defaultClient.authentications['apiKeyCookie']; -apiKeyCookie.apiKey = 'YOUR API KEY'; -// Configure API key authorization: authCookie -let authCookie = defaultClient.authentications['authCookie']; -authCookie.apiKey = 'YOUR API KEY'; - -let apiInstance = new vrchatapi.WorldsApi(); -let opts = { - 'featured': true, // Boolean | is the world featured - 'sort': order, // String | - 'user': "user_example", // String | Set to `me` for searching own worlds - 'userId': "userId_example", // String | Filter by creator id, use `me` for only worlds owned by current user - 'n': 60, // Number | The number of objects to return. - 'order': descending, // String | - 'offset': 56, // Number | A zero-based offset from the default object sorting from where search results start. - 'search': "search_example", // String | Searches by `name`. Will return empty array if search query is empty or missing. - 'tag': ["null"], // [String] | Filter by Tag - 'notag': ["null"], // [String] | Tags to exclude - 'releaseStatus': hidden, // String | - 'maxUnityVersion': "maxUnityVersion_example", // String | Current unity version the game is using - 'minUnityVersion': "minUnityVersion_example", // String | The min unity version the world support - 'maxAssetVersion': "maxAssetVersion_example", // String | Current asset version the game is using - 'minAssetVersion': "minAssetVersion_example", // String | The min asset version the world support - 'platform': "platform_example" // String | The platform the world supports (usually standalonewindows) -}; -apiInstance.searchWorlds(opts).then((data) => { - console.log('API called successfully. Returned data: ' + data); -}, (error) => { - console.error(error); -}); - -``` - -### Parameters - - -Name | Type | Description | Notes -------------- | ------------- | ------------- | ------------- - **featured** | **Boolean**| is the world featured | [optional] - **sort** | **String**| | [optional] [default to 'order'] - **user** | **String**| Set to `me` for searching own worlds | [optional] - **userId** | **String**| Filter by creator id, use `me` for only worlds owned by current user | [optional] - **n** | **Number**| The number of objects to return. | [optional] [default to 60] - **order** | **String**| | [optional] [default to 'descending'] - **offset** | **Number**| A zero-based offset from the default object sorting from where search results start. | [optional] - **search** | **String**| Searches by `name`. Will return empty array if search query is empty or missing. | [optional] - **tag** | [**[String]**](String.md)| Filter by Tag | [optional] - **notag** | [**[String]**](String.md)| Tags to exclude | [optional] - **releaseStatus** | **String**| | [optional] [default to 'hidden'] - **maxUnityVersion** | **String**| Current unity version the game is using | [optional] - **minUnityVersion** | **String**| The min unity version the world support | [optional] - **maxAssetVersion** | **String**| Current asset version the game is using | [optional] - **minAssetVersion** | **String**| The min asset version the world support | [optional] - **platform** | **String**| The platform the world supports (usually standalonewindows) | [optional] - -### Return type - -[**[LimitedWorld]**](LimitedWorld.md) - -### Authorization - -[apiKeyCookie](../README.md#apiKeyCookie), [authCookie](../README.md#authCookie) - -### HTTP request headers - -- **Content-Type**: Not defined -- **Accept**: application/json - diff --git a/foorack.js b/foorack.js new file mode 100644 index 0000000..330cee5 --- /dev/null +++ b/foorack.js @@ -0,0 +1,9 @@ +const { SystemApi } = require("./dist"); +const system = new SystemApi(); + +system.getHealth().then(r => { + console.log(r.data); +}); +system.getCurrentOnlineUsers().then(r => { + console.log(`Current online users: ${r.data}`); +}); diff --git a/generate.sh b/generate.sh index ddc8deb..b73a1b1 100644 --- a/generate.sh +++ b/generate.sh @@ -1,10 +1,20 @@ #!/bin/bash # Generate Client +#rm src docs test -rf +#openapi-generator-cli generate \ +#-g javascript \ +#--additional-properties=projectName=vrchatapi,usePromises=true,moduleName=vrchatapi \ +#--git-user-id=vrchatapi \ +#--git-repo-id=vrchatapi-node \ +#-o . \ +#-i ../specification/openapi.yaml \ +#--http-user-agent="vrchatapi-node" + rm src docs test -rf openapi-generator-cli generate \ --g javascript \ ---additional-properties=projectName=vrchatapi,usePromises=true,moduleName=vrchatapi \ +-g typescript-axios \ +--additional-properties=npmName=vrchatapi \ --git-user-id=vrchatapi \ --git-repo-id=vrchatapi-node \ -o . \ @@ -12,13 +22,13 @@ openapi-generator-cli generate \ --http-user-agent="vrchatapi-node" # Remove unwanted lines from README -sed -i '/Uncomment the following line to set a prefix/d' ./README.md -sed -i '/apiKeyPrefix/d' ./README.md -sed -i '/Uncomment the following line to set a prefix/d' ./docs/*.md -sed -i '/apiKeyPrefix/d' ./docs/*.md -sed -i 's/api.deleteUserById/api.getUser/g' ./README.md +#sed -i '/Uncomment the following line to set a prefix/d' ./README.md +#sed -i '/apiKeyPrefix/d' ./README.md +#sed -i '/Uncomment the following line to set a prefix/d' ./docs/*.md +#sed -i '/apiKeyPrefix/d' ./docs/*.md +#sed -i 's/api.deleteUserById/api.getUser/g' ./README.md -sed -i 's/@default false/@default true/g' ./src/ApiClient.js -sed -i 's/enableCookies = false/enableCookies = true/g' ./src/ApiClient.js +#sed -i 's/@default false/@default true/g' ./src/ApiClient.js +#sed -i 's/enableCookies = false/enableCookies = true/g' ./src/ApiClient.js -npm run build \ No newline at end of file +#npm run build \ No newline at end of file diff --git a/src/model/UserState.js b/index.ts similarity index 68% rename from src/model/UserState.js rename to index.ts index c8c979c..1d5d02a 100644 --- a/src/model/UserState.js +++ b/index.ts @@ -1,3 +1,5 @@ +/* tslint:disable */ +/* eslint-disable */ /** * VRChat API Documentation * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) @@ -8,46 +10,9 @@ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. - * */ -import ApiClient from '../ApiClient'; -/** -* Enum class UserState. -* @enum {} -* @readonly -*/ -export default class UserState { - - /** - * value: "offline" - * @const - */ - "offline" = "offline"; - - - /** - * value: "active" - * @const - */ - "active" = "active"; - - - /** - * value: "online" - * @const - */ - "online" = "online"; - - - /** - * Returns a UserState enum value from a Javascript object name. - * @param {Object} data The plain JavaScript object containing the name of the enum value. - * @return {module:model/UserState} The enum UserState value. - */ - static constructFromObject(object) { - return object; - } -} +export * from "./api"; +export * from "./configuration"; diff --git a/mocha.opts b/mocha.opts deleted file mode 100644 index 9070118..0000000 --- a/mocha.opts +++ /dev/null @@ -1 +0,0 @@ ---timeout 10000 diff --git a/package-lock.json b/package-lock.json index d7cdaea..74739ca 100644 --- a/package-lock.json +++ b/package-lock.json @@ -4,4204 +4,29 @@ "lockfileVersion": 1, "requires": true, "dependencies": { - "@babel/cli": { - "version": "7.14.8", - "resolved": "https://registry.npmjs.org/@babel/cli/-/cli-7.14.8.tgz", - "integrity": "sha512-lcy6Lymft9Rpfqmrqdd4oTDdUx9ZwaAhAfywVrHG4771Pa6PPT0danJ1kDHBXYqh4HHSmIdA+nlmfxfxSDPtBg==", - "requires": { - "@nicolo-ribaudo/chokidar-2": "2.1.8-no-fsevents.2", - "chokidar": "^3.4.0", - "commander": "^4.0.1", - "convert-source-map": "^1.1.0", - "fs-readdir-recursive": "^1.1.0", - "glob": "^7.0.0", - "make-dir": "^2.1.0", - "slash": "^2.0.0", - "source-map": "^0.5.0" - } - }, - "@babel/code-frame": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.14.5.tgz", - "integrity": "sha512-9pzDqyc6OLDaqe+zbACgFkb6fKMNG6CObKpnYXChRsvYGyEdc7CA2BaqeOM+vOtCS5ndmJicPJhKAwYRI6UfFw==", - "dev": true, - "requires": { - "@babel/highlight": "^7.14.5" - } - }, - "@babel/compat-data": { - "version": "7.14.7", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.14.7.tgz", - "integrity": "sha512-nS6dZaISCXJ3+518CWiBfEr//gHyMO02uDxBkXTKZDN5POruCnOZ1N4YBRZDCabwF8nZMWBpRxIicmXtBs+fvw==", - "dev": true - }, - "@babel/core": { - "version": "7.14.8", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.14.8.tgz", - "integrity": "sha512-/AtaeEhT6ErpDhInbXmjHcUQXH0L0TEgscfcxk1qbOvLuKCa5aZT0SOOtDKFY96/CLROwbLSKyFor6idgNaU4Q==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.14.5", - "@babel/generator": "^7.14.8", - "@babel/helper-compilation-targets": "^7.14.5", - "@babel/helper-module-transforms": "^7.14.8", - "@babel/helpers": "^7.14.8", - "@babel/parser": "^7.14.8", - "@babel/template": "^7.14.5", - "@babel/traverse": "^7.14.8", - "@babel/types": "^7.14.8", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.1.2", - "semver": "^6.3.0", - "source-map": "^0.5.0" - }, - "dependencies": { - "debug": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", - "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", - "dev": true, - "requires": { - "ms": "2.1.2" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "@babel/generator": { - "version": "7.14.8", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.14.8.tgz", - "integrity": "sha512-cYDUpvIzhBVnMzRoY1fkSEhK/HmwEVwlyULYgn/tMQYd6Obag3ylCjONle3gdErfXBW61SVTlR9QR7uWlgeIkg==", - "dev": true, - "requires": { - "@babel/types": "^7.14.8", - "jsesc": "^2.5.1", - "source-map": "^0.5.0" - } - }, - "@babel/helper-annotate-as-pure": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.14.5.tgz", - "integrity": "sha512-EivH9EgBIb+G8ij1B2jAwSH36WnGvkQSEC6CkX/6v6ZFlw5fVOHvsgGF4uiEHO2GzMvunZb6tDLQEQSdrdocrA==", - "dev": true, - "requires": { - "@babel/types": "^7.14.5" - } - }, - "@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.14.5.tgz", - "integrity": "sha512-YTA/Twn0vBXDVGJuAX6PwW7x5zQei1luDDo2Pl6q1qZ7hVNl0RZrhHCQG/ArGpR29Vl7ETiB8eJyrvpuRp300w==", - "dev": true, - "requires": { - "@babel/helper-explode-assignable-expression": "^7.14.5", - "@babel/types": "^7.14.5" - } - }, - "@babel/helper-compilation-targets": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.14.5.tgz", - "integrity": "sha512-v+QtZqXEiOnpO6EYvlImB6zCD2Lel06RzOPzmkz/D/XgQiUu3C/Jb1LOqSt/AIA34TYi/Q+KlT8vTQrgdxkbLw==", - "dev": true, - "requires": { - "@babel/compat-data": "^7.14.5", - "@babel/helper-validator-option": "^7.14.5", - "browserslist": "^4.16.6", - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "@babel/helper-create-class-features-plugin": { - "version": "7.14.8", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.14.8.tgz", - "integrity": "sha512-bpYvH8zJBWzeqi1o+co8qOrw+EXzQ/0c74gVmY205AWXy9nifHrOg77y+1zwxX5lXE7Icq4sPlSQ4O2kWBrteQ==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.14.5", - "@babel/helper-function-name": "^7.14.5", - "@babel/helper-member-expression-to-functions": "^7.14.7", - "@babel/helper-optimise-call-expression": "^7.14.5", - "@babel/helper-replace-supers": "^7.14.5", - "@babel/helper-split-export-declaration": "^7.14.5" - } - }, - "@babel/helper-create-regexp-features-plugin": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.14.5.tgz", - "integrity": "sha512-TLawwqpOErY2HhWbGJ2nZT5wSkR192QpN+nBg1THfBfftrlvOh+WbhrxXCH4q4xJ9Gl16BGPR/48JA+Ryiho/A==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.14.5", - "regexpu-core": "^4.7.1" - } - }, - "@babel/helper-define-polyfill-provider": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.2.3.tgz", - "integrity": "sha512-RH3QDAfRMzj7+0Nqu5oqgO5q9mFtQEVvCRsi8qCEfzLR9p2BHfn5FzhSB2oj1fF7I2+DcTORkYaQ6aTR9Cofew==", - "dev": true, - "requires": { - "@babel/helper-compilation-targets": "^7.13.0", - "@babel/helper-module-imports": "^7.12.13", - "@babel/helper-plugin-utils": "^7.13.0", - "@babel/traverse": "^7.13.0", - "debug": "^4.1.1", - "lodash.debounce": "^4.0.8", - "resolve": "^1.14.2", - "semver": "^6.1.2" - }, - "dependencies": { - "debug": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", - "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", - "dev": true, - "requires": { - "ms": "2.1.2" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "@babel/helper-explode-assignable-expression": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.14.5.tgz", - "integrity": "sha512-Htb24gnGJdIGT4vnRKMdoXiOIlqOLmdiUYpAQ0mYfgVT/GDm8GOYhgi4GL+hMKrkiPRohO4ts34ELFsGAPQLDQ==", - "dev": true, - "requires": { - "@babel/types": "^7.14.5" - } - }, - "@babel/helper-function-name": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.14.5.tgz", - "integrity": "sha512-Gjna0AsXWfFvrAuX+VKcN/aNNWonizBj39yGwUzVDVTlMYJMK2Wp6xdpy72mfArFq5uK+NOuexfzZlzI1z9+AQ==", - "dev": true, - "requires": { - "@babel/helper-get-function-arity": "^7.14.5", - "@babel/template": "^7.14.5", - "@babel/types": "^7.14.5" - } - }, - "@babel/helper-get-function-arity": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.14.5.tgz", - "integrity": "sha512-I1Db4Shst5lewOM4V+ZKJzQ0JGGaZ6VY1jYvMghRjqs6DWgxLCIyFt30GlnKkfUeFLpJt2vzbMVEXVSXlIFYUg==", - "dev": true, - "requires": { - "@babel/types": "^7.14.5" - } - }, - "@babel/helper-hoist-variables": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.14.5.tgz", - "integrity": "sha512-R1PXiz31Uc0Vxy4OEOm07x0oSjKAdPPCh3tPivn/Eo8cvz6gveAeuyUUPB21Hoiif0uoPQSSdhIPS3352nvdyQ==", - "dev": true, - "requires": { - "@babel/types": "^7.14.5" - } - }, - "@babel/helper-member-expression-to-functions": { - "version": "7.14.7", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.14.7.tgz", - "integrity": "sha512-TMUt4xKxJn6ccjcOW7c4hlwyJArizskAhoSTOCkA0uZ+KghIaci0Qg9R043kUMWI9mtQfgny+NQ5QATnZ+paaA==", - "dev": true, - "requires": { - "@babel/types": "^7.14.5" - } - }, - "@babel/helper-module-imports": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.14.5.tgz", - "integrity": "sha512-SwrNHu5QWS84XlHwGYPDtCxcA0hrSlL2yhWYLgeOc0w7ccOl2qv4s/nARI0aYZW+bSwAL5CukeXA47B/1NKcnQ==", - "dev": true, - "requires": { - "@babel/types": "^7.14.5" - } - }, - "@babel/helper-module-transforms": { - "version": "7.14.8", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.14.8.tgz", - "integrity": "sha512-RyE+NFOjXn5A9YU1dkpeBaduagTlZ0+fccnIcAGbv1KGUlReBj7utF7oEth8IdIBQPcux0DDgW5MFBH2xu9KcA==", - "dev": true, - "requires": { - "@babel/helper-module-imports": "^7.14.5", - "@babel/helper-replace-supers": "^7.14.5", - "@babel/helper-simple-access": "^7.14.8", - "@babel/helper-split-export-declaration": "^7.14.5", - "@babel/helper-validator-identifier": "^7.14.8", - "@babel/template": "^7.14.5", - "@babel/traverse": "^7.14.8", - "@babel/types": "^7.14.8" - } - }, - "@babel/helper-optimise-call-expression": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.14.5.tgz", - "integrity": "sha512-IqiLIrODUOdnPU9/F8ib1Fx2ohlgDhxnIDU7OEVi+kAbEZcyiF7BLU8W6PfvPi9LzztjS7kcbzbmL7oG8kD6VA==", - "dev": true, - "requires": { - "@babel/types": "^7.14.5" - } - }, - "@babel/helper-plugin-utils": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.14.5.tgz", - "integrity": "sha512-/37qQCE3K0vvZKwoK4XU/irIJQdIfCJuhU5eKnNxpFDsOkgFaUAwbv+RYw6eYgsC0E4hS7r5KqGULUogqui0fQ==", - "dev": true - }, - "@babel/helper-remap-async-to-generator": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.14.5.tgz", - "integrity": "sha512-rLQKdQU+HYlxBwQIj8dk4/0ENOUEhA/Z0l4hN8BexpvmSMN9oA9EagjnhnDpNsRdWCfjwa4mn/HyBXO9yhQP6A==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.14.5", - "@babel/helper-wrap-function": "^7.14.5", - "@babel/types": "^7.14.5" - } - }, - "@babel/helper-replace-supers": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.14.5.tgz", - "integrity": "sha512-3i1Qe9/8x/hCHINujn+iuHy+mMRLoc77b2nI9TB0zjH1hvn9qGlXjWlggdwUcju36PkPCy/lpM7LLUdcTyH4Ow==", - "dev": true, - "requires": { - "@babel/helper-member-expression-to-functions": "^7.14.5", - "@babel/helper-optimise-call-expression": "^7.14.5", - "@babel/traverse": "^7.14.5", - "@babel/types": "^7.14.5" - } - }, - "@babel/helper-simple-access": { - "version": "7.14.8", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.14.8.tgz", - "integrity": "sha512-TrFN4RHh9gnWEU+s7JloIho2T76GPwRHhdzOWLqTrMnlas8T9O7ec+oEDNsRXndOmru9ymH9DFrEOxpzPoSbdg==", - "dev": true, - "requires": { - "@babel/types": "^7.14.8" - } - }, - "@babel/helper-skip-transparent-expression-wrappers": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.14.5.tgz", - "integrity": "sha512-dmqZB7mrb94PZSAOYtr+ZN5qt5owZIAgqtoTuqiFbHFtxgEcmQlRJVI+bO++fciBunXtB6MK7HrzrfcAzIz2NQ==", - "dev": true, - "requires": { - "@babel/types": "^7.14.5" - } - }, - "@babel/helper-split-export-declaration": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.14.5.tgz", - "integrity": "sha512-hprxVPu6e5Kdp2puZUmvOGjaLv9TCe58E/Fl6hRq4YiVQxIcNvuq6uTM2r1mT/oPskuS9CgR+I94sqAYv0NGKA==", - "dev": true, - "requires": { - "@babel/types": "^7.14.5" - } - }, - "@babel/helper-validator-identifier": { - "version": "7.14.8", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.8.tgz", - "integrity": "sha512-ZGy6/XQjllhYQrNw/3zfWRwZCTVSiBLZ9DHVZxn9n2gip/7ab8mv2TWlKPIBk26RwedCBoWdjLmn+t9na2Gcow==", - "dev": true - }, - "@babel/helper-validator-option": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.14.5.tgz", - "integrity": "sha512-OX8D5eeX4XwcroVW45NMvoYaIuFI+GQpA2a8Gi+X/U/cDUIRsV37qQfF905F0htTRCREQIB4KqPeaveRJUl3Ow==", - "dev": true - }, - "@babel/helper-wrap-function": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.14.5.tgz", - "integrity": "sha512-YEdjTCq+LNuNS1WfxsDCNpgXkJaIyqco6DAelTUjT4f2KIWC1nBcaCaSdHTBqQVLnTBexBcVcFhLSU1KnYuePQ==", - "dev": true, - "requires": { - "@babel/helper-function-name": "^7.14.5", - "@babel/template": "^7.14.5", - "@babel/traverse": "^7.14.5", - "@babel/types": "^7.14.5" - } - }, - "@babel/helpers": { - "version": "7.14.8", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.14.8.tgz", - "integrity": "sha512-ZRDmI56pnV+p1dH6d+UN6GINGz7Krps3+270qqI9UJ4wxYThfAIcI5i7j5vXC4FJ3Wap+S9qcebxeYiqn87DZw==", - "dev": true, - "requires": { - "@babel/template": "^7.14.5", - "@babel/traverse": "^7.14.8", - "@babel/types": "^7.14.8" - } - }, - "@babel/highlight": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.5.tgz", - "integrity": "sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.14.5", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - } - }, - "@babel/parser": { - "version": "7.14.8", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.14.8.tgz", - "integrity": "sha512-syoCQFOoo/fzkWDeM0dLEZi5xqurb5vuyzwIMNZRNun+N/9A4cUZeQaE7dTrB8jGaKuJRBtEOajtnmw0I5hvvA==", - "dev": true - }, - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.14.5.tgz", - "integrity": "sha512-ZoJS2XCKPBfTmL122iP6NM9dOg+d4lc9fFk3zxc8iDjvt8Pk4+TlsHSKhIPf6X+L5ORCdBzqMZDjL/WHj7WknQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/helper-skip-transparent-expression-wrappers": "^7.14.5", - "@babel/plugin-proposal-optional-chaining": "^7.14.5" - } - }, - "@babel/plugin-proposal-async-generator-functions": { - "version": "7.14.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.14.7.tgz", - "integrity": "sha512-RK8Wj7lXLY3bqei69/cc25gwS5puEc3dknoFPFbqfy3XxYQBQFvu4ioWpafMBAB+L9NyptQK4nMOa5Xz16og8Q==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/helper-remap-async-to-generator": "^7.14.5", - "@babel/plugin-syntax-async-generators": "^7.8.4" - } - }, - "@babel/plugin-proposal-class-properties": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.14.5.tgz", - "integrity": "sha512-q/PLpv5Ko4dVc1LYMpCY7RVAAO4uk55qPwrIuJ5QJ8c6cVuAmhu7I/49JOppXL6gXf7ZHzpRVEUZdYoPLM04Gg==", - "dev": true, - "requires": { - "@babel/helper-create-class-features-plugin": "^7.14.5", - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-proposal-class-static-block": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.14.5.tgz", - "integrity": "sha512-KBAH5ksEnYHCegqseI5N9skTdxgJdmDoAOc0uXa+4QMYKeZD0w5IARh4FMlTNtaHhbB8v+KzMdTgxMMzsIy6Yg==", - "dev": true, - "requires": { - "@babel/helper-create-class-features-plugin": "^7.14.5", - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/plugin-syntax-class-static-block": "^7.14.5" - } - }, - "@babel/plugin-proposal-decorators": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.14.5.tgz", - "integrity": "sha512-LYz5nvQcvYeRVjui1Ykn28i+3aUiXwQ/3MGoEy0InTaz1pJo/lAzmIDXX+BQny/oufgHzJ6vnEEiXQ8KZjEVFg==", - "dev": true, - "requires": { - "@babel/helper-create-class-features-plugin": "^7.14.5", - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/plugin-syntax-decorators": "^7.14.5" - } - }, - "@babel/plugin-proposal-do-expressions": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-do-expressions/-/plugin-proposal-do-expressions-7.14.5.tgz", - "integrity": "sha512-i40m/CLe5WBGYMZL/SC3xtjJ/B0i+XblaonSsinumgfNIqmBOf4LEcZJXijoQeQbQVl55PyM0siWSWWJ9lV7cA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/plugin-syntax-do-expressions": "^7.14.5" - } - }, - "@babel/plugin-proposal-dynamic-import": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.14.5.tgz", - "integrity": "sha512-ExjiNYc3HDN5PXJx+bwC50GIx/KKanX2HiggnIUAYedbARdImiCU4RhhHfdf0Kd7JNXGpsBBBCOm+bBVy3Gb0g==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/plugin-syntax-dynamic-import": "^7.8.3" - } - }, - "@babel/plugin-proposal-export-default-from": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-default-from/-/plugin-proposal-export-default-from-7.14.5.tgz", - "integrity": "sha512-T8KZ5abXvKMjF6JcoXjgac3ElmXf0AWzJwi2O/42Jk+HmCky3D9+i1B7NPP1FblyceqTevKeV/9szeikFoaMDg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/plugin-syntax-export-default-from": "^7.14.5" - } - }, - "@babel/plugin-proposal-export-namespace-from": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.14.5.tgz", - "integrity": "sha512-g5POA32bXPMmSBu5Dx/iZGLGnKmKPc5AiY7qfZgurzrCYgIztDlHFbznSNCoQuv57YQLnQfaDi7dxCtLDIdXdA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3" - } - }, - "@babel/plugin-proposal-function-bind": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-function-bind/-/plugin-proposal-function-bind-7.14.5.tgz", - "integrity": "sha512-PSQk5JImi81nFAzIebCEqkd0aiP9LDVKLCIH+0yR66JV8cQ1oZ8IRK9NNaA5nw9sjo0cPXxuBPCqgqcpugR8tA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/plugin-syntax-function-bind": "^7.14.5" - } - }, - "@babel/plugin-proposal-function-sent": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-function-sent/-/plugin-proposal-function-sent-7.14.5.tgz", - "integrity": "sha512-3Hvb9m1dvFK1cor9kObPCPK8q0xlcakm+haBwHQy7V5BN1As6iys9oOKyWpHVbop+tW8JYs0v9Ahcp1BOxC3Ng==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/helper-wrap-function": "^7.14.5", - "@babel/plugin-syntax-function-sent": "^7.14.5" - } - }, - "@babel/plugin-proposal-json-strings": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.14.5.tgz", - "integrity": "sha512-NSq2fczJYKVRIsUJyNxrVUMhB27zb7N7pOFGQOhBKJrChbGcgEAqyZrmZswkPk18VMurEeJAaICbfm57vUeTbQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/plugin-syntax-json-strings": "^7.8.3" - } - }, - "@babel/plugin-proposal-logical-assignment-operators": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.14.5.tgz", - "integrity": "sha512-YGn2AvZAo9TwyhlLvCCWxD90Xq8xJ4aSgaX3G5D/8DW94L8aaT+dS5cSP+Z06+rCJERGSr9GxMBZ601xoc2taw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" - } - }, - "@babel/plugin-proposal-nullish-coalescing-operator": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.14.5.tgz", - "integrity": "sha512-gun/SOnMqjSb98Nkaq2rTKMwervfdAoz6NphdY0vTfuzMfryj+tDGb2n6UkDKwez+Y8PZDhE3D143v6Gepp4Hg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" - } - }, - "@babel/plugin-proposal-numeric-separator": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.14.5.tgz", - "integrity": "sha512-yiclALKe0vyZRZE0pS6RXgjUOt87GWv6FYa5zqj15PvhOGFO69R5DusPlgK/1K5dVnCtegTiWu9UaBSrLLJJBg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/plugin-syntax-numeric-separator": "^7.10.4" - } - }, - "@babel/plugin-proposal-object-rest-spread": { - "version": "7.14.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.14.7.tgz", - "integrity": "sha512-082hsZz+sVabfmDWo1Oct1u1AgbKbUAyVgmX4otIc7bdsRgHBXwTwb3DpDmD4Eyyx6DNiuz5UAATT655k+kL5g==", - "dev": true, - "requires": { - "@babel/compat-data": "^7.14.7", - "@babel/helper-compilation-targets": "^7.14.5", - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-transform-parameters": "^7.14.5" - } - }, - "@babel/plugin-proposal-optional-catch-binding": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.14.5.tgz", - "integrity": "sha512-3Oyiixm0ur7bzO5ybNcZFlmVsygSIQgdOa7cTfOYCMY+wEPAYhZAJxi3mixKFCTCKUhQXuCTtQ1MzrpL3WT8ZQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" - } - }, - "@babel/plugin-proposal-optional-chaining": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.14.5.tgz", - "integrity": "sha512-ycz+VOzo2UbWNI1rQXxIuMOzrDdHGrI23fRiz/Si2R4kv2XZQ1BK8ccdHwehMKBlcH/joGW/tzrUmo67gbJHlQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/helper-skip-transparent-expression-wrappers": "^7.14.5", - "@babel/plugin-syntax-optional-chaining": "^7.8.3" - } - }, - "@babel/plugin-proposal-pipeline-operator": { - "version": "7.14.8", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-pipeline-operator/-/plugin-proposal-pipeline-operator-7.14.8.tgz", - "integrity": "sha512-JWJpelV56bW+4rw3QyGTV4efL2NFoT+VH7vV55FyMD4rH8FxsNXuR8SkUOunvOXLcxFpLT2+8v/M0HKrCUIx5g==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/plugin-syntax-pipeline-operator": "^7.14.5" - } - }, - "@babel/plugin-proposal-private-methods": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.14.5.tgz", - "integrity": "sha512-838DkdUA1u+QTCplatfq4B7+1lnDa/+QMI89x5WZHBcnNv+47N8QEj2k9I2MUU9xIv8XJ4XvPCviM/Dj7Uwt9g==", - "dev": true, - "requires": { - "@babel/helper-create-class-features-plugin": "^7.14.5", - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-proposal-private-property-in-object": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.14.5.tgz", - "integrity": "sha512-62EyfyA3WA0mZiF2e2IV9mc9Ghwxcg8YTu8BS4Wss4Y3PY725OmS9M0qLORbJwLqFtGh+jiE4wAmocK2CTUK2Q==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.14.5", - "@babel/helper-create-class-features-plugin": "^7.14.5", - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5" - } - }, - "@babel/plugin-proposal-throw-expressions": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-throw-expressions/-/plugin-proposal-throw-expressions-7.14.5.tgz", - "integrity": "sha512-Db2JCIPhe409U3qy0sWpDun6Xa1k77TfNsKTzUY0PDRTpiho7e2uIhYMJVwGrHOkHRH03D6yQLZRosNahnpi1Q==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/plugin-syntax-throw-expressions": "^7.14.5" - } - }, - "@babel/plugin-proposal-unicode-property-regex": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.14.5.tgz", - "integrity": "sha512-6axIeOU5LnY471KenAB9vI8I5j7NQ2d652hIYwVyRfgaZT5UpiqFKCuVXCDMSrU+3VFafnu2c5m3lrWIlr6A5Q==", - "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.14.5", - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-syntax-async-generators": { - "version": "7.8.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", - "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-class-properties": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", - "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.12.13" - } - }, - "@babel/plugin-syntax-class-static-block": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", - "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-syntax-decorators": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.14.5.tgz", - "integrity": "sha512-c4sZMRWL4GSvP1EXy0woIP7m4jkVcEuG8R1TOZxPBPtp4FSM/kiPZub9UIs/Jrb5ZAOzvTUSGYrWsrSu1JvoPw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-syntax-do-expressions": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-do-expressions/-/plugin-syntax-do-expressions-7.14.5.tgz", - "integrity": "sha512-IpVyxRlfFCU2emBiq2OxUX10PD6FoGZ30yWwGt1qdkIPUDhAodG5Il1LStODgATndKRhQgqT21ksqA5fd39AwA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-syntax-dynamic-import": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", - "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-export-default-from": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-default-from/-/plugin-syntax-export-default-from-7.14.5.tgz", - "integrity": "sha512-snWDxjuaPEobRBnhpqEfZ8RMxDbHt8+87fiEioGuE+Uc0xAKgSD8QiuL3lF93hPVQfZFAcYwrrf+H5qUhike3Q==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-syntax-export-namespace-from": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", - "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.3" - } - }, - "@babel/plugin-syntax-function-bind": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-function-bind/-/plugin-syntax-function-bind-7.14.5.tgz", - "integrity": "sha512-gstAIrKtlPwrQaRz4uK+kT7zI2p5MQqX41SeO+kZKH1XGO1jL0nLZBWznRigPpkem6LfIoG2EduQZmPBcUwEmg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-syntax-function-sent": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-function-sent/-/plugin-syntax-function-sent-7.14.5.tgz", - "integrity": "sha512-FNN0Ve2/6yxCa0xMG7wUlM81t+HOPu8HNWk683Xav1B+vjHKQQujX82NEKYdDYNUX7/ky8pUCHfRUYVmigs69Q==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-syntax-import-meta": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", - "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-syntax-json-strings": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", - "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-logical-assignment-operators": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", - "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-syntax-nullish-coalescing-operator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", - "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-numeric-separator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", - "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-syntax-object-rest-spread": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", - "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-optional-catch-binding": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", - "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-optional-chaining": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", - "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-pipeline-operator": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-pipeline-operator/-/plugin-syntax-pipeline-operator-7.14.5.tgz", - "integrity": "sha512-yyV4QIHExzKJwYoZ0yRorVLROdsZ96H6iamG60rvDghWyfo7BaSPjvoHWGRirebzUj+Vv5Ih6yhhMLx04Gnvyw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-syntax-private-property-in-object": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", - "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-syntax-throw-expressions": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-throw-expressions/-/plugin-syntax-throw-expressions-7.14.5.tgz", - "integrity": "sha512-4aFC2goA9+JceXayipcSY017nGspvcAkzR+sdsT6hN4DUuHWvM88wdjf/Nxja5sTE7oYPmfuN84ViREdgjingw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-syntax-top-level-await": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", - "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-transform-arrow-functions": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.14.5.tgz", - "integrity": "sha512-KOnO0l4+tD5IfOdi4x8C1XmEIRWUjNRV8wc6K2vz/3e8yAOoZZvsRXRRIF/yo/MAOFb4QjtAw9xSxMXbSMRy8A==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-transform-async-to-generator": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.14.5.tgz", - "integrity": "sha512-szkbzQ0mNk0rpu76fzDdqSyPu0MuvpXgC+6rz5rpMb5OIRxdmHfQxrktL8CYolL2d8luMCZTR0DpIMIdL27IjA==", - "dev": true, - "requires": { - "@babel/helper-module-imports": "^7.14.5", - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/helper-remap-async-to-generator": "^7.14.5" - } - }, - "@babel/plugin-transform-block-scoped-functions": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.14.5.tgz", - "integrity": "sha512-dtqWqdWZ5NqBX3KzsVCWfQI3A53Ft5pWFCT2eCVUftWZgjc5DpDponbIF1+c+7cSGk2wN0YK7HGL/ezfRbpKBQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-transform-block-scoping": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.14.5.tgz", - "integrity": "sha512-LBYm4ZocNgoCqyxMLoOnwpsmQ18HWTQvql64t3GvMUzLQrNoV1BDG0lNftC8QKYERkZgCCT/7J5xWGObGAyHDw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-transform-classes": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.14.5.tgz", - "integrity": "sha512-J4VxKAMykM06K/64z9rwiL6xnBHgB1+FVspqvlgCdwD1KUbQNfszeKVVOMh59w3sztHYIZDgnhOC4WbdEfHFDA==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.14.5", - "@babel/helper-function-name": "^7.14.5", - "@babel/helper-optimise-call-expression": "^7.14.5", - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/helper-replace-supers": "^7.14.5", - "@babel/helper-split-export-declaration": "^7.14.5", - "globals": "^11.1.0" - } - }, - "@babel/plugin-transform-computed-properties": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.14.5.tgz", - "integrity": "sha512-pWM+E4283UxaVzLb8UBXv4EIxMovU4zxT1OPnpHJcmnvyY9QbPPTKZfEj31EUvG3/EQRbYAGaYEUZ4yWOBC2xg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-transform-destructuring": { - "version": "7.14.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.14.7.tgz", - "integrity": "sha512-0mDE99nK+kVh3xlc5vKwB6wnP9ecuSj+zQCa/n0voENtP/zymdT4HH6QEb65wjjcbqr1Jb/7z9Qp7TF5FtwYGw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-transform-dotall-regex": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.14.5.tgz", - "integrity": "sha512-loGlnBdj02MDsFaHhAIJzh7euK89lBrGIdM9EAtHFo6xKygCUGuuWe07o1oZVk287amtW1n0808sQM99aZt3gw==", - "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.14.5", - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-transform-duplicate-keys": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.14.5.tgz", - "integrity": "sha512-iJjbI53huKbPDAsJ8EmVmvCKeeq21bAze4fu9GBQtSLqfvzj2oRuHVx4ZkDwEhg1htQ+5OBZh/Ab0XDf5iBZ7A==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-transform-exponentiation-operator": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.14.5.tgz", - "integrity": "sha512-jFazJhMBc9D27o9jDnIE5ZErI0R0m7PbKXVq77FFvqFbzvTMuv8jaAwLZ5PviOLSFttqKIW0/wxNSDbjLk0tYA==", - "dev": true, - "requires": { - "@babel/helper-builder-binary-assignment-operator-visitor": "^7.14.5", - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-transform-for-of": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.14.5.tgz", - "integrity": "sha512-CfmqxSUZzBl0rSjpoQSFoR9UEj3HzbGuGNL21/iFTmjb5gFggJp3ph0xR1YBhexmLoKRHzgxuFvty2xdSt6gTA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-transform-function-name": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.14.5.tgz", - "integrity": "sha512-vbO6kv0fIzZ1GpmGQuvbwwm+O4Cbm2NrPzwlup9+/3fdkuzo1YqOZcXw26+YUJB84Ja7j9yURWposEHLYwxUfQ==", - "dev": true, - "requires": { - "@babel/helper-function-name": "^7.14.5", - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-transform-literals": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.14.5.tgz", - "integrity": "sha512-ql33+epql2F49bi8aHXxvLURHkxJbSmMKl9J5yHqg4PLtdE6Uc48CH1GS6TQvZ86eoB/ApZXwm7jlA+B3kra7A==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-transform-member-expression-literals": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.14.5.tgz", - "integrity": "sha512-WkNXxH1VXVTKarWFqmso83xl+2V3Eo28YY5utIkbsmXoItO8Q3aZxN4BTS2k0hz9dGUloHK26mJMyQEYfkn/+Q==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-transform-modules-amd": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.14.5.tgz", - "integrity": "sha512-3lpOU8Vxmp3roC4vzFpSdEpGUWSMsHFreTWOMMLzel2gNGfHE5UWIh/LN6ghHs2xurUp4jRFYMUIZhuFbody1g==", - "dev": true, - "requires": { - "@babel/helper-module-transforms": "^7.14.5", - "@babel/helper-plugin-utils": "^7.14.5", - "babel-plugin-dynamic-import-node": "^2.3.3" - } - }, - "@babel/plugin-transform-modules-commonjs": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.14.5.tgz", - "integrity": "sha512-en8GfBtgnydoao2PS+87mKyw62k02k7kJ9ltbKe0fXTHrQmG6QZZflYuGI1VVG7sVpx4E1n7KBpNlPb8m78J+A==", - "dev": true, - "requires": { - "@babel/helper-module-transforms": "^7.14.5", - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/helper-simple-access": "^7.14.5", - "babel-plugin-dynamic-import-node": "^2.3.3" - } - }, - "@babel/plugin-transform-modules-systemjs": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.14.5.tgz", - "integrity": "sha512-mNMQdvBEE5DcMQaL5LbzXFMANrQjd2W7FPzg34Y4yEz7dBgdaC+9B84dSO+/1Wba98zoDbInctCDo4JGxz1VYA==", - "dev": true, - "requires": { - "@babel/helper-hoist-variables": "^7.14.5", - "@babel/helper-module-transforms": "^7.14.5", - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/helper-validator-identifier": "^7.14.5", - "babel-plugin-dynamic-import-node": "^2.3.3" - } - }, - "@babel/plugin-transform-modules-umd": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.14.5.tgz", - "integrity": "sha512-RfPGoagSngC06LsGUYyM9QWSXZ8MysEjDJTAea1lqRjNECE3y0qIJF/qbvJxc4oA4s99HumIMdXOrd+TdKaAAA==", - "dev": true, - "requires": { - "@babel/helper-module-transforms": "^7.14.5", - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-transform-named-capturing-groups-regex": { - "version": "7.14.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.14.7.tgz", - "integrity": "sha512-DTNOTaS7TkW97xsDMrp7nycUVh6sn/eq22VaxWfEdzuEbRsiaOU0pqU7DlyUGHVsbQbSghvjKRpEl+nUCKGQSg==", - "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.14.5" - } - }, - "@babel/plugin-transform-new-target": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.14.5.tgz", - "integrity": "sha512-Nx054zovz6IIRWEB49RDRuXGI4Gy0GMgqG0cII9L3MxqgXz/+rgII+RU58qpo4g7tNEx1jG7rRVH4ihZoP4esQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-transform-object-super": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.14.5.tgz", - "integrity": "sha512-MKfOBWzK0pZIrav9z/hkRqIk/2bTv9qvxHzPQc12RcVkMOzpIKnFCNYJip00ssKWYkd8Sf5g0Wr7pqJ+cmtuFg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/helper-replace-supers": "^7.14.5" - } - }, - "@babel/plugin-transform-parameters": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.14.5.tgz", - "integrity": "sha512-Tl7LWdr6HUxTmzQtzuU14SqbgrSKmaR77M0OKyq4njZLQTPfOvzblNKyNkGwOfEFCEx7KeYHQHDI0P3F02IVkA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-transform-property-literals": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.14.5.tgz", - "integrity": "sha512-r1uilDthkgXW8Z1vJz2dKYLV1tuw2xsbrp3MrZmD99Wh9vsfKoob+JTgri5VUb/JqyKRXotlOtwgu4stIYCmnw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-transform-regenerator": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.14.5.tgz", - "integrity": "sha512-NVIY1W3ITDP5xQl50NgTKlZ0GrotKtLna08/uGY6ErQt6VEQZXla86x/CTddm5gZdcr+5GSsvMeTmWA5Ii6pkg==", - "dev": true, - "requires": { - "regenerator-transform": "^0.14.2" - } - }, - "@babel/plugin-transform-reserved-words": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.14.5.tgz", - "integrity": "sha512-cv4F2rv1nD4qdexOGsRQXJrOcyb5CrgjUH9PKrrtyhSDBNWGxd0UIitjyJiWagS+EbUGjG++22mGH1Pub8D6Vg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-transform-shorthand-properties": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.14.5.tgz", - "integrity": "sha512-xLucks6T1VmGsTB+GWK5Pl9Jl5+nRXD1uoFdA5TSO6xtiNjtXTjKkmPdFXVLGlK5A2/or/wQMKfmQ2Y0XJfn5g==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-transform-spread": { - "version": "7.14.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.14.6.tgz", - "integrity": "sha512-Zr0x0YroFJku7n7+/HH3A2eIrGMjbmAIbJSVv0IZ+t3U2WUQUA64S/oeied2e+MaGSjmt4alzBCsK9E8gh+fag==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/helper-skip-transparent-expression-wrappers": "^7.14.5" - } - }, - "@babel/plugin-transform-sticky-regex": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.14.5.tgz", - "integrity": "sha512-Z7F7GyvEMzIIbwnziAZmnSNpdijdr4dWt+FJNBnBLz5mwDFkqIXU9wmBcWWad3QeJF5hMTkRe4dAq2sUZiG+8A==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-transform-template-literals": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.14.5.tgz", - "integrity": "sha512-22btZeURqiepOfuy/VkFr+zStqlujWaarpMErvay7goJS6BWwdd6BY9zQyDLDa4x2S3VugxFb162IZ4m/S/+Gg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-transform-typeof-symbol": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.14.5.tgz", - "integrity": "sha512-lXzLD30ffCWseTbMQzrvDWqljvZlHkXU+CnseMhkMNqU1sASnCsz3tSzAaH3vCUXb9PHeUb90ZT1BdFTm1xxJw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-transform-unicode-escapes": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.14.5.tgz", - "integrity": "sha512-crTo4jATEOjxj7bt9lbYXcBAM3LZaUrbP2uUdxb6WIorLmjNKSpHfIybgY4B8SRpbf8tEVIWH3Vtm7ayCrKocA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-transform-unicode-regex": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.14.5.tgz", - "integrity": "sha512-UygduJpC5kHeCiRw/xDVzC+wj8VaYSoKl5JNVmbP7MadpNinAm3SvZCxZ42H37KZBKztz46YC73i9yV34d0Tzw==", - "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.14.5", - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/preset-env": { - "version": "7.14.8", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.14.8.tgz", - "integrity": "sha512-a9aOppDU93oArQ51H+B8M1vH+tayZbuBqzjOhntGetZVa+4tTu5jp+XTwqHGG2lxslqomPYVSjIxQkFwXzgnxg==", - "dev": true, - "requires": { - "@babel/compat-data": "^7.14.7", - "@babel/helper-compilation-targets": "^7.14.5", - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/helper-validator-option": "^7.14.5", - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.14.5", - "@babel/plugin-proposal-async-generator-functions": "^7.14.7", - "@babel/plugin-proposal-class-properties": "^7.14.5", - "@babel/plugin-proposal-class-static-block": "^7.14.5", - "@babel/plugin-proposal-dynamic-import": "^7.14.5", - "@babel/plugin-proposal-export-namespace-from": "^7.14.5", - "@babel/plugin-proposal-json-strings": "^7.14.5", - "@babel/plugin-proposal-logical-assignment-operators": "^7.14.5", - "@babel/plugin-proposal-nullish-coalescing-operator": "^7.14.5", - "@babel/plugin-proposal-numeric-separator": "^7.14.5", - "@babel/plugin-proposal-object-rest-spread": "^7.14.7", - "@babel/plugin-proposal-optional-catch-binding": "^7.14.5", - "@babel/plugin-proposal-optional-chaining": "^7.14.5", - "@babel/plugin-proposal-private-methods": "^7.14.5", - "@babel/plugin-proposal-private-property-in-object": "^7.14.5", - "@babel/plugin-proposal-unicode-property-regex": "^7.14.5", - "@babel/plugin-syntax-async-generators": "^7.8.4", - "@babel/plugin-syntax-class-properties": "^7.12.13", - "@babel/plugin-syntax-class-static-block": "^7.14.5", - "@babel/plugin-syntax-dynamic-import": "^7.8.3", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3", - "@babel/plugin-syntax-json-strings": "^7.8.3", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.10.4", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", - "@babel/plugin-syntax-optional-chaining": "^7.8.3", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5", - "@babel/plugin-syntax-top-level-await": "^7.14.5", - "@babel/plugin-transform-arrow-functions": "^7.14.5", - "@babel/plugin-transform-async-to-generator": "^7.14.5", - "@babel/plugin-transform-block-scoped-functions": "^7.14.5", - "@babel/plugin-transform-block-scoping": "^7.14.5", - "@babel/plugin-transform-classes": "^7.14.5", - "@babel/plugin-transform-computed-properties": "^7.14.5", - "@babel/plugin-transform-destructuring": "^7.14.7", - "@babel/plugin-transform-dotall-regex": "^7.14.5", - "@babel/plugin-transform-duplicate-keys": "^7.14.5", - "@babel/plugin-transform-exponentiation-operator": "^7.14.5", - "@babel/plugin-transform-for-of": "^7.14.5", - "@babel/plugin-transform-function-name": "^7.14.5", - "@babel/plugin-transform-literals": "^7.14.5", - "@babel/plugin-transform-member-expression-literals": "^7.14.5", - "@babel/plugin-transform-modules-amd": "^7.14.5", - "@babel/plugin-transform-modules-commonjs": "^7.14.5", - "@babel/plugin-transform-modules-systemjs": "^7.14.5", - "@babel/plugin-transform-modules-umd": "^7.14.5", - "@babel/plugin-transform-named-capturing-groups-regex": "^7.14.7", - "@babel/plugin-transform-new-target": "^7.14.5", - "@babel/plugin-transform-object-super": "^7.14.5", - "@babel/plugin-transform-parameters": "^7.14.5", - "@babel/plugin-transform-property-literals": "^7.14.5", - "@babel/plugin-transform-regenerator": "^7.14.5", - "@babel/plugin-transform-reserved-words": "^7.14.5", - "@babel/plugin-transform-shorthand-properties": "^7.14.5", - "@babel/plugin-transform-spread": "^7.14.6", - "@babel/plugin-transform-sticky-regex": "^7.14.5", - "@babel/plugin-transform-template-literals": "^7.14.5", - "@babel/plugin-transform-typeof-symbol": "^7.14.5", - "@babel/plugin-transform-unicode-escapes": "^7.14.5", - "@babel/plugin-transform-unicode-regex": "^7.14.5", - "@babel/preset-modules": "^0.1.4", - "@babel/types": "^7.14.8", - "babel-plugin-polyfill-corejs2": "^0.2.2", - "babel-plugin-polyfill-corejs3": "^0.2.2", - "babel-plugin-polyfill-regenerator": "^0.2.2", - "core-js-compat": "^3.15.0", - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "@babel/preset-modules": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.4.tgz", - "integrity": "sha512-J36NhwnfdzpmH41M1DrnkkgAqhZaqr/NBdPfQ677mLzlaXo+oDiv1deyCDtgAhz8p328otdob0Du7+xgHGZbKg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", - "@babel/plugin-transform-dotall-regex": "^7.4.4", - "@babel/types": "^7.4.4", - "esutils": "^2.0.2" - } - }, - "@babel/register": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/register/-/register-7.14.5.tgz", - "integrity": "sha512-TjJpGz/aDjFGWsItRBQMOFTrmTI9tr79CHOK+KIvLeCkbxuOAk2M5QHjvruIMGoo9OuccMh5euplPzc5FjAKGg==", - "dev": true, - "requires": { - "clone-deep": "^4.0.1", - "find-cache-dir": "^2.0.0", - "make-dir": "^2.1.0", - "pirates": "^4.0.0", - "source-map-support": "^0.5.16" - } - }, - "@babel/runtime": { - "version": "7.14.8", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.14.8.tgz", - "integrity": "sha512-twj3L8Og5SaCRCErB4x4ajbvBIVV77CGeFglHpeg5WC5FF8TZzBWXtTJ4MqaD9QszLYTtr+IsaAL2rEUevb+eg==", - "dev": true, - "requires": { - "regenerator-runtime": "^0.13.4" - } - }, - "@babel/template": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.14.5.tgz", - "integrity": "sha512-6Z3Po85sfxRGachLULUhOmvAaOo7xCvqGQtxINai2mEGPFm6pQ4z5QInFnUrRpfoSV60BnjyF5F3c+15fxFV1g==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.14.5", - "@babel/parser": "^7.14.5", - "@babel/types": "^7.14.5" - } - }, - "@babel/traverse": { - "version": "7.14.8", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.14.8.tgz", - "integrity": "sha512-kexHhzCljJcFNn1KYAQ6A5wxMRzq9ebYpEDV4+WdNyr3i7O44tanbDOR/xjiG2F3sllan+LgwK+7OMk0EmydHg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.14.5", - "@babel/generator": "^7.14.8", - "@babel/helper-function-name": "^7.14.5", - "@babel/helper-hoist-variables": "^7.14.5", - "@babel/helper-split-export-declaration": "^7.14.5", - "@babel/parser": "^7.14.8", - "@babel/types": "^7.14.8", - "debug": "^4.1.0", - "globals": "^11.1.0" - }, - "dependencies": { - "debug": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", - "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", - "dev": true, - "requires": { - "ms": "2.1.2" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - } - } - }, - "@babel/types": { - "version": "7.14.8", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.14.8.tgz", - "integrity": "sha512-iob4soQa7dZw8nodR/KlOQkPh9S4I8RwCxwRIFuiMRYjOzH/KJzdUfDgz6cGi5dDaclXF4P2PAhCdrBJNIg68Q==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.14.8", - "to-fast-properties": "^2.0.0" - } - }, - "@nicolo-ribaudo/chokidar-2": { - "version": "2.1.8-no-fsevents.2", - "resolved": "https://registry.npmjs.org/@nicolo-ribaudo/chokidar-2/-/chokidar-2-2.1.8-no-fsevents.2.tgz", - "integrity": "sha512-Fb8WxUFOBQVl+CX4MWet5o7eCc6Pj04rXIwVKZ6h1NnqTo45eOQW6aWyhG25NIODvWFwTDMwBsYxrQ3imxpetg==", - "optional": true, - "requires": { - "anymatch": "^2.0.0", - "async-each": "^1.0.1", - "braces": "^2.3.2", - "glob-parent": "^5.1.2", - "inherits": "^2.0.3", - "is-binary-path": "^1.0.0", - "is-glob": "^4.0.0", - "normalize-path": "^3.0.0", - "path-is-absolute": "^1.0.0", - "readdirp": "^2.2.1", - "upath": "^1.1.1" - } - }, - "@sinonjs/commons": { - "version": "1.8.3", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.3.tgz", - "integrity": "sha512-xkNcLAn/wZaX14RPlwizcKicDk9G3F8m2nU3L7Ukm5zBgTwiT0wsoFAHx9Jq56fJA1z/7uKGtCRu16sOUCLIHQ==", - "dev": true, - "requires": { - "type-detect": "4.0.8" - } - }, - "@sinonjs/formatio": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/@sinonjs/formatio/-/formatio-3.2.2.tgz", - "integrity": "sha512-B8SEsgd8gArBLMD6zpRw3juQ2FVSsmdd7qlevyDqzS9WTCtvF55/gAL+h6gue8ZvPYcdiPdvueM/qm//9XzyTQ==", - "dev": true, - "requires": { - "@sinonjs/commons": "^1", - "@sinonjs/samsam": "^3.1.0" - } - }, - "@sinonjs/samsam": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-3.3.3.tgz", - "integrity": "sha512-bKCMKZvWIjYD0BLGnNrxVuw4dkWCYsLqFOUWw8VgKF/+5Y+mE7LfHWPIYoDXowH+3a9LsWDMo0uAP8YDosPvHQ==", - "dev": true, - "requires": { - "@sinonjs/commons": "^1.3.0", - "array-from": "^2.1.1", - "lodash": "^4.17.15" - } - }, - "@sinonjs/text-encoding": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.1.tgz", - "integrity": "sha512-+iTbntw2IZPb/anVDbypzfQa+ay64MW0Zo8aJ8gZPWMMK6/OubMVb6lUPMagqjOPnmtauXnFCACVl3O7ogjeqQ==", - "dev": true - }, - "@ungap/promise-all-settled": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@ungap/promise-all-settled/-/promise-all-settled-1.1.2.tgz", - "integrity": "sha512-sL/cEvJWAnClXw0wHk85/2L0G6Sj8UB0Ctc1TEMbKSsmpRosqhwj9gWgFRZSrBr2f9tiXISwNhCPmlfqUqyb9Q==", - "dev": true - }, - "ansi-colors": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", - "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", - "dev": true - }, - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "anymatch": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", - "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", - "optional": true, - "requires": { - "micromatch": "^3.1.4", - "normalize-path": "^2.1.1" - }, - "dependencies": { - "normalize-path": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", - "optional": true, - "requires": { - "remove-trailing-separator": "^1.0.1" - } - } - } - }, - "argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true - }, - "arr-diff": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", - "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", - "optional": true - }, - "arr-flatten": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", - "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", - "optional": true - }, - "arr-union": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", - "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", - "optional": true - }, - "array-from": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/array-from/-/array-from-2.1.1.tgz", - "integrity": "sha1-z+nYwmYoudxa7MYqn12PHzUsEZU=", - "dev": true - }, - "array-unique": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", - "optional": true - }, - "assign-symbols": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", - "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", - "optional": true - }, - "async-each": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz", - "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==", - "optional": true - }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" - }, - "atob": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", - "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", - "optional": true - }, - "babel-plugin-dynamic-import-node": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz", - "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==", - "dev": true, - "requires": { - "object.assign": "^4.1.0" - } - }, - "babel-plugin-polyfill-corejs2": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.2.2.tgz", - "integrity": "sha512-kISrENsJ0z5dNPq5eRvcctITNHYXWOA4DUZRFYCz3jYCcvTb/A546LIddmoGNMVYg2U38OyFeNosQwI9ENTqIQ==", - "dev": true, - "requires": { - "@babel/compat-data": "^7.13.11", - "@babel/helper-define-polyfill-provider": "^0.2.2", - "semver": "^6.1.1" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "babel-plugin-polyfill-corejs3": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.2.3.tgz", - "integrity": "sha512-rCOFzEIJpJEAU14XCcV/erIf/wZQMmMT5l5vXOpL5uoznyOGfDIjPj6FVytMvtzaKSTSVKouOCTPJ5OMUZH30g==", - "dev": true, - "requires": { - "@babel/helper-define-polyfill-provider": "^0.2.2", - "core-js-compat": "^3.14.0" - } - }, - "babel-plugin-polyfill-regenerator": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.2.2.tgz", - "integrity": "sha512-Goy5ghsc21HgPDFtzRkSirpZVW35meGoTmTOb2bxqdl60ghub4xOidgNTHaZfQ2FaxQsKmwvXtOAkcIS4SMBWg==", - "dev": true, - "requires": { - "@babel/helper-define-polyfill-provider": "^0.2.2" - } - }, - "balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" - }, - "base": { - "version": "0.11.2", - "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", - "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", - "optional": true, - "requires": { - "cache-base": "^1.0.1", - "class-utils": "^0.3.5", - "component-emitter": "^1.2.1", - "define-property": "^1.0.0", - "isobject": "^3.0.1", - "mixin-deep": "^1.2.0", - "pascalcase": "^0.1.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "optional": true, - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "optional": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "optional": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "optional": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "binary-extensions": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", - "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", - "optional": true - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "optional": true, - "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "optional": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "browser-stdout": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz", - "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==", - "dev": true - }, - "browserslist": { - "version": "4.16.6", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.16.6.tgz", - "integrity": "sha512-Wspk/PqO+4W9qp5iUTJsa1B/QrYn1keNCcEP5OvP7WBwT4KaDly0uONYmC6Xa3Z5IqnUgS0KcgLYu1l74x0ZXQ==", - "dev": true, - "requires": { - "caniuse-lite": "^1.0.30001219", - "colorette": "^1.2.2", - "electron-to-chromium": "^1.3.723", - "escalade": "^3.1.1", - "node-releases": "^1.1.71" - } - }, - "buffer-from": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", - "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", - "dev": true - }, - "cache-base": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", - "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", - "optional": true, - "requires": { - "collection-visit": "^1.0.0", - "component-emitter": "^1.2.1", - "get-value": "^2.0.6", - "has-value": "^1.0.0", - "isobject": "^3.0.1", - "set-value": "^2.0.0", - "to-object-path": "^0.3.0", - "union-value": "^1.0.0", - "unset-value": "^1.0.0" - } - }, - "call-bind": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", - "requires": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" - } - }, - "camelcase": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.2.0.tgz", - "integrity": "sha512-c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg==", - "dev": true - }, - "caniuse-lite": { - "version": "1.0.30001247", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001247.tgz", - "integrity": "sha512-4rS7co+7+AoOSPRPOPUt5/GdaqZc0EsUpWk66ofE3HJTAajUK2Ss2VwoNzVN69ghg8lYYlh0an0Iy4LIHHo9UQ==", - "dev": true - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "chokidar": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.2.tgz", - "integrity": "sha512-ekGhOnNVPgT77r4K/U3GDhu+FQ2S8TnK/s2KbIGXi0SZWuwkZ2QNyfWdZW+TVfn84DpEP7rLeCt2UI6bJ8GwbQ==", - "optional": true, - "requires": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "fsevents": "~2.3.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - }, - "dependencies": { - "anymatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", - "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", - "optional": true, - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", - "optional": true - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "optional": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "optional": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "optional": true, - "requires": { - "binary-extensions": "^2.0.0" - } - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "optional": true - }, - "readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "optional": true, - "requires": { - "picomatch": "^2.2.1" - } - }, - "to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "optional": true, - "requires": { - "is-number": "^7.0.0" - } - } - } - }, - "class-utils": { - "version": "0.3.6", - "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", - "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", - "optional": true, - "requires": { - "arr-union": "^3.1.0", - "define-property": "^0.2.5", - "isobject": "^3.0.0", - "static-extend": "^0.1.1" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "optional": true, - "requires": { - "is-descriptor": "^0.1.0" - } - } - } - }, - "cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "string-width": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", - "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" - } - }, - "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.0" - } - } - } - }, - "clone-deep": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", - "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", - "dev": true, - "requires": { - "is-plain-object": "^2.0.4", - "kind-of": "^6.0.2", - "shallow-clone": "^3.0.0" - } - }, - "collection-visit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", - "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", - "optional": true, - "requires": { - "map-visit": "^1.0.0", - "object-visit": "^1.0.0" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "colorette": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.2.2.tgz", - "integrity": "sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w==", - "dev": true - }, - "combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "requires": { - "delayed-stream": "~1.0.0" - } - }, - "commander": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", - "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==" - }, - "commondir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", - "dev": true - }, - "component-emitter": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", - "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==" - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" - }, - "convert-source-map": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", - "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==", - "requires": { - "safe-buffer": "~5.1.1" - } - }, - "cookiejar": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.2.tgz", - "integrity": "sha512-Mw+adcfzPxcPeI+0WlvRrr/3lGVO0bD75SxX6811cxSh1Wbxx7xZBGK1eVtDf6si8rg2lhnUjsVLMFMfbRIuwA==" - }, - "copy-descriptor": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", - "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", - "optional": true - }, - "core-js-compat": { - "version": "3.15.2", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.15.2.tgz", - "integrity": "sha512-Wp+BJVvwopjI+A1EFqm2dwUmWYXrvucmtIB2LgXn/Rb+gWPKYxtmb4GKHGKG/KGF1eK9jfjzT38DITbTOCX/SQ==", - "dev": true, - "requires": { - "browserslist": "^4.16.6", - "semver": "7.0.0" - }, - "dependencies": { - "semver": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz", - "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==", - "dev": true - } - } - }, - "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", - "optional": true - }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "optional": true, - "requires": { - "ms": "2.0.0" - } - }, - "decamelize": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz", - "integrity": "sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==", - "dev": true - }, - "decode-uri-component": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", - "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", - "optional": true - }, - "define-properties": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", - "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", - "dev": true, - "requires": { - "object-keys": "^1.0.12" - } - }, - "define-property": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", - "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", - "optional": true, - "requires": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" - }, - "dependencies": { - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "optional": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "optional": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "optional": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" - }, - "diff": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-5.0.0.tgz", - "integrity": "sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==", - "dev": true - }, - "electron-to-chromium": { - "version": "1.3.786", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.786.tgz", - "integrity": "sha512-AmvbLBj3hepRk8v/DHrFF8gINxOFfDbrn6Ts3PcK46/FBdQb5OMmpamSpZQXSkfi77FfBzYtQtAk+00LCLYMVw==", - "dev": true - }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", - "dev": true - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - }, - "esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true - }, - "expand-brackets": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", - "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", - "optional": true, - "requires": { - "debug": "^2.3.3", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "posix-character-classes": "^0.1.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "optional": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "optional": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "expect.js": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/expect.js/-/expect.js-0.3.1.tgz", - "integrity": "sha1-sKWaDS7/VDdUTr8M6qYBWEHQm1s=", - "dev": true - }, - "extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", - "optional": true, - "requires": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - }, - "dependencies": { - "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "optional": true, - "requires": { - "is-plain-object": "^2.0.4" - } - } - } - }, - "extglob": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", - "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", - "optional": true, - "requires": { - "array-unique": "^0.3.2", - "define-property": "^1.0.0", - "expand-brackets": "^2.1.4", - "extend-shallow": "^2.0.1", - "fragment-cache": "^0.2.1", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "optional": true, - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "optional": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "optional": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "optional": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "optional": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "fast-safe-stringify": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.0.8.tgz", - "integrity": "sha512-lXatBjf3WPjmWD6DpIZxkeSsCOwqI0maYMpgDlx8g4U2qi4lbjA9oH/HD2a87G+KfsUmo5WbJFmqBZlPxtptag==" - }, - "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "optional": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "optional": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "find-cache-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", - "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", - "dev": true, - "requires": { - "commondir": "^1.0.1", - "make-dir": "^2.0.0", - "pkg-dir": "^3.0.0" - } - }, - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, - "requires": { - "locate-path": "^3.0.0" - } - }, - "flat": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", - "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", - "dev": true - }, - "for-in": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", - "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", - "optional": true - }, - "form-data": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", - "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - } - }, - "formidable": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/formidable/-/formidable-1.2.2.tgz", - "integrity": "sha512-V8gLm+41I/8kguQ4/o1D3RIHRmhYFG4pnNyonvua+40rqcEmT4+V71yaZ3B457xbbgCsCfjSPi65u/W6vK1U5Q==" - }, - "fragment-cache": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", - "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", - "optional": true, - "requires": { - "map-cache": "^0.2.2" - } - }, - "fs-readdir-recursive": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/fs-readdir-recursive/-/fs-readdir-recursive-1.1.0.tgz", - "integrity": "sha512-GNanXlVr2pf02+sPN40XN8HG+ePaNcvM0q5mZBd668Obwb0yD5GiUbZOFgwn8kGMY6I3mdyDJzieUy3PTYyTRA==" - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" - }, - "fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "optional": true - }, - "function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" - }, - "gensync": { - "version": "1.0.0-beta.2", - "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", - "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", - "dev": true - }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true - }, - "get-intrinsic": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", - "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", - "requires": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.1" - } - }, - "get-value": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", - "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", - "optional": true - }, - "glob": { - "version": "7.1.7", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", - "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "requires": { - "is-glob": "^4.0.1" - } - }, - "globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true - }, - "graceful-fs": { - "version": "4.2.6", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.6.tgz", - "integrity": "sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==", - "optional": true - }, - "growl": { - "version": "1.10.5", - "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz", - "integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==", - "dev": true - }, - "has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "requires": { - "function-bind": "^1.1.1" - } - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, - "has-symbols": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz", - "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==" - }, - "has-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", - "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", - "optional": true, - "requires": { - "get-value": "^2.0.6", - "has-values": "^1.0.0", - "isobject": "^3.0.0" - } - }, - "has-values": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", - "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", - "optional": true, - "requires": { - "is-number": "^3.0.0", - "kind-of": "^4.0.0" - }, - "dependencies": { - "kind-of": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", - "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", - "optional": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "he": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", - "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", - "dev": true - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" - }, - "is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", - "optional": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "optional": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-binary-path": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", - "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", - "optional": true, - "requires": { - "binary-extensions": "^1.0.0" - } - }, - "is-buffer": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", - "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", - "optional": true - }, - "is-core-module": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.5.0.tgz", - "integrity": "sha512-TXCMSDsEHMEEZ6eCA8rwRDbLu55MRGmrctljsBX/2v1d9/GzqHOxW5c5oPSgrUt2vBFXebu9rGqckXGPWOlYpg==", - "dev": true, - "requires": { - "has": "^1.0.3" - } - }, - "is-data-descriptor": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", - "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", - "optional": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "optional": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", - "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", - "optional": true, - "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - }, - "dependencies": { - "kind-of": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", - "optional": true - } - } - }, - "is-extendable": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", - "optional": true - }, - "is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=" - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "is-glob": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", - "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", - "requires": { - "is-extglob": "^2.1.1" - } - }, - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "optional": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "optional": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-plain-obj": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", - "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==", - "dev": true - }, - "is-plain-object": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", - "requires": { - "isobject": "^3.0.1" - } - }, - "is-windows": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", - "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", - "optional": true - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "optional": true - }, - "isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", - "dev": true - }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" - }, - "js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - }, - "js-yaml": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.0.0.tgz", - "integrity": "sha512-pqon0s+4ScYUvX30wxQi3PogGFAlUyH0awepWvwkj4jD4v+ova3RiYw8bmA6x2rDrEaj8i/oWKoRxpVNW+Re8Q==", - "dev": true, - "requires": { - "argparse": "^2.0.1" - } - }, - "jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true - }, - "json5": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz", - "integrity": "sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==", - "dev": true, - "requires": { - "minimist": "^1.2.5" - } - }, - "just-extend": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.2.1.tgz", - "integrity": "sha512-g3UB796vUFIY90VIv/WX3L2c8CS2MdWUww3CNrYmqza1Fg0DURc2K/O4YrnklBdQarSJ/y8JnJYDGc+1iumQjg==", - "dev": true - }, - "kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==" - }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "dev": true - }, - "lodash.debounce": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", - "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=", - "dev": true - }, - "log-symbols": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.0.0.tgz", - "integrity": "sha512-FN8JBzLx6CzeMrB0tg6pqlGU1wCrXW+ZXGH481kfsBqer0hToTIiHdjH4Mq8xJUbvATujKCvaREGWpGUionraA==", - "dev": true, - "requires": { - "chalk": "^4.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", - "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "lolex": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/lolex/-/lolex-4.2.0.tgz", - "integrity": "sha512-gKO5uExCXvSm6zbF562EvM+rd1kQDnB9AZBbiQVzf1ZmdDpxUSvpnAaVOP83N/31mRK8Ml8/VE8DMvsAZQ+7wg==", - "dev": true - }, - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "requires": { - "yallist": "^4.0.0" - } - }, - "make-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", - "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", - "requires": { - "pify": "^4.0.1", - "semver": "^5.6.0" - } - }, - "map-cache": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", - "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", - "optional": true - }, - "map-visit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", - "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", - "optional": true, - "requires": { - "object-visit": "^1.0.0" - } - }, - "methods": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=" - }, - "micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "optional": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - } - }, - "mime": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.5.2.tgz", - "integrity": "sha512-tqkh47FzKeCPD2PUiPB6pkbMzsCasjxAfC62/Wap5qrUWcb+sFasXUC5I3gYM5iBM8v/Qpn4UK0x+j0iHyFPDg==" - }, - "mime-db": { - "version": "1.48.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.48.0.tgz", - "integrity": "sha512-FM3QwxV+TnZYQ2aRqhlKBMHxk10lTbMt3bBkMAp54ddrNeVSfcQYOOKuGuy3Ddrm38I04If834fOUSq1yzslJQ==" - }, - "mime-types": { - "version": "2.1.31", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.31.tgz", - "integrity": "sha512-XGZnNzm3QvgKxa8dpzyhFTHmpP3l5YNusmne07VUOXxou9CqUqYa/HBy124RqtVh/O2pECas/MOcsDgpilPOPg==", - "requires": { - "mime-db": "1.48.0" - } - }, - "minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", - "dev": true - }, - "mixin-deep": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", - "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", - "optional": true, - "requires": { - "for-in": "^1.0.2", - "is-extendable": "^1.0.1" - }, - "dependencies": { - "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "optional": true, - "requires": { - "is-plain-object": "^2.0.4" - } - } - } - }, - "mocha": { - "version": "8.4.0", - "resolved": "https://registry.npmjs.org/mocha/-/mocha-8.4.0.tgz", - "integrity": "sha512-hJaO0mwDXmZS4ghXsvPVriOhsxQ7ofcpQdm8dE+jISUOKopitvnXFQmpRR7jd2K6VBG6E26gU3IAbXXGIbu4sQ==", - "dev": true, - "requires": { - "@ungap/promise-all-settled": "1.1.2", - "ansi-colors": "4.1.1", - "browser-stdout": "1.3.1", - "chokidar": "3.5.1", - "debug": "4.3.1", - "diff": "5.0.0", - "escape-string-regexp": "4.0.0", - "find-up": "5.0.0", - "glob": "7.1.6", - "growl": "1.10.5", - "he": "1.2.0", - "js-yaml": "4.0.0", - "log-symbols": "4.0.0", - "minimatch": "3.0.4", - "ms": "2.1.3", - "nanoid": "3.1.20", - "serialize-javascript": "5.0.1", - "strip-json-comments": "3.1.1", - "supports-color": "8.1.1", - "which": "2.0.2", - "wide-align": "1.1.3", - "workerpool": "6.1.0", - "yargs": "16.2.0", - "yargs-parser": "20.2.4", - "yargs-unparser": "2.0.0" - }, - "dependencies": { - "anymatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", - "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", - "dev": true, - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", - "dev": true - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "chokidar": { - "version": "3.5.1", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.1.tgz", - "integrity": "sha512-9+s+Od+W0VJJzawDma/gvBNQqkTiqYTWLuZoyAsivsI4AaWTCzHG06/TMjsf1cYe9Cb97UCEhjz7HvnPk2p/tw==", - "dev": true, - "requires": { - "anymatch": "~3.1.1", - "braces": "~3.0.2", - "fsevents": "~2.3.1", - "glob-parent": "~5.1.0", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.5.0" - } - }, - "debug": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", - "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", - "dev": true, - "requires": { - "ms": "2.1.2" - }, - "dependencies": { - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - } - } - }, - "escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "dev": true - }, - "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "dev": true, - "requires": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - } - }, - "glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, - "requires": { - "binary-extensions": "^2.0.0" - } - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, - "locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "dev": true, - "requires": { - "p-locate": "^5.0.0" - } - }, - "ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "dev": true - }, - "p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dev": true, - "requires": { - "yocto-queue": "^0.1.0" - } - }, - "p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dev": true, - "requires": { - "p-limit": "^3.0.2" - } - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, - "readdirp": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.5.0.tgz", - "integrity": "sha512-cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ==", - "dev": true, - "requires": { - "picomatch": "^2.2.1" - } - }, - "supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, - "to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - } - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "optional": true - }, - "nanoid": { - "version": "3.1.20", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.20.tgz", - "integrity": "sha512-a1cQNyczgKbLX9jwbS/+d7W8fX/RfgYR7lVWwWOGIPNgK2m0MWvrGF6/m4kk6U3QcFMnZf3RIhL0v2Jgh/0Uxw==", - "dev": true - }, - "nanomatch": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", - "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", - "optional": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "fragment-cache": "^0.2.1", - "is-windows": "^1.0.2", - "kind-of": "^6.0.2", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - } - }, - "nise": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/nise/-/nise-1.5.3.tgz", - "integrity": "sha512-Ymbac/94xeIrMf59REBPOv0thr+CJVFMhrlAkW/gjCIE58BGQdCj0x7KRCb3yz+Ga2Rz3E9XXSvUyyxqqhjQAQ==", - "dev": true, - "requires": { - "@sinonjs/formatio": "^3.2.1", - "@sinonjs/text-encoding": "^0.7.1", - "just-extend": "^4.0.2", - "lolex": "^5.0.1", - "path-to-regexp": "^1.7.0" - }, - "dependencies": { - "lolex": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/lolex/-/lolex-5.1.2.tgz", - "integrity": "sha512-h4hmjAvHTmd+25JSwrtTIuwbKdwg5NzZVRMLn9saij4SZaepCrTCxPr35H/3bjwfMJtN+t3CX8672UIkglz28A==", - "dev": true, - "requires": { - "@sinonjs/commons": "^1.7.0" - } - } - } - }, - "node-modules-regexp": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz", - "integrity": "sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA=", - "dev": true - }, - "node-releases": { - "version": "1.1.73", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.73.tgz", - "integrity": "sha512-uW7fodD6pyW2FZNZnp/Z3hvWKeEW1Y8R1+1CnErE8cXFXzl5blBOoVB41CvMer6P6Q0S5FXDwcHgFd1Wj0U9zg==", - "dev": true - }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==" - }, - "object-copy": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", - "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", - "optional": true, - "requires": { - "copy-descriptor": "^0.1.0", - "define-property": "^0.2.5", - "kind-of": "^3.0.3" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "optional": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "optional": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "object-inspect": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.11.0.tgz", - "integrity": "sha512-jp7ikS6Sd3GxQfZJPyH3cjcbJF6GZPClgdV+EFygjFLQ5FmW/dRUnTd9PQ9k0JhoNDabWFbpF1yCdSWCC6gexg==" - }, - "object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true - }, - "object-visit": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", - "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", - "optional": true, - "requires": { - "isobject": "^3.0.0" - } - }, - "object.assign": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz", - "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3", - "has-symbols": "^1.0.1", - "object-keys": "^1.1.1" - } - }, - "object.pick": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", - "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", - "optional": true, - "requires": { - "isobject": "^3.0.1" - } - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "requires": { - "wrappy": "1" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, - "requires": { - "p-limit": "^2.0.0" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true - }, - "pascalcase": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", - "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", - "optional": true - }, - "path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", - "dev": true - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" - }, - "path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true - }, - "path-to-regexp": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz", - "integrity": "sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==", - "dev": true, - "requires": { - "isarray": "0.0.1" - }, - "dependencies": { - "isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", - "dev": true - } - } - }, - "picomatch": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz", - "integrity": "sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==" - }, - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==" - }, - "pirates": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.1.tgz", - "integrity": "sha512-WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA==", - "dev": true, - "requires": { - "node-modules-regexp": "^1.0.0" - } - }, - "pkg-dir": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", - "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", - "dev": true, - "requires": { - "find-up": "^3.0.0" - } - }, - "posix-character-classes": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", - "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=", - "optional": true - }, - "process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "optional": true - }, - "qs": { - "version": "6.10.1", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.1.tgz", - "integrity": "sha512-M528Hph6wsSVOBiYUnGf+K/7w0hNshs/duGsNXPUCLH5XAqjEtiPGwNONLV0tBH8NoGb0mvD5JubnUTrujKDTg==", - "requires": { - "side-channel": "^1.0.4" - } - }, - "randombytes": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", - "dev": true, - "requires": { - "safe-buffer": "^5.1.0" - } - }, - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "optional": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "readdirp": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", - "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", - "optional": true, - "requires": { - "graceful-fs": "^4.1.11", - "micromatch": "^3.1.10", - "readable-stream": "^2.0.2" - } - }, - "regenerate": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", - "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", - "dev": true - }, - "regenerate-unicode-properties": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-8.2.0.tgz", - "integrity": "sha512-F9DjY1vKLo/tPePDycuH3dn9H1OTPIkVD9Kz4LODu+F2C75mgjAJ7x/gwy6ZcSNRAAkhNlJSOHRe8k3p+K9WhA==", - "dev": true, - "requires": { - "regenerate": "^1.4.0" - } - }, - "regenerator-runtime": { - "version": "0.13.9", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz", - "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==", - "dev": true - }, - "regenerator-transform": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.14.5.tgz", - "integrity": "sha512-eOf6vka5IO151Jfsw2NO9WpGX58W6wWmefK3I1zEGr0lOD0u8rwPaNqQL1aRxUaxLeKO3ArNh3VYg1KbaD+FFw==", - "dev": true, - "requires": { - "@babel/runtime": "^7.8.4" - } - }, - "regex-not": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", - "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", - "optional": true, - "requires": { - "extend-shallow": "^3.0.2", - "safe-regex": "^1.1.0" - } - }, - "regexpu-core": { - "version": "4.7.1", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.7.1.tgz", - "integrity": "sha512-ywH2VUraA44DZQuRKzARmw6S66mr48pQVva4LBeRhcOltJ6hExvWly5ZjFLYo67xbIxb6W1q4bAGtgfEl20zfQ==", - "dev": true, - "requires": { - "regenerate": "^1.4.0", - "regenerate-unicode-properties": "^8.2.0", - "regjsgen": "^0.5.1", - "regjsparser": "^0.6.4", - "unicode-match-property-ecmascript": "^1.0.4", - "unicode-match-property-value-ecmascript": "^1.2.0" - } - }, - "regjsgen": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.2.tgz", - "integrity": "sha512-OFFT3MfrH90xIW8OOSyUrk6QHD5E9JOTeGodiJeBS3J6IwlgzJMNE/1bZklWz5oTg+9dCMyEetclvCVXOPoN3A==", - "dev": true - }, - "regjsparser": { - "version": "0.6.9", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.9.tgz", - "integrity": "sha512-ZqbNRz1SNjLAiYuwY0zoXW8Ne675IX5q+YHioAGbCw4X96Mjl2+dcX9B2ciaeyYjViDAfvIjFpQjJgLttTEERQ==", - "dev": true, - "requires": { - "jsesc": "~0.5.0" - }, - "dependencies": { - "jsesc": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", - "dev": true - } - } - }, - "remove-trailing-separator": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", - "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", - "optional": true - }, - "repeat-element": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.4.tgz", - "integrity": "sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ==", - "optional": true - }, - "repeat-string": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", - "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", - "optional": true - }, - "require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", - "dev": true - }, - "resolve": { - "version": "1.20.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz", - "integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==", - "dev": true, - "requires": { - "is-core-module": "^2.2.0", - "path-parse": "^1.0.6" - } - }, - "resolve-url": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", - "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", - "optional": true - }, - "ret": { - "version": "0.1.15", - "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", - "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", - "optional": true - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - }, - "safe-regex": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", - "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", - "optional": true, - "requires": { - "ret": "~0.1.10" - } - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" - }, - "serialize-javascript": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-5.0.1.tgz", - "integrity": "sha512-SaaNal9imEO737H2c05Og0/8LUXG7EnsZyMa8MzkmuHoELfT6txuj0cMqRj6zfPKnmQ1yasR4PCJc8x+M4JSPA==", - "dev": true, - "requires": { - "randombytes": "^2.1.0" - } - }, - "set-value": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", - "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", - "optional": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-extendable": "^0.1.1", - "is-plain-object": "^2.0.3", - "split-string": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "optional": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "shallow-clone": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", - "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", - "dev": true, - "requires": { - "kind-of": "^6.0.2" - } - }, - "side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", - "requires": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" - } - }, - "sinon": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-7.5.0.tgz", - "integrity": "sha512-AoD0oJWerp0/rY9czP/D6hDTTUYGpObhZjMpd7Cl/A6+j0xBE+ayL/ldfggkBXUs0IkvIiM1ljM8+WkOc5k78Q==", - "dev": true, - "requires": { - "@sinonjs/commons": "^1.4.0", - "@sinonjs/formatio": "^3.2.1", - "@sinonjs/samsam": "^3.3.3", - "diff": "^3.5.0", - "lolex": "^4.2.0", - "nise": "^1.5.2", - "supports-color": "^5.5.0" - }, - "dependencies": { - "diff": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", - "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", - "dev": true - } - } - }, - "slash": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", - "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==" - }, - "snapdragon": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", - "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", - "optional": true, - "requires": { - "base": "^0.11.1", - "debug": "^2.2.0", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "map-cache": "^0.2.2", - "source-map": "^0.5.6", - "source-map-resolve": "^0.5.0", - "use": "^3.1.0" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "optional": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "optional": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "snapdragon-node": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", - "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", - "optional": true, - "requires": { - "define-property": "^1.0.0", - "isobject": "^3.0.0", - "snapdragon-util": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "optional": true, - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "optional": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "optional": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "optional": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "snapdragon-util": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", - "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", - "optional": true, - "requires": { - "kind-of": "^3.2.0" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "optional": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" - }, - "source-map-resolve": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz", - "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", - "optional": true, - "requires": { - "atob": "^2.1.2", - "decode-uri-component": "^0.2.0", - "resolve-url": "^0.2.1", - "source-map-url": "^0.4.0", - "urix": "^0.1.0" - } - }, - "source-map-support": { - "version": "0.5.19", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz", - "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, - "source-map-url": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.1.tgz", - "integrity": "sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw==", - "optional": true - }, - "split-string": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", - "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", - "optional": true, - "requires": { - "extend-shallow": "^3.0.0" - } - }, - "static-extend": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", - "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", - "optional": true, - "requires": { - "define-property": "^0.2.5", - "object-copy": "^0.1.0" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "optional": true, - "requires": { - "is-descriptor": "^0.1.0" - } - } - } - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - } - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "requires": { - "safe-buffer": "~5.1.0" - } - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - }, - "strip-json-comments": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", - "dev": true - }, - "superagent": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/superagent/-/superagent-5.3.1.tgz", - "integrity": "sha512-wjJ/MoTid2/RuGCOFtlacyGNxN9QLMgcpYLDQlWFIhhdJ93kNscFonGvrpAHSCVjRVj++DGCglocF7Aej1KHvQ==", - "requires": { - "component-emitter": "^1.3.0", - "cookiejar": "^2.1.2", - "debug": "^4.1.1", - "fast-safe-stringify": "^2.0.7", - "form-data": "^3.0.0", - "formidable": "^1.2.2", - "methods": "^1.1.2", - "mime": "^2.4.6", - "qs": "^6.9.4", - "readable-stream": "^3.6.0", - "semver": "^7.3.2" - }, - "dependencies": { - "debug": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", - "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", - "requires": { - "ms": "2.1.2" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - }, - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "requires": { - "lru-cache": "^6.0.0" - } - } - } - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - }, - "to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", - "dev": true - }, - "to-object-path": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", - "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", - "optional": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "optional": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "to-regex": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", - "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", - "optional": true, - "requires": { - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "regex-not": "^1.0.2", - "safe-regex": "^1.1.0" - } - }, - "to-regex-range": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", - "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", - "optional": true, - "requires": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" - } - }, - "type-detect": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", - "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", - "dev": true - }, - "unicode-canonical-property-names-ecmascript": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz", - "integrity": "sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ==", - "dev": true - }, - "unicode-match-property-ecmascript": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz", - "integrity": "sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg==", - "dev": true, - "requires": { - "unicode-canonical-property-names-ecmascript": "^1.0.4", - "unicode-property-aliases-ecmascript": "^1.0.4" - } - }, - "unicode-match-property-value-ecmascript": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.2.0.tgz", - "integrity": "sha512-wjuQHGQVofmSJv1uVISKLE5zO2rNGzM/KCYZch/QQvez7C1hUhBIuZ701fYXExuufJFMPhv2SyL8CyoIfMLbIQ==", - "dev": true - }, - "unicode-property-aliases-ecmascript": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.1.0.tgz", - "integrity": "sha512-PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg==", - "dev": true - }, - "union-value": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", - "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", - "optional": true, - "requires": { - "arr-union": "^3.1.0", - "get-value": "^2.0.6", - "is-extendable": "^0.1.1", - "set-value": "^2.0.1" - } - }, - "unset-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", - "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", - "optional": true, - "requires": { - "has-value": "^0.3.1", - "isobject": "^3.0.0" - }, - "dependencies": { - "has-value": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", - "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", - "optional": true, - "requires": { - "get-value": "^2.0.3", - "has-values": "^0.1.4", - "isobject": "^2.0.0" - }, - "dependencies": { - "isobject": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", - "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", - "optional": true, - "requires": { - "isarray": "1.0.0" - } - } - } - }, - "has-values": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", - "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", - "optional": true - } - } - }, - "upath": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz", - "integrity": "sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==", - "optional": true - }, - "urix": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", - "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", - "optional": true - }, - "use": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", - "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", - "optional": true - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" - }, - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - }, - "wide-align": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", - "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", - "dev": true, - "requires": { - "string-width": "^1.0.2 || 2" - } - }, - "workerpool": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.1.0.tgz", - "integrity": "sha512-toV7q9rWNYha963Pl/qyeZ6wG+3nnsyvolaNUS8+R5Wtw6qJPTxIlOP1ZSvcGhEJw+l3HMMmtiNo9Gl61G4GVg==", - "dev": true - }, - "wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "dev": true - }, - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "string-width": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", - "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" - } - }, - "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.0" - } - } - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" - }, - "y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "@types/node": { + "version": "12.20.19", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.19.tgz", + "integrity": "sha512-niAuZrwrjKck4+XhoCw6AAVQBENHftpXw9F4ryk66fTgYaKQ53R4FI7c9vUGGw5vQis1HKBHDR1gcYI/Bq1xvw==", "dev": true }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, - "yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", - "dev": true, + "axios": { + "version": "0.21.1", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.1.tgz", + "integrity": "sha512-dKQiRHxGD9PPRIUNIWvZhPTPpl1rf/OxTYKsqKUDjBwYylTvV7SjSHJb9ratfyzM6wCdLCOYLzs73qpg5c4iGA==", "requires": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "string-width": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", - "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" - } - }, - "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.0" - } - } + "follow-redirects": "^1.10.0" } }, - "yargs-parser": { - "version": "20.2.4", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.4.tgz", - "integrity": "sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA==", - "dev": true - }, - "yargs-unparser": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-2.0.0.tgz", - "integrity": "sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==", - "dev": true, - "requires": { - "camelcase": "^6.0.0", - "decamelize": "^4.0.0", - "flat": "^5.0.2", - "is-plain-obj": "^2.1.0" - } + "follow-redirects": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.1.tgz", + "integrity": "sha512-HWqDgT7ZEkqRzBvc2s64vSZ/hfOceEol3ac/7tKwzuvEyWx3/4UegXh5oBOIotkGsObyk3xznnSRVADBgWSQVg==" }, - "yocto-queue": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "typescript": { + "version": "3.9.10", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz", + "integrity": "sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==", "dev": true } } diff --git a/package.json b/package.json index a67d325..9b4b232 100644 --- a/package.json +++ b/package.json @@ -1,46 +1,27 @@ { "name": "vrchatapi", "version": "1.0.0", - "description": "_VRChat_API_Banner_https__raw_githubusercontent_com_vrchatapi_vrchatapi_github_io_master_assets_apibanner_png_VRChat_API_DocumentationThis_project_is_an__OPEN_Open_Source_Project_https__openopensource_orgIndividuals_making_significant_and_valuable_contributions_are_givencommit_access_to_the_project_to_contribute_as_they_see_fit__This_projectis_more_like_an_open_wiki_than_a_standard_guarded_open_source_project__DisclaimerThis_is_the_official_response_of_the_VRChat_Team__from_Tupper_more_specifically_on_the_usage_of_the_VRChat_API__Use_of_the_API_using_applications_other_than_the_approved_methods__website_VRChat_application_are_not_officially_supported__You_may_use_the_API_for_your_own_application_but_keep_these_guidelines_in_mind__We_do_not_provide_documentation_or_support_for_the_API___Do_not_make_queries_to_the_API_more_than_once_per_60_seconds___Abuse_of_the_API_may_result_in_account_termination___Access_to_API_endpoints_may_break_at_any_given_time_with_no_warning_As_stated_this_documentation_was_not_created_with_the_help_of_the_official_VRChat_team__Therefore_this_documentation_is_not_an_official_documentation_of_the_VRChat_API_and_may_not_be_always_up_to_date_with_the_latest_versions__If_you_find_that_a_page_or_endpoint_is_not_longer_valid_please_create_an_issue_and_tell_us_so_we_can_fix_it__Get_in_touch_with_us_https__discord_gg_qjZE9C9fkBvrchat_api_https__discord_gg_qjZE9C9fkB", - "license": "The MIT License (MIT)", - "main": "dist/index.js", + "description": "OpenAPI client for vrchatapi", + "author": "OpenAPI-Generator Contributors", + "keywords": [ + "axios", + "typescript", + "openapi-client", + "openapi-generator", + "vrchatapi" + ], + "license": "Unlicense", + "main": "./dist/index.js", + "typings": "./dist/index.d.ts", "scripts": { - "build": "babel src -d dist", - "prepare": "npm run build", - "test": "mocha --require @babel/register --recursive" - }, - "browser": { - "fs": false + "build": "tsc --outDir dist/", + "prepublishOnly": "npm run build" }, "dependencies": { - "@babel/cli": "^7.0.0", - "superagent": "^5.3.0" + "axios": "^0.21.1" }, "devDependencies": { - "@babel/core": "^7.0.0", - "@babel/plugin-proposal-class-properties": "^7.0.0", - "@babel/plugin-proposal-decorators": "^7.0.0", - "@babel/plugin-proposal-do-expressions": "^7.0.0", - "@babel/plugin-proposal-export-default-from": "^7.0.0", - "@babel/plugin-proposal-export-namespace-from": "^7.0.0", - "@babel/plugin-proposal-function-bind": "^7.0.0", - "@babel/plugin-proposal-function-sent": "^7.0.0", - "@babel/plugin-proposal-json-strings": "^7.0.0", - "@babel/plugin-proposal-logical-assignment-operators": "^7.0.0", - "@babel/plugin-proposal-nullish-coalescing-operator": "^7.0.0", - "@babel/plugin-proposal-numeric-separator": "^7.0.0", - "@babel/plugin-proposal-optional-chaining": "^7.0.0", - "@babel/plugin-proposal-pipeline-operator": "^7.0.0", - "@babel/plugin-proposal-throw-expressions": "^7.0.0", - "@babel/plugin-syntax-dynamic-import": "^7.0.0", - "@babel/plugin-syntax-import-meta": "^7.0.0", - "@babel/preset-env": "^7.0.0", - "@babel/register": "^7.0.0", - "expect.js": "^0.3.1", - "mocha": "^8.0.1", - "sinon": "^7.2.0" - }, - "files": [ - "dist" - ] + "@types/node": "^12.11.5", + "typescript": "^3.6.4" + } } diff --git a/src/ApiClient.js b/src/ApiClient.js deleted file mode 100644 index 0126a2a..0000000 --- a/src/ApiClient.js +++ /dev/null @@ -1,692 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - - -import superagent from "superagent"; -import querystring from "querystring"; - -/** -* @module ApiClient -* @version 1.0.0 -*/ - -/** -* Manages low level client-server communications, parameter marshalling, etc. There should not be any need for an -* application to use this class directly - the *Api and model classes provide the public API for the service. The -* contents of this file should be regarded as internal but are documented for completeness. -* @alias module:ApiClient -* @class -*/ -class ApiClient { - constructor() { - /** - * The base URL against which to resolve every API call's (relative) path. - * @type {String} - * @default https://api.vrchat.cloud/api/1 - */ - this.basePath = 'https://api.vrchat.cloud/api/1'.replace(/\/+$/, ''); - - /** - * The authentication methods to be included for all API calls. - * @type {Array.} - */ - this.authentications = { - 'apiKeyCookie': {type: 'apiKey', 'in': 'query', name: 'apiKey'}, - 'apiKeyQuery': {type: 'apiKey', 'in': 'query', name: 'apiKey'}, - 'authCookie': {type: 'apiKey', 'in': 'query', name: 'auth'}, - 'authHeader': {type: 'basic'}, - 'twoFactorAuthCookie': {type: 'apiKey', 'in': 'query', name: 'twoFactorAuth'} - } - - /** - * The default HTTP headers to be included for all API calls. - * @type {Array.} - * @default {} - */ - this.defaultHeaders = { - 'User-Agent': 'vrchatapi-node' - }; - - /** - * The default HTTP timeout for all API calls. - * @type {Number} - * @default 60000 - */ - this.timeout = 60000; - - /** - * If set to false an additional timestamp parameter is added to all API GET calls to - * prevent browser caching - * @type {Boolean} - * @default true - */ - this.cache = true; - - /** - * If set to true, the client will save the cookies from each server - * response, and return them in the next request. - * @default true - */ - this.enableCookies = true; - - /* - * Used to save and return cookies in a node.js (non-browser) setting, - * if this.enableCookies is set to true. - */ - if (typeof window === 'undefined') { - this.agent = new superagent.agent(); - } - - /* - * Allow user to override superagent agent - */ - this.requestAgent = null; - - /* - * Allow user to add superagent plugins - */ - this.plugins = null; - - } - - /** - * Returns a string representation for an actual parameter. - * @param param The actual parameter. - * @returns {String} The string representation of param. - */ - paramToString(param) { - if (param == undefined || param == null) { - return ''; - } - if (param instanceof Date) { - return param.toJSON(); - } - if (ApiClient.canBeJsonified(param)) { - return JSON.stringify(param); - } - - return param.toString(); - } - - /** - * Returns a boolean indicating if the parameter could be JSON.stringified - * @param param The actual parameter - * @returns {Boolean} Flag indicating if param can be JSON.stringified - */ - static canBeJsonified(str) { - if (typeof str !== 'string' && typeof str !== 'object') return false; - try { - const type = str.toString(); - return type === '[object Object]' - || type === '[object Array]'; - } catch (err) { - return false; - } - }; - - /** - * Builds full URL by appending the given path to the base URL and replacing path parameter place-holders with parameter values. - * NOTE: query parameters are not handled here. - * @param {String} path The path to append to the base URL. - * @param {Object} pathParams The parameter values to append. - * @param {String} apiBasePath Base path defined in the path, operation level to override the default one - * @returns {String} The encoded path with parameter values substituted. - */ - buildUrl(path, pathParams, apiBasePath) { - if (!path.match(/^\//)) { - path = '/' + path; - } - - var url = this.basePath + path; - - // use API (operation, path) base path if defined - if (apiBasePath !== null && apiBasePath !== undefined) { - url = apiBasePath + path; - } - - url = url.replace(/\{([\w-\.]+)\}/g, (fullMatch, key) => { - var value; - if (pathParams.hasOwnProperty(key)) { - value = this.paramToString(pathParams[key]); - } else { - value = fullMatch; - } - - return encodeURIComponent(value); - }); - - return url; - } - - /** - * Checks whether the given content type represents JSON.
- * JSON content type examples:
- *
    - *
  • application/json
  • - *
  • application/json; charset=UTF8
  • - *
  • APPLICATION/JSON
  • - *
- * @param {String} contentType The MIME content type to check. - * @returns {Boolean} true if contentType represents JSON, otherwise false. - */ - isJsonMime(contentType) { - return Boolean(contentType != null && contentType.match(/^application\/json(;.*)?$/i)); - } - - /** - * Chooses a content type from the given array, with JSON preferred; i.e. return JSON if included, otherwise return the first. - * @param {Array.} contentTypes - * @returns {String} The chosen content type, preferring JSON. - */ - jsonPreferredMime(contentTypes) { - for (var i = 0; i < contentTypes.length; i++) { - if (this.isJsonMime(contentTypes[i])) { - return contentTypes[i]; - } - } - - return contentTypes[0]; - } - - /** - * Checks whether the given parameter value represents file-like content. - * @param param The parameter to check. - * @returns {Boolean} true if param represents a file. - */ - isFileParam(param) { - // fs.ReadStream in Node.js and Electron (but not in runtime like browserify) - if (typeof require === 'function') { - let fs; - try { - fs = require('fs'); - } catch (err) {} - if (fs && fs.ReadStream && param instanceof fs.ReadStream) { - return true; - } - } - - // Buffer in Node.js - if (typeof Buffer === 'function' && param instanceof Buffer) { - return true; - } - - // Blob in browser - if (typeof Blob === 'function' && param instanceof Blob) { - return true; - } - - // File in browser (it seems File object is also instance of Blob, but keep this for safe) - if (typeof File === 'function' && param instanceof File) { - return true; - } - - return false; - } - - /** - * Normalizes parameter values: - *
    - *
  • remove nils
  • - *
  • keep files and arrays
  • - *
  • format to string with `paramToString` for other cases
  • - *
- * @param {Object.} params The parameters as object properties. - * @returns {Object.} normalized parameters. - */ - normalizeParams(params) { - var newParams = {}; - for (var key in params) { - if (params.hasOwnProperty(key) && params[key] != undefined && params[key] != null) { - var value = params[key]; - if (this.isFileParam(value) || Array.isArray(value)) { - newParams[key] = value; - } else { - newParams[key] = this.paramToString(value); - } - } - } - - return newParams; - } - - /** - * Builds a string representation of an array-type actual parameter, according to the given collection format. - * @param {Array} param An array parameter. - * @param {module:ApiClient.CollectionFormatEnum} collectionFormat The array element separator strategy. - * @returns {String|Array} A string representation of the supplied collection, using the specified delimiter. Returns - * param as is if collectionFormat is multi. - */ - buildCollectionParam(param, collectionFormat) { - if (param == null) { - return null; - } - switch (collectionFormat) { - case 'csv': - return param.map(this.paramToString, this).join(','); - case 'ssv': - return param.map(this.paramToString, this).join(' '); - case 'tsv': - return param.map(this.paramToString, this).join('\t'); - case 'pipes': - return param.map(this.paramToString, this).join('|'); - case 'multi': - //return the array directly as SuperAgent will handle it as expected - return param.map(this.paramToString, this); - case 'passthrough': - return param; - default: - throw new Error('Unknown collection format: ' + collectionFormat); - } - } - - /** - * Applies authentication headers to the request. - * @param {Object} request The request object created by a superagent() call. - * @param {Array.} authNames An array of authentication method names. - */ - applyAuthToRequest(request, authNames) { - authNames.forEach((authName) => { - var auth = this.authentications[authName]; - switch (auth.type) { - case 'basic': - if (auth.username || auth.password) { - request.auth(auth.username || '', auth.password || ''); - } - - break; - case 'bearer': - if (auth.accessToken) { - var localVarBearerToken = typeof auth.accessToken === 'function' - ? auth.accessToken() - : auth.accessToken - request.set({'Authorization': 'Bearer ' + localVarBearerToken}); - } - - break; - case 'apiKey': - if (auth.apiKey) { - var data = {}; - if (auth.apiKeyPrefix) { - data[auth.name] = auth.apiKeyPrefix + ' ' + auth.apiKey; - } else { - data[auth.name] = auth.apiKey; - } - - if (auth['in'] === 'header') { - request.set(data); - } else { - request.query(data); - } - } - - break; - case 'oauth2': - if (auth.accessToken) { - request.set({'Authorization': 'Bearer ' + auth.accessToken}); - } - - break; - default: - throw new Error('Unknown authentication type: ' + auth.type); - } - }); - } - - /** - * Deserializes an HTTP response body into a value of the specified type. - * @param {Object} response A SuperAgent response object. - * @param {(String|Array.|Object.|Function)} returnType The type to return. Pass a string for simple types - * or the constructor function for a complex type. Pass an array containing the type name to return an array of that type. To - * return an object, pass an object with one property whose name is the key type and whose value is the corresponding value type: - * all properties on data will be converted to this type. - * @returns A value of the specified type. - */ - deserialize(response, returnType) { - if (response == null || returnType == null || response.status == 204) { - return null; - } - - // Rely on SuperAgent for parsing response body. - // See http://visionmedia.github.io/superagent/#parsing-response-bodies - var data = response.body; - if (data == null || (typeof data === 'object' && typeof data.length === 'undefined' && !Object.keys(data).length)) { - // SuperAgent does not always produce a body; use the unparsed response as a fallback - data = response.text; - } - - return ApiClient.convertToType(data, returnType); - } - - - /** - * Invokes the REST service using the supplied settings and parameters. - * @param {String} path The base URL to invoke. - * @param {String} httpMethod The HTTP method to use. - * @param {Object.} pathParams A map of path parameters and their values. - * @param {Object.} queryParams A map of query parameters and their values. - * @param {Object.} headerParams A map of header parameters and their values. - * @param {Object.} formParams A map of form parameters and their values. - * @param {Object} bodyParam The value to pass as the request body. - * @param {Array.} authNames An array of authentication type names. - * @param {Array.} contentTypes An array of request MIME types. - * @param {Array.} accepts An array of acceptable response MIME types. - * @param {(String|Array|ObjectFunction)} returnType The required type to return; can be a string for simple types or the - * constructor for a complex type. - * @param {String} apiBasePath base path defined in the operation/path level to override the default one - * @returns {Promise} A {@link https://www.promisejs.org/|Promise} object. - */ - callApi(path, httpMethod, pathParams, - queryParams, headerParams, formParams, bodyParam, authNames, contentTypes, accepts, - returnType, apiBasePath) { - - var url = this.buildUrl(path, pathParams, apiBasePath); - var request = superagent(httpMethod, url); - - if (this.plugins !== null) { - for (var index in this.plugins) { - if (this.plugins.hasOwnProperty(index)) { - request.use(this.plugins[index]) - } - } - } - - // apply authentications - this.applyAuthToRequest(request, authNames); - - // set query parameters - if (httpMethod.toUpperCase() === 'GET' && this.cache === false) { - queryParams['_'] = new Date().getTime(); - } - - request.query(this.normalizeParams(queryParams)); - - // set header parameters - request.set(this.defaultHeaders).set(this.normalizeParams(headerParams)); - - // set requestAgent if it is set by user - if (this.requestAgent) { - request.agent(this.requestAgent); - } - - // set request timeout - request.timeout(this.timeout); - - var contentType = this.jsonPreferredMime(contentTypes); - if (contentType) { - // Issue with superagent and multipart/form-data (https://github.com/visionmedia/superagent/issues/746) - if(contentType != 'multipart/form-data') { - request.type(contentType); - } - } - - if (contentType === 'application/x-www-form-urlencoded') { - request.send(querystring.stringify(this.normalizeParams(formParams))); - } else if (contentType == 'multipart/form-data') { - var _formParams = this.normalizeParams(formParams); - for (var key in _formParams) { - if (_formParams.hasOwnProperty(key)) { - let _formParamsValue = _formParams[key]; - if (this.isFileParam(_formParamsValue)) { - // file field - request.attach(key, _formParamsValue); - } else if (Array.isArray(_formParamsValue) && _formParamsValue.length - && this.isFileParam(_formParamsValue[0])) { - // multiple files - _formParamsValue.forEach(file => request.attach(key, file)); - } else { - request.field(key, _formParamsValue); - } - } - } - } else if (bodyParam !== null && bodyParam !== undefined) { - if (!request.header['Content-Type']) { - request.type('application/json'); - } - request.send(bodyParam); - } - - var accept = this.jsonPreferredMime(accepts); - if (accept) { - request.accept(accept); - } - - if (returnType === 'Blob') { - request.responseType('blob'); - } else if (returnType === 'String') { - request.responseType('string'); - } - - // Attach previously saved cookies, if enabled - if (this.enableCookies){ - if (typeof window === 'undefined') { - this.agent._attachCookies(request); - } - else { - request.withCredentials(); - } - } - - return new Promise((resolve, reject) => { - request.end((error, response) => { - if (error) { - var err = {}; - if (response) { - err.status = response.status; - err.statusText = response.statusText; - err.body = response.body; - err.response = response; - } - err.error = error; - - reject(err); - } else { - try { - var data = this.deserialize(response, returnType); - if (this.enableCookies && typeof window === 'undefined'){ - this.agent._saveCookies(response); - } - - resolve({data, response}); - } catch (err) { - reject(err); - } - } - }); - }); - - } - - /** - * Parses an ISO-8601 string representation or epoch representation of a date value. - * @param {String} str The date value as a string. - * @returns {Date} The parsed date object. - */ - static parseDate(str) { - if (isNaN(str)) { - return new Date(str.replace(/(\d)(T)(\d)/i, '$1 $3')); - } - return new Date(+str); - } - - /** - * Converts a value to the specified type. - * @param {(String|Object)} data The data to convert, as a string or object. - * @param {(String|Array.|Object.|Function)} type The type to return. Pass a string for simple types - * or the constructor function for a complex type. Pass an array containing the type name to return an array of that type. To - * return an object, pass an object with one property whose name is the key type and whose value is the corresponding value type: - * all properties on data will be converted to this type. - * @returns An instance of the specified type or null or undefined if data is null or undefined. - */ - static convertToType(data, type) { - if (data === null || data === undefined) - return data - - switch (type) { - case 'Boolean': - return Boolean(data); - case 'Integer': - return parseInt(data, 10); - case 'Number': - return parseFloat(data); - case 'String': - return String(data); - case 'Date': - return ApiClient.parseDate(String(data)); - case 'Blob': - return data; - default: - if (type === Object) { - // generic object, return directly - return data; - } else if (typeof type.constructFromObject === 'function') { - // for model type like User and enum class - return type.constructFromObject(data); - } else if (Array.isArray(type)) { - // for array type like: ['String'] - var itemType = type[0]; - - return data.map((item) => { - return ApiClient.convertToType(item, itemType); - }); - } else if (typeof type === 'object') { - // for plain object type like: {'String': 'Integer'} - var keyType, valueType; - for (var k in type) { - if (type.hasOwnProperty(k)) { - keyType = k; - valueType = type[k]; - break; - } - } - - var result = {}; - for (var k in data) { - if (data.hasOwnProperty(k)) { - var key = ApiClient.convertToType(k, keyType); - var value = ApiClient.convertToType(data[k], valueType); - result[key] = value; - } - } - - return result; - } else { - // for unknown type, return the data directly - return data; - } - } - } - - /** - * Gets an array of host settings - * @returns An array of host settings - */ - hostSettings() { - return [ - { - 'url': "https://api.vrchat.cloud/api/1", - 'description': "No description provided", - } - ]; - } - - getBasePathFromSettings(index, variables={}) { - var servers = this.hostSettings(); - - // check array index out of bound - if (index < 0 || index >= servers.length) { - throw new Error("Invalid index " + index + " when selecting the host settings. Must be less than " + servers.length); - } - - var server = servers[index]; - var url = server['url']; - - // go through variable and assign a value - for (var variable_name in server['variables']) { - if (variable_name in variables) { - let variable = server['variables'][variable_name]; - if ( !('enum_values' in variable) || variable['enum_values'].includes(variables[variable_name]) ) { - url = url.replace("{" + variable_name + "}", variables[variable_name]); - } else { - throw new Error("The variable `" + variable_name + "` in the host URL has invalid value " + variables[variable_name] + ". Must be " + server['variables'][variable_name]['enum_values'] + "."); - } - } else { - // use default value - url = url.replace("{" + variable_name + "}", server['variables'][variable_name]['default_value']) - } - } - return url; - } - - /** - * Constructs a new map or array model from REST data. - * @param data {Object|Array} The REST data. - * @param obj {Object|Array} The target object or array. - */ - static constructFromObject(data, obj, itemType) { - if (Array.isArray(data)) { - for (var i = 0; i < data.length; i++) { - if (data.hasOwnProperty(i)) - obj[i] = ApiClient.convertToType(data[i], itemType); - } - } else { - for (var k in data) { - if (data.hasOwnProperty(k)) - obj[k] = ApiClient.convertToType(data[k], itemType); - } - } - }; -} - -/** - * Enumeration of collection format separator strategies. - * @enum {String} - * @readonly - */ -ApiClient.CollectionFormatEnum = { - /** - * Comma-separated values. Value: csv - * @const - */ - CSV: ',', - - /** - * Space-separated values. Value: ssv - * @const - */ - SSV: ' ', - - /** - * Tab-separated values. Value: tsv - * @const - */ - TSV: '\t', - - /** - * Pipe(|)-separated values. Value: pipes - * @const - */ - PIPES: '|', - - /** - * Native array. Value: multi - * @const - */ - MULTI: 'multi' -}; - -/** -* The default API client implementation. -* @type {module:ApiClient} -*/ -ApiClient.instance = new ApiClient(); -export default ApiClient; diff --git a/src/api/AuthenticationApi.js b/src/api/AuthenticationApi.js deleted file mode 100644 index 9b25d8e..0000000 --- a/src/api/AuthenticationApi.js +++ /dev/null @@ -1,307 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - - -import ApiClient from "../ApiClient"; -import CurrentUser from '../model/CurrentUser'; -import InlineObject from '../model/InlineObject'; -import InlineObject1 from '../model/InlineObject1'; -import InlineResponse200 from '../model/InlineResponse200'; -import InlineResponse2001 from '../model/InlineResponse2001'; -import InlineResponse401 from '../model/InlineResponse401'; -import Success from '../model/Success'; - -/** -* Authentication service. -* @module api/AuthenticationApi -* @version 1.0.0 -*/ -export default class AuthenticationApi { - - /** - * Constructs a new AuthenticationApi. - * @alias module:api/AuthenticationApi - * @class - * @param {module:ApiClient} [apiClient] Optional API client implementation to use, - * default to {@link module:ApiClient#instance} if unspecified. - */ - constructor(apiClient) { - this.apiClient = apiClient || ApiClient.instance; - } - - - - /** - * Delete User - * Deletes the account with given ID. Normal users only have permission to delete their own account. Account deletion is 14 days from this request, and will be cancelled if you do an authenticated request with the account afterwards. **VRC+ NOTE:** Despite the 14-days cooldown, any VRC+ subscription will be cancelled **immediately**. **METHOD NOTE:** Despite this being a Delete action, the method type required is PUT. - * @param {String} userId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/CurrentUser} and HTTP response - */ - deleteUserByIdWithHttpInfo(userId) { - let postBody = null; - // verify the required parameter 'userId' is set - if (userId === undefined || userId === null) { - throw new Error("Missing the required parameter 'userId' when calling deleteUserById"); - } - - let pathParams = { - 'userId': userId - }; - let queryParams = { - }; - let headerParams = { - }; - let formParams = { - }; - - let authNames = ['apiKeyCookie', 'authCookie']; - let contentTypes = []; - let accepts = ['application/json']; - let returnType = CurrentUser; - return this.apiClient.callApi( - '/user/{userId}/delete', 'PUT', - pathParams, queryParams, headerParams, formParams, postBody, - authNames, contentTypes, accepts, returnType, null - ); - } - - /** - * Delete User - * Deletes the account with given ID. Normal users only have permission to delete their own account. Account deletion is 14 days from this request, and will be cancelled if you do an authenticated request with the account afterwards. **VRC+ NOTE:** Despite the 14-days cooldown, any VRC+ subscription will be cancelled **immediately**. **METHOD NOTE:** Despite this being a Delete action, the method type required is PUT. - * @param {String} userId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/CurrentUser} - */ - deleteUserById(userId) { - return this.deleteUserByIdWithHttpInfo(userId) - .then(function(response_and_data) { - return response_and_data.data; - }); - } - - - /** - * Login and/or Get Current User Info - * Login and/or Get user data from your VRChat account. If `Authorization` header is present then a new login session will be generated, and a new `auth` cookie is returned. **WARNING: Session Limit:** Each authentication with login credentials counts as a separate session, out of which you have a limited amount. Make sure to save and reuse the `auth` cookie whenever you can, and avoid sending the Authorization header unless strictly neccesary. While the exact number of simultaneous open sessions is secret, expect to **very fast** run into the rate-limit and be temporarily blocked from making new sessions until the old ones expire. - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/CurrentUser} and HTTP response - */ - getCurrentUserWithHttpInfo() { - let postBody = null; - - let pathParams = { - }; - let queryParams = { - }; - let headerParams = { - }; - let formParams = { - }; - - let authNames = ['authCookie', 'authHeader', 'twoFactorAuthCookie']; - let contentTypes = []; - let accepts = ['application/json']; - let returnType = CurrentUser; - return this.apiClient.callApi( - '/auth/user', 'GET', - pathParams, queryParams, headerParams, formParams, postBody, - authNames, contentTypes, accepts, returnType, null - ); - } - - /** - * Login and/or Get Current User Info - * Login and/or Get user data from your VRChat account. If `Authorization` header is present then a new login session will be generated, and a new `auth` cookie is returned. **WARNING: Session Limit:** Each authentication with login credentials counts as a separate session, out of which you have a limited amount. Make sure to save and reuse the `auth` cookie whenever you can, and avoid sending the Authorization header unless strictly neccesary. While the exact number of simultaneous open sessions is secret, expect to **very fast** run into the rate-limit and be temporarily blocked from making new sessions until the old ones expire. - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/CurrentUser} - */ - getCurrentUser() { - return this.getCurrentUserWithHttpInfo() - .then(function(response_and_data) { - return response_and_data.data; - }); - } - - - /** - * Logout - * Invalidates the auth cookie. - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/Success} and HTTP response - */ - logoutWithHttpInfo() { - let postBody = null; - - let pathParams = { - }; - let queryParams = { - }; - let headerParams = { - }; - let formParams = { - }; - - let authNames = ['apiKeyCookie', 'authCookie']; - let contentTypes = []; - let accepts = ['application/json']; - let returnType = Success; - return this.apiClient.callApi( - '/logout', 'PUT', - pathParams, queryParams, headerParams, formParams, postBody, - authNames, contentTypes, accepts, returnType, null - ); - } - - /** - * Logout - * Invalidates the auth cookie. - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/Success} - */ - logout() { - return this.logoutWithHttpInfo() - .then(function(response_and_data) { - return response_and_data.data; - }); - } - - - /** - * Verify 2FA code - * Finishes the login sequence with a normal 2FA-generated code for accounts with 2FA-protection enabled. - * @param {Object} opts Optional parameters - * @param {module:model/InlineObject} opts.inlineObject - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/InlineResponse2001} and HTTP response - */ - verify2FAWithHttpInfo(opts) { - opts = opts || {}; - let postBody = opts['inlineObject']; - - let pathParams = { - }; - let queryParams = { - }; - let headerParams = { - }; - let formParams = { - }; - - let authNames = ['authCookie']; - let contentTypes = ['application/json']; - let accepts = ['application/json']; - let returnType = InlineResponse2001; - return this.apiClient.callApi( - '/auth/twofactorauth/totp/verify', 'POST', - pathParams, queryParams, headerParams, formParams, postBody, - authNames, contentTypes, accepts, returnType, null - ); - } - - /** - * Verify 2FA code - * Finishes the login sequence with a normal 2FA-generated code for accounts with 2FA-protection enabled. - * @param {Object} opts Optional parameters - * @param {module:model/InlineObject} opts.inlineObject - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/InlineResponse2001} - */ - verify2FA(opts) { - return this.verify2FAWithHttpInfo(opts) - .then(function(response_and_data) { - return response_and_data.data; - }); - } - - - /** - * Verify Auth Token - * Verify whether the currently provided Auth Token is valid. - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/InlineResponse200} and HTTP response - */ - verifyAuthTokenWithHttpInfo() { - let postBody = null; - - let pathParams = { - }; - let queryParams = { - }; - let headerParams = { - }; - let formParams = { - }; - - let authNames = ['apiKeyCookie', 'authCookie']; - let contentTypes = []; - let accepts = ['application/json']; - let returnType = InlineResponse200; - return this.apiClient.callApi( - '/auth', 'GET', - pathParams, queryParams, headerParams, formParams, postBody, - authNames, contentTypes, accepts, returnType, null - ); - } - - /** - * Verify Auth Token - * Verify whether the currently provided Auth Token is valid. - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/InlineResponse200} - */ - verifyAuthToken() { - return this.verifyAuthTokenWithHttpInfo() - .then(function(response_and_data) { - return response_and_data.data; - }); - } - - - /** - * Verify 2FA code with Recovery code - * Finishes the login sequence with an OTP (One Time Password) recovery code for accounts with 2FA-protection enabled. - * @param {Object} opts Optional parameters - * @param {module:model/InlineObject1} opts.inlineObject1 - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/InlineResponse2001} and HTTP response - */ - verifyRecoveryCodeWithHttpInfo(opts) { - opts = opts || {}; - let postBody = opts['inlineObject1']; - - let pathParams = { - }; - let queryParams = { - }; - let headerParams = { - }; - let formParams = { - }; - - let authNames = ['authCookie']; - let contentTypes = ['application/json']; - let accepts = ['application/json']; - let returnType = InlineResponse2001; - return this.apiClient.callApi( - '/auth/twofactorauth/otp/verify', 'POST', - pathParams, queryParams, headerParams, formParams, postBody, - authNames, contentTypes, accepts, returnType, null - ); - } - - /** - * Verify 2FA code with Recovery code - * Finishes the login sequence with an OTP (One Time Password) recovery code for accounts with 2FA-protection enabled. - * @param {Object} opts Optional parameters - * @param {module:model/InlineObject1} opts.inlineObject1 - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/InlineResponse2001} - */ - verifyRecoveryCode(opts) { - return this.verifyRecoveryCodeWithHttpInfo(opts) - .then(function(response_and_data) { - return response_and_data.data; - }); - } - - -} diff --git a/src/api/FilesApi.js b/src/api/FilesApi.js deleted file mode 100644 index 12683ca..0000000 --- a/src/api/FilesApi.js +++ /dev/null @@ -1,597 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - - -import ApiClient from "../ApiClient"; -import Error from '../model/Error'; -import InlineObject3 from '../model/InlineObject3'; -import InlineObject4 from '../model/InlineObject4'; -import InlineResponse2004 from '../model/InlineResponse2004'; -import InlineResponse2005 from '../model/InlineResponse2005'; -import Success from '../model/Success'; - -/** -* Files service. -* @module api/FilesApi -* @version 1.0.0 -*/ -export default class FilesApi { - - /** - * Constructs a new FilesApi. - * @alias module:api/FilesApi - * @class - * @param {module:ApiClient} [apiClient] Optional API client implementation to use, - * default to {@link module:ApiClient#instance} if unspecified. - */ - constructor(apiClient) { - this.apiClient = apiClient || ApiClient.instance; - } - - - - /** - * Create File - * Creates a new File object - * @param {Object} opts Optional parameters - * @param {module:model/InlineObject3} opts.inlineObject3 - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link File} and HTTP response - */ - createFileWithHttpInfo(opts) { - opts = opts || {}; - let postBody = opts['inlineObject3']; - - let pathParams = { - }; - let queryParams = { - }; - let headerParams = { - }; - let formParams = { - }; - - let authNames = ['apiKeyCookie', 'authCookie']; - let contentTypes = ['application/json']; - let accepts = ['application/json']; - let returnType = File; - return this.apiClient.callApi( - '/file', 'POST', - pathParams, queryParams, headerParams, formParams, postBody, - authNames, contentTypes, accepts, returnType, null - ); - } - - /** - * Create File - * Creates a new File object - * @param {Object} opts Optional parameters - * @param {module:model/InlineObject3} opts.inlineObject3 - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link File} - */ - createFile(opts) { - return this.createFileWithHttpInfo(opts) - .then(function(response_and_data) { - return response_and_data.data; - }); - } - - - /** - * Create File Version - * Creates a new FileVersion. Once a Version has been created, proceed to the `/file/{fileId}/{versionId}/file/start` endpoint to start a file upload. - * @param {String} fileId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link File} and HTTP response - */ - createFileVersionWithHttpInfo(fileId) { - let postBody = null; - // verify the required parameter 'fileId' is set - if (fileId === undefined || fileId === null) { - throw new Error("Missing the required parameter 'fileId' when calling createFileVersion"); - } - - let pathParams = { - 'fileId': fileId - }; - let queryParams = { - }; - let headerParams = { - }; - let formParams = { - }; - - let authNames = ['apiKeyCookie', 'authCookie']; - let contentTypes = []; - let accepts = ['application/json']; - let returnType = File; - return this.apiClient.callApi( - '/file/{fileId}', 'POST', - pathParams, queryParams, headerParams, formParams, postBody, - authNames, contentTypes, accepts, returnType, null - ); - } - - /** - * Create File Version - * Creates a new FileVersion. Once a Version has been created, proceed to the `/file/{fileId}/{versionId}/file/start` endpoint to start a file upload. - * @param {String} fileId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link File} - */ - createFileVersion(fileId) { - return this.createFileVersionWithHttpInfo(fileId) - .then(function(response_and_data) { - return response_and_data.data; - }); - } - - - /** - * Delete File - * Deletes a File object. - * @param {String} fileId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/Success} and HTTP response - */ - deleteFileWithHttpInfo(fileId) { - let postBody = null; - // verify the required parameter 'fileId' is set - if (fileId === undefined || fileId === null) { - throw new Error("Missing the required parameter 'fileId' when calling deleteFile"); - } - - let pathParams = { - 'fileId': fileId - }; - let queryParams = { - }; - let headerParams = { - }; - let formParams = { - }; - - let authNames = ['apiKeyCookie', 'authCookie']; - let contentTypes = []; - let accepts = ['application/json']; - let returnType = Success; - return this.apiClient.callApi( - '/file/{fileId}', 'DELETE', - pathParams, queryParams, headerParams, formParams, postBody, - authNames, contentTypes, accepts, returnType, null - ); - } - - /** - * Delete File - * Deletes a File object. - * @param {String} fileId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/Success} - */ - deleteFile(fileId) { - return this.deleteFileWithHttpInfo(fileId) - .then(function(response_and_data) { - return response_and_data.data; - }); - } - - - /** - * Delete File Version - * Delete a specific version of a file. You can only delete the latest version. - * @param {String} fileId - * @param {Number} versionId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link File} and HTTP response - */ - deleteFileVersionWithHttpInfo(fileId, versionId) { - let postBody = null; - // verify the required parameter 'fileId' is set - if (fileId === undefined || fileId === null) { - throw new Error("Missing the required parameter 'fileId' when calling deleteFileVersion"); - } - // verify the required parameter 'versionId' is set - if (versionId === undefined || versionId === null) { - throw new Error("Missing the required parameter 'versionId' when calling deleteFileVersion"); - } - - let pathParams = { - 'fileId': fileId, - 'versionId': versionId - }; - let queryParams = { - }; - let headerParams = { - }; - let formParams = { - }; - - let authNames = ['apiKeyCookie', 'authCookie']; - let contentTypes = []; - let accepts = ['application/json']; - let returnType = File; - return this.apiClient.callApi( - '/file/{fileId}/{versionId}', 'DELETE', - pathParams, queryParams, headerParams, formParams, postBody, - authNames, contentTypes, accepts, returnType, null - ); - } - - /** - * Delete File Version - * Delete a specific version of a file. You can only delete the latest version. - * @param {String} fileId - * @param {Number} versionId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link File} - */ - deleteFileVersion(fileId, versionId) { - return this.deleteFileVersionWithHttpInfo(fileId, versionId) - .then(function(response_and_data) { - return response_and_data.data; - }); - } - - - /** - * Download File Version - * Downloads the file with the provided version number. **Version Note:** Version 0 is always when the file was created. The real data is usually always located in version 1 and up. **Extension Note:** Files are not guaranteed to have a file extensions. UnityPackage files tends to have it, images through this endpoint do not. You are responsible for appending file extension from the `extension` field when neccesary. - * @param {String} fileId - * @param {Number} versionId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing HTTP response - */ - downloadFileVersionWithHttpInfo(fileId, versionId) { - let postBody = null; - // verify the required parameter 'fileId' is set - if (fileId === undefined || fileId === null) { - throw new Error("Missing the required parameter 'fileId' when calling downloadFileVersion"); - } - // verify the required parameter 'versionId' is set - if (versionId === undefined || versionId === null) { - throw new Error("Missing the required parameter 'versionId' when calling downloadFileVersion"); - } - - let pathParams = { - 'fileId': fileId, - 'versionId': versionId - }; - let queryParams = { - }; - let headerParams = { - }; - let formParams = { - }; - - let authNames = ['apiKeyCookie', 'authCookie']; - let contentTypes = []; - let accepts = []; - let returnType = null; - return this.apiClient.callApi( - '/file/{fileId}/{versionId}', 'GET', - pathParams, queryParams, headerParams, formParams, postBody, - authNames, contentTypes, accepts, returnType, null - ); - } - - /** - * Download File Version - * Downloads the file with the provided version number. **Version Note:** Version 0 is always when the file was created. The real data is usually always located in version 1 and up. **Extension Note:** Files are not guaranteed to have a file extensions. UnityPackage files tends to have it, images through this endpoint do not. You are responsible for appending file extension from the `extension` field when neccesary. - * @param {String} fileId - * @param {Number} versionId - * @return {Promise} a {@link https://www.promisejs.org/|Promise} - */ - downloadFileVersion(fileId, versionId) { - return this.downloadFileVersionWithHttpInfo(fileId, versionId) - .then(function(response_and_data) { - return response_and_data.data; - }); - } - - - /** - * Finish FileData Upload - * Finish an upload of a FileData. This will mark it as \"complete\". After uploading the `file` for Avatars and Worlds you then have to upload a `signature` file. - * @param {String} fileId - * @param {Number} versionId - * @param {module:model/String} fileType - * @param {Object} opts Optional parameters - * @param {module:model/InlineObject4} opts.inlineObject4 - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link File} and HTTP response - */ - finishFileDataUploadWithHttpInfo(fileId, versionId, fileType, opts) { - opts = opts || {}; - let postBody = opts['inlineObject4']; - // verify the required parameter 'fileId' is set - if (fileId === undefined || fileId === null) { - throw new Error("Missing the required parameter 'fileId' when calling finishFileDataUpload"); - } - // verify the required parameter 'versionId' is set - if (versionId === undefined || versionId === null) { - throw new Error("Missing the required parameter 'versionId' when calling finishFileDataUpload"); - } - // verify the required parameter 'fileType' is set - if (fileType === undefined || fileType === null) { - throw new Error("Missing the required parameter 'fileType' when calling finishFileDataUpload"); - } - - let pathParams = { - 'fileId': fileId, - 'versionId': versionId, - 'fileType': fileType - }; - let queryParams = { - }; - let headerParams = { - }; - let formParams = { - }; - - let authNames = ['apiKeyCookie', 'authCookie']; - let contentTypes = ['application/json']; - let accepts = ['application/json']; - let returnType = File; - return this.apiClient.callApi( - '/file/{fileId}/{versionId}/{fileType}/finish', 'PUT', - pathParams, queryParams, headerParams, formParams, postBody, - authNames, contentTypes, accepts, returnType, null - ); - } - - /** - * Finish FileData Upload - * Finish an upload of a FileData. This will mark it as \"complete\". After uploading the `file` for Avatars and Worlds you then have to upload a `signature` file. - * @param {String} fileId - * @param {Number} versionId - * @param {module:model/String} fileType - * @param {Object} opts Optional parameters - * @param {module:model/InlineObject4} opts.inlineObject4 - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link File} - */ - finishFileDataUpload(fileId, versionId, fileType, opts) { - return this.finishFileDataUploadWithHttpInfo(fileId, versionId, fileType, opts) - .then(function(response_and_data) { - return response_and_data.data; - }); - } - - - /** - * Show File - * Shows general information about the \"File\" object. Each File can have several \"Version\"'s, and each Version can have multiple real files or \"Data\" blobs. - * @param {String} fileId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link File} and HTTP response - */ - getFileWithHttpInfo(fileId) { - let postBody = null; - // verify the required parameter 'fileId' is set - if (fileId === undefined || fileId === null) { - throw new Error("Missing the required parameter 'fileId' when calling getFile"); - } - - let pathParams = { - 'fileId': fileId - }; - let queryParams = { - }; - let headerParams = { - }; - let formParams = { - }; - - let authNames = ['apiKeyCookie', 'authCookie']; - let contentTypes = []; - let accepts = ['application/json']; - let returnType = File; - return this.apiClient.callApi( - '/file/{fileId}', 'GET', - pathParams, queryParams, headerParams, formParams, postBody, - authNames, contentTypes, accepts, returnType, null - ); - } - - /** - * Show File - * Shows general information about the \"File\" object. Each File can have several \"Version\"'s, and each Version can have multiple real files or \"Data\" blobs. - * @param {String} fileId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link File} - */ - getFile(fileId) { - return this.getFileWithHttpInfo(fileId) - .then(function(response_and_data) { - return response_and_data.data; - }); - } - - - /** - * Check FileData Upload Status - * Retrieves the upload status for file upload. Can currently only be accessed when `status` is `waiting`. Trying to access it on a file version already uploaded currently times out. - * @param {String} fileId - * @param {Number} versionId - * @param {module:model/String} fileType - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/InlineResponse2004} and HTTP response - */ - getFileDataUploadStatusWithHttpInfo(fileId, versionId, fileType) { - let postBody = null; - // verify the required parameter 'fileId' is set - if (fileId === undefined || fileId === null) { - throw new Error("Missing the required parameter 'fileId' when calling getFileDataUploadStatus"); - } - // verify the required parameter 'versionId' is set - if (versionId === undefined || versionId === null) { - throw new Error("Missing the required parameter 'versionId' when calling getFileDataUploadStatus"); - } - // verify the required parameter 'fileType' is set - if (fileType === undefined || fileType === null) { - throw new Error("Missing the required parameter 'fileType' when calling getFileDataUploadStatus"); - } - - let pathParams = { - 'fileId': fileId, - 'versionId': versionId, - 'fileType': fileType - }; - let queryParams = { - }; - let headerParams = { - }; - let formParams = { - }; - - let authNames = ['apiKeyCookie', 'authCookie']; - let contentTypes = []; - let accepts = ['application/json']; - let returnType = InlineResponse2004; - return this.apiClient.callApi( - '/file/{fileId}/{versionId}/{fileType}/status', 'GET', - pathParams, queryParams, headerParams, formParams, postBody, - authNames, contentTypes, accepts, returnType, null - ); - } - - /** - * Check FileData Upload Status - * Retrieves the upload status for file upload. Can currently only be accessed when `status` is `waiting`. Trying to access it on a file version already uploaded currently times out. - * @param {String} fileId - * @param {Number} versionId - * @param {module:model/String} fileType - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/InlineResponse2004} - */ - getFileDataUploadStatus(fileId, versionId, fileType) { - return this.getFileDataUploadStatusWithHttpInfo(fileId, versionId, fileType) - .then(function(response_and_data) { - return response_and_data.data; - }); - } - - - /** - * List Files - * Returns a list of files - * @param {Object} opts Optional parameters - * @param {String} opts.tag Tag, for example \"icon\" or \"gallery\", not included by default. - * @param {String} opts.userId UserID, will always generate a 500 permission error. - * @param {Number} opts.n The number of objects to return. (default to 60) - * @param {Number} opts.offset A zero-based offset from the default object sorting from where search results start. - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link Array.} and HTTP response - */ - getFilesWithHttpInfo(opts) { - opts = opts || {}; - let postBody = null; - - let pathParams = { - }; - let queryParams = { - 'tag': opts['tag'], - 'userId': opts['userId'], - 'n': opts['n'], - 'offset': opts['offset'] - }; - let headerParams = { - }; - let formParams = { - }; - - let authNames = ['apiKeyCookie', 'authCookie']; - let contentTypes = []; - let accepts = ['application/json']; - let returnType = [File]; - return this.apiClient.callApi( - '/files', 'GET', - pathParams, queryParams, headerParams, formParams, postBody, - authNames, contentTypes, accepts, returnType, null - ); - } - - /** - * List Files - * Returns a list of files - * @param {Object} opts Optional parameters - * @param {String} opts.tag Tag, for example \"icon\" or \"gallery\", not included by default. - * @param {String} opts.userId UserID, will always generate a 500 permission error. - * @param {Number} opts.n The number of objects to return. (default to 60) - * @param {Number} opts.offset A zero-based offset from the default object sorting from where search results start. - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link Array.} - */ - getFiles(opts) { - return this.getFilesWithHttpInfo(opts) - .then(function(response_and_data) { - return response_and_data.data; - }); - } - - - /** - * Start FileData Upload - * Starts an upload of a specific FilePart. This endpoint will return an AWS URL which you can PUT data to. You need to call this and receive a new AWS API URL for each `partNumber`. Please see AWS's REST documentation on \"PUT Object to S3\" on how to upload. Once all parts has been uploaded, proceed to `/finish` endpoint. **Note:** `nextPartNumber` seems like it is always ignored. Despite it returning 0, first partNumber is always 1. - * @param {String} fileId - * @param {Number} versionId - * @param {module:model/String} fileType - * @param {Number} partNumber - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/InlineResponse2005} and HTTP response - */ - startFileDataUploadWithHttpInfo(fileId, versionId, fileType, partNumber) { - let postBody = null; - // verify the required parameter 'fileId' is set - if (fileId === undefined || fileId === null) { - throw new Error("Missing the required parameter 'fileId' when calling startFileDataUpload"); - } - // verify the required parameter 'versionId' is set - if (versionId === undefined || versionId === null) { - throw new Error("Missing the required parameter 'versionId' when calling startFileDataUpload"); - } - // verify the required parameter 'fileType' is set - if (fileType === undefined || fileType === null) { - throw new Error("Missing the required parameter 'fileType' when calling startFileDataUpload"); - } - // verify the required parameter 'partNumber' is set - if (partNumber === undefined || partNumber === null) { - throw new Error("Missing the required parameter 'partNumber' when calling startFileDataUpload"); - } - - let pathParams = { - 'fileId': fileId, - 'versionId': versionId, - 'fileType': fileType - }; - let queryParams = { - 'partNumber': partNumber - }; - let headerParams = { - }; - let formParams = { - }; - - let authNames = ['apiKeyCookie', 'authCookie']; - let contentTypes = []; - let accepts = ['application/json']; - let returnType = InlineResponse2005; - return this.apiClient.callApi( - '/file/{fileId}/{versionId}/{fileType}/start', 'PUT', - pathParams, queryParams, headerParams, formParams, postBody, - authNames, contentTypes, accepts, returnType, null - ); - } - - /** - * Start FileData Upload - * Starts an upload of a specific FilePart. This endpoint will return an AWS URL which you can PUT data to. You need to call this and receive a new AWS API URL for each `partNumber`. Please see AWS's REST documentation on \"PUT Object to S3\" on how to upload. Once all parts has been uploaded, proceed to `/finish` endpoint. **Note:** `nextPartNumber` seems like it is always ignored. Despite it returning 0, first partNumber is always 1. - * @param {String} fileId - * @param {Number} versionId - * @param {module:model/String} fileType - * @param {Number} partNumber - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/InlineResponse2005} - */ - startFileDataUpload(fileId, versionId, fileType, partNumber) { - return this.startFileDataUploadWithHttpInfo(fileId, versionId, fileType, partNumber) - .then(function(response_and_data) { - return response_and_data.data; - }); - } - - -} diff --git a/src/api/FriendsApi.js b/src/api/FriendsApi.js deleted file mode 100644 index 02b9d0e..0000000 --- a/src/api/FriendsApi.js +++ /dev/null @@ -1,288 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - - -import ApiClient from "../ApiClient"; -import Error from '../model/Error'; -import InlineResponse2003 from '../model/InlineResponse2003'; -import InlineResponse401 from '../model/InlineResponse401'; -import LimitedUser from '../model/LimitedUser'; -import Notification from '../model/Notification'; -import Success from '../model/Success'; - -/** -* Friends service. -* @module api/FriendsApi -* @version 1.0.0 -*/ -export default class FriendsApi { - - /** - * Constructs a new FriendsApi. - * @alias module:api/FriendsApi - * @class - * @param {module:ApiClient} [apiClient] Optional API client implementation to use, - * default to {@link module:ApiClient#instance} if unspecified. - */ - constructor(apiClient) { - this.apiClient = apiClient || ApiClient.instance; - } - - - - /** - * Delete Friend Request - * Deletes an outgoing pending friend request to another user. To delete an incoming friend request, use the `deleteNotification` endpoint instead. - * @param {String} userId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/Success} and HTTP response - */ - deleteFriendRequestWithHttpInfo(userId) { - let postBody = null; - // verify the required parameter 'userId' is set - if (userId === undefined || userId === null) { - throw new Error("Missing the required parameter 'userId' when calling deleteFriendRequest"); - } - - let pathParams = { - 'userId': userId - }; - let queryParams = { - }; - let headerParams = { - }; - let formParams = { - }; - - let authNames = ['apiKeyCookie', 'authCookie']; - let contentTypes = []; - let accepts = ['application/json']; - let returnType = Success; - return this.apiClient.callApi( - '/user/{userId}/friendRequest', 'DELETE', - pathParams, queryParams, headerParams, formParams, postBody, - authNames, contentTypes, accepts, returnType, null - ); - } - - /** - * Delete Friend Request - * Deletes an outgoing pending friend request to another user. To delete an incoming friend request, use the `deleteNotification` endpoint instead. - * @param {String} userId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/Success} - */ - deleteFriendRequest(userId) { - return this.deleteFriendRequestWithHttpInfo(userId) - .then(function(response_and_data) { - return response_and_data.data; - }); - } - - - /** - * Send Friend Request - * Send a friend request to another user. - * @param {String} userId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/Notification} and HTTP response - */ - friendWithHttpInfo(userId) { - let postBody = null; - // verify the required parameter 'userId' is set - if (userId === undefined || userId === null) { - throw new Error("Missing the required parameter 'userId' when calling friend"); - } - - let pathParams = { - 'userId': userId - }; - let queryParams = { - }; - let headerParams = { - }; - let formParams = { - }; - - let authNames = ['apiKeyCookie', 'authCookie']; - let contentTypes = []; - let accepts = ['application/json']; - let returnType = Notification; - return this.apiClient.callApi( - '/user/{userId}/friendRequest', 'POST', - pathParams, queryParams, headerParams, formParams, postBody, - authNames, contentTypes, accepts, returnType, null - ); - } - - /** - * Send Friend Request - * Send a friend request to another user. - * @param {String} userId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/Notification} - */ - friend(userId) { - return this.friendWithHttpInfo(userId) - .then(function(response_and_data) { - return response_and_data.data; - }); - } - - - /** - * Check Friend Status - * Retrieve if the user is currently a friend with a given user, if they have an outgoing friend request, and if they have an incoming friend request. The proper way to receive and accept friend request is by checking if the user has an incoming `Notification` of type `friendRequest`, and then accepting that notification. - * @param {String} userId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/InlineResponse2003} and HTTP response - */ - getFriendStatusWithHttpInfo(userId) { - let postBody = null; - // verify the required parameter 'userId' is set - if (userId === undefined || userId === null) { - throw new Error("Missing the required parameter 'userId' when calling getFriendStatus"); - } - - let pathParams = { - 'userId': userId - }; - let queryParams = { - }; - let headerParams = { - }; - let formParams = { - }; - - let authNames = ['apiKeyCookie', 'authCookie']; - let contentTypes = []; - let accepts = ['application/json']; - let returnType = InlineResponse2003; - return this.apiClient.callApi( - '/user/{userId}/friendStatus', 'GET', - pathParams, queryParams, headerParams, formParams, postBody, - authNames, contentTypes, accepts, returnType, null - ); - } - - /** - * Check Friend Status - * Retrieve if the user is currently a friend with a given user, if they have an outgoing friend request, and if they have an incoming friend request. The proper way to receive and accept friend request is by checking if the user has an incoming `Notification` of type `friendRequest`, and then accepting that notification. - * @param {String} userId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/InlineResponse2003} - */ - getFriendStatus(userId) { - return this.getFriendStatusWithHttpInfo(userId) - .then(function(response_and_data) { - return response_and_data.data; - }); - } - - - /** - * List Friends - * List information about friends. - * @param {Object} opts Optional parameters - * @param {Number} opts.offset A zero-based offset from the default object sorting from where search results start. - * @param {Number} opts.n The number of objects to return. (default to 60) - * @param {Boolean} opts.offline Returns *only* offline users if true, returns only online and active users if false - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link Array.} and HTTP response - */ - getFriendsWithHttpInfo(opts) { - opts = opts || {}; - let postBody = null; - - let pathParams = { - }; - let queryParams = { - 'offset': opts['offset'], - 'n': opts['n'], - 'offline': opts['offline'] - }; - let headerParams = { - }; - let formParams = { - }; - - let authNames = ['apiKeyCookie', 'authCookie']; - let contentTypes = []; - let accepts = ['application/json']; - let returnType = [LimitedUser]; - return this.apiClient.callApi( - '/auth/user/friends', 'GET', - pathParams, queryParams, headerParams, formParams, postBody, - authNames, contentTypes, accepts, returnType, null - ); - } - - /** - * List Friends - * List information about friends. - * @param {Object} opts Optional parameters - * @param {Number} opts.offset A zero-based offset from the default object sorting from where search results start. - * @param {Number} opts.n The number of objects to return. (default to 60) - * @param {Boolean} opts.offline Returns *only* offline users if true, returns only online and active users if false - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link Array.} - */ - getFriends(opts) { - return this.getFriendsWithHttpInfo(opts) - .then(function(response_and_data) { - return response_and_data.data; - }); - } - - - /** - * Unfriend - * Unfriend a user by ID. - * @param {String} userId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/Success} and HTTP response - */ - unfriendWithHttpInfo(userId) { - let postBody = null; - // verify the required parameter 'userId' is set - if (userId === undefined || userId === null) { - throw new Error("Missing the required parameter 'userId' when calling unfriend"); - } - - let pathParams = { - 'userId': userId - }; - let queryParams = { - }; - let headerParams = { - }; - let formParams = { - }; - - let authNames = ['apiKeyCookie', 'authCookie']; - let contentTypes = []; - let accepts = ['application/json']; - let returnType = Success; - return this.apiClient.callApi( - '/auth/user/friends/{userId}', 'DELETE', - pathParams, queryParams, headerParams, formParams, postBody, - authNames, contentTypes, accepts, returnType, null - ); - } - - /** - * Unfriend - * Unfriend a user by ID. - * @param {String} userId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/Success} - */ - unfriend(userId) { - return this.unfriendWithHttpInfo(userId) - .then(function(response_and_data) { - return response_and_data.data; - }); - } - - -} diff --git a/src/api/NotificationsApi.js b/src/api/NotificationsApi.js deleted file mode 100644 index bcc7546..0000000 --- a/src/api/NotificationsApi.js +++ /dev/null @@ -1,288 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - - -import ApiClient from "../ApiClient"; -import Error from '../model/Error'; -import InlineResponse401 from '../model/InlineResponse401'; -import Notification from '../model/Notification'; -import Success from '../model/Success'; - -/** -* Notifications service. -* @module api/NotificationsApi -* @version 1.0.0 -*/ -export default class NotificationsApi { - - /** - * Constructs a new NotificationsApi. - * @alias module:api/NotificationsApi - * @class - * @param {module:ApiClient} [apiClient] Optional API client implementation to use, - * default to {@link module:ApiClient#instance} if unspecified. - */ - constructor(apiClient) { - this.apiClient = apiClient || ApiClient.instance; - } - - - - /** - * Accept Friend Request - * Accept a friend request by notification `frq_` ID. Friend requests can be found using the NotificationsAPI `getNotifications` by filtering of type `friendRequest`. - * @param {String} notificationId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/Success} and HTTP response - */ - acceptFriendRequestWithHttpInfo(notificationId) { - let postBody = null; - // verify the required parameter 'notificationId' is set - if (notificationId === undefined || notificationId === null) { - throw new Error("Missing the required parameter 'notificationId' when calling acceptFriendRequest"); - } - - let pathParams = { - 'notificationId': notificationId - }; - let queryParams = { - }; - let headerParams = { - }; - let formParams = { - }; - - let authNames = ['apiKeyCookie', 'authCookie']; - let contentTypes = []; - let accepts = ['application/json']; - let returnType = Success; - return this.apiClient.callApi( - '/auth/user/notifications/{notificationId}/accept', 'PUT', - pathParams, queryParams, headerParams, formParams, postBody, - authNames, contentTypes, accepts, returnType, null - ); - } - - /** - * Accept Friend Request - * Accept a friend request by notification `frq_` ID. Friend requests can be found using the NotificationsAPI `getNotifications` by filtering of type `friendRequest`. - * @param {String} notificationId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/Success} - */ - acceptFriendRequest(notificationId) { - return this.acceptFriendRequestWithHttpInfo(notificationId) - .then(function(response_and_data) { - return response_and_data.data; - }); - } - - - /** - * Clear All Notifications - * Clear **all** notifications. - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/Success} and HTTP response - */ - clearNotificationsWithHttpInfo() { - let postBody = null; - - let pathParams = { - }; - let queryParams = { - }; - let headerParams = { - }; - let formParams = { - }; - - let authNames = ['apiKeyCookie', 'authCookie']; - let contentTypes = []; - let accepts = ['application/json']; - let returnType = Success; - return this.apiClient.callApi( - '/auth/user/notifications/clear', 'PUT', - pathParams, queryParams, headerParams, formParams, postBody, - authNames, contentTypes, accepts, returnType, null - ); - } - - /** - * Clear All Notifications - * Clear **all** notifications. - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/Success} - */ - clearNotifications() { - return this.clearNotificationsWithHttpInfo() - .then(function(response_and_data) { - return response_and_data.data; - }); - } - - - /** - * Delete Notification - * Delete a notification. - * @param {String} notificationId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/Notification} and HTTP response - */ - deleteNotificationWithHttpInfo(notificationId) { - let postBody = null; - // verify the required parameter 'notificationId' is set - if (notificationId === undefined || notificationId === null) { - throw new Error("Missing the required parameter 'notificationId' when calling deleteNotification"); - } - - let pathParams = { - 'notificationId': notificationId - }; - let queryParams = { - }; - let headerParams = { - }; - let formParams = { - }; - - let authNames = ['apiKeyCookie', 'authCookie']; - let contentTypes = []; - let accepts = ['application/json']; - let returnType = Notification; - return this.apiClient.callApi( - '/auth/user/notifications/{notificationId}/hide', 'PUT', - pathParams, queryParams, headerParams, formParams, postBody, - authNames, contentTypes, accepts, returnType, null - ); - } - - /** - * Delete Notification - * Delete a notification. - * @param {String} notificationId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/Notification} - */ - deleteNotification(notificationId) { - return this.deleteNotificationWithHttpInfo(notificationId) - .then(function(response_and_data) { - return response_and_data.data; - }); - } - - - /** - * List Notifications - * Retrieve all of the current user's notifications. - * @param {Object} opts Optional parameters - * @param {String} opts.type Only send notifications of this type (can use `all` for all). - * @param {Boolean} opts.sent Return notifications sent by the user. Must be false or omitted. - * @param {Boolean} opts.hidden Whether to return hidden or non-hidden notifications. True only allowed on type `friendRequest`. - * @param {String} opts.after Only return notifications sent after this Date. Ignored if type is `friendRequest`. - * @param {Number} opts.n The number of objects to return. (default to 60) - * @param {Number} opts.offset A zero-based offset from the default object sorting from where search results start. - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link Array.} and HTTP response - */ - getNotificationsWithHttpInfo(opts) { - opts = opts || {}; - let postBody = null; - - let pathParams = { - }; - let queryParams = { - 'type': opts['type'], - 'sent': opts['sent'], - 'hidden': opts['hidden'], - 'after': opts['after'], - 'n': opts['n'], - 'offset': opts['offset'] - }; - let headerParams = { - }; - let formParams = { - }; - - let authNames = ['apiKeyCookie', 'authCookie']; - let contentTypes = []; - let accepts = ['application/json']; - let returnType = [Notification]; - return this.apiClient.callApi( - '/auth/user/notifications', 'GET', - pathParams, queryParams, headerParams, formParams, postBody, - authNames, contentTypes, accepts, returnType, null - ); - } - - /** - * List Notifications - * Retrieve all of the current user's notifications. - * @param {Object} opts Optional parameters - * @param {String} opts.type Only send notifications of this type (can use `all` for all). - * @param {Boolean} opts.sent Return notifications sent by the user. Must be false or omitted. - * @param {Boolean} opts.hidden Whether to return hidden or non-hidden notifications. True only allowed on type `friendRequest`. - * @param {String} opts.after Only return notifications sent after this Date. Ignored if type is `friendRequest`. - * @param {Number} opts.n The number of objects to return. (default to 60) - * @param {Number} opts.offset A zero-based offset from the default object sorting from where search results start. - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link Array.} - */ - getNotifications(opts) { - return this.getNotificationsWithHttpInfo(opts) - .then(function(response_and_data) { - return response_and_data.data; - }); - } - - - /** - * Mark As Read - * Mark a notification as seen. - * @param {String} notificationId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/Notification} and HTTP response - */ - markNotificationAsReadWithHttpInfo(notificationId) { - let postBody = null; - // verify the required parameter 'notificationId' is set - if (notificationId === undefined || notificationId === null) { - throw new Error("Missing the required parameter 'notificationId' when calling markNotificationAsRead"); - } - - let pathParams = { - 'notificationId': notificationId - }; - let queryParams = { - }; - let headerParams = { - }; - let formParams = { - }; - - let authNames = ['apiKeyCookie', 'authCookie']; - let contentTypes = []; - let accepts = ['application/json']; - let returnType = Notification; - return this.apiClient.callApi( - '/auth/user/notifications/{notificationId}/see', 'PUT', - pathParams, queryParams, headerParams, formParams, postBody, - authNames, contentTypes, accepts, returnType, null - ); - } - - /** - * Mark As Read - * Mark a notification as seen. - * @param {String} notificationId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/Notification} - */ - markNotificationAsRead(notificationId) { - return this.markNotificationAsReadWithHttpInfo(notificationId) - .then(function(response_and_data) { - return response_and_data.data; - }); - } - - -} diff --git a/src/api/SystemApi.js b/src/api/SystemApi.js deleted file mode 100644 index 6a3631b..0000000 --- a/src/api/SystemApi.js +++ /dev/null @@ -1,203 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - - -import ApiClient from "../ApiClient"; -import Config from '../model/Config'; -import InlineResponse2002 from '../model/InlineResponse2002'; - -/** -* System service. -* @module api/SystemApi -* @version 1.0.0 -*/ -export default class SystemApi { - - /** - * Constructs a new SystemApi. - * @alias module:api/SystemApi - * @class - * @param {module:ApiClient} [apiClient] Optional API client implementation to use, - * default to {@link module:ApiClient#instance} if unspecified. - */ - constructor(apiClient) { - this.apiClient = apiClient || ApiClient.instance; - } - - - - /** - * Fetch API Config - * API config contains configuration that the clients needs to work properly. Currently the most important value here is `clientApiKey` which is used for all other API endpoints. - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/Config} and HTTP response - */ - getConfigWithHttpInfo() { - let postBody = null; - - let pathParams = { - }; - let queryParams = { - }; - let headerParams = { - }; - let formParams = { - }; - - let authNames = []; - let contentTypes = []; - let accepts = ['application/json']; - let returnType = Config; - return this.apiClient.callApi( - '/config', 'GET', - pathParams, queryParams, headerParams, formParams, postBody, - authNames, contentTypes, accepts, returnType, null - ); - } - - /** - * Fetch API Config - * API config contains configuration that the clients needs to work properly. Currently the most important value here is `clientApiKey` which is used for all other API endpoints. - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/Config} - */ - getConfig() { - return this.getConfigWithHttpInfo() - .then(function(response_and_data) { - return response_and_data.data; - }); - } - - - /** - * Current Online Users - * Returns in plain format the number of currently online users. **NOTE:** The response type is not of JSON, but is an integer in plain ASCII format. - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link Number} and HTTP response - */ - getCurrentOnlineUsersWithHttpInfo() { - let postBody = null; - - let pathParams = { - }; - let queryParams = { - }; - let headerParams = { - }; - let formParams = { - }; - - let authNames = []; - let contentTypes = []; - let accepts = ['text/plain']; - let returnType = 'Number'; - return this.apiClient.callApi( - '/visits', 'GET', - pathParams, queryParams, headerParams, formParams, postBody, - authNames, contentTypes, accepts, returnType, null - ); - } - - /** - * Current Online Users - * Returns in plain format the number of currently online users. **NOTE:** The response type is not of JSON, but is an integer in plain ASCII format. - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link Number} - */ - getCurrentOnlineUsers() { - return this.getCurrentOnlineUsersWithHttpInfo() - .then(function(response_and_data) { - return response_and_data.data; - }); - } - - - /** - * Check API Health - * Gets the overall health status, the server name, and the current build version tag of the API. - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/InlineResponse2002} and HTTP response - */ - getHealthWithHttpInfo() { - let postBody = null; - - let pathParams = { - }; - let queryParams = { - }; - let headerParams = { - }; - let formParams = { - }; - - let authNames = []; - let contentTypes = []; - let accepts = ['application/json']; - let returnType = InlineResponse2002; - return this.apiClient.callApi( - '/health', 'GET', - pathParams, queryParams, headerParams, formParams, postBody, - authNames, contentTypes, accepts, returnType, null - ); - } - - /** - * Check API Health - * Gets the overall health status, the server name, and the current build version tag of the API. - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/InlineResponse2002} - */ - getHealth() { - return this.getHealthWithHttpInfo() - .then(function(response_and_data) { - return response_and_data.data; - }); - } - - - /** - * Current System Time - * Returns in plain format the current time of the API server. **NOTE:** The response type is not of JSON, but is a string in plain ASCII format. - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link Date} and HTTP response - */ - getSystemTimeWithHttpInfo() { - let postBody = null; - - let pathParams = { - }; - let queryParams = { - }; - let headerParams = { - }; - let formParams = { - }; - - let authNames = []; - let contentTypes = []; - let accepts = ['text/plain']; - let returnType = 'Date'; - return this.apiClient.callApi( - '/time', 'GET', - pathParams, queryParams, headerParams, formParams, postBody, - authNames, contentTypes, accepts, returnType, null - ); - } - - /** - * Current System Time - * Returns in plain format the current time of the API server. **NOTE:** The response type is not of JSON, but is a string in plain ASCII format. - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link Date} - */ - getSystemTime() { - return this.getSystemTimeWithHttpInfo() - .then(function(response_and_data) { - return response_and_data.data; - }); - } - - -} diff --git a/src/api/UsersApi.js b/src/api/UsersApi.js deleted file mode 100644 index 0f25fe5..0000000 --- a/src/api/UsersApi.js +++ /dev/null @@ -1,307 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - - -import ApiClient from "../ApiClient"; -import CurrentUser from '../model/CurrentUser'; -import InlineObject2 from '../model/InlineObject2'; -import InlineResponse401 from '../model/InlineResponse401'; -import LimitedUser from '../model/LimitedUser'; -import User from '../model/User'; - -/** -* Users service. -* @module api/UsersApi -* @version 1.0.0 -*/ -export default class UsersApi { - - /** - * Constructs a new UsersApi. - * @alias module:api/UsersApi - * @class - * @param {module:ApiClient} [apiClient] Optional API client implementation to use, - * default to {@link module:ApiClient#instance} if unspecified. - */ - constructor(apiClient) { - this.apiClient = apiClient || ApiClient.instance; - } - - - - /** - * Get User by ID - * Get public user information about a specific user using their ID. - * @param {String} userId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/User} and HTTP response - */ - getUserWithHttpInfo(userId) { - let postBody = null; - // verify the required parameter 'userId' is set - if (userId === undefined || userId === null) { - throw new Error("Missing the required parameter 'userId' when calling getUser"); - } - - let pathParams = { - 'userId': userId - }; - let queryParams = { - }; - let headerParams = { - }; - let formParams = { - }; - - let authNames = ['apiKeyCookie', 'authCookie']; - let contentTypes = []; - let accepts = ['application/json']; - let returnType = User; - return this.apiClient.callApi( - '/users/{userId}', 'GET', - pathParams, queryParams, headerParams, formParams, postBody, - authNames, contentTypes, accepts, returnType, null - ); - } - - /** - * Get User by ID - * Get public user information about a specific user using their ID. - * @param {String} userId - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/User} - */ - getUser(userId) { - return this.getUserWithHttpInfo(userId) - .then(function(response_and_data) { - return response_and_data.data; - }); - } - - - /** - * Get User by Username - * Get public user information about a specific user using their name. - * @param {String} username - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/User} and HTTP response - */ - getUserByNameWithHttpInfo(username) { - let postBody = null; - // verify the required parameter 'username' is set - if (username === undefined || username === null) { - throw new Error("Missing the required parameter 'username' when calling getUserByName"); - } - - let pathParams = { - 'username': username - }; - let queryParams = { - }; - let headerParams = { - }; - let formParams = { - }; - - let authNames = ['apiKeyCookie', 'authCookie']; - let contentTypes = []; - let accepts = ['application/json']; - let returnType = User; - return this.apiClient.callApi( - '/users/{username}/name', 'GET', - pathParams, queryParams, headerParams, formParams, postBody, - authNames, contentTypes, accepts, returnType, null - ); - } - - /** - * Get User by Username - * Get public user information about a specific user using their name. - * @param {String} username - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/User} - */ - getUserByName(username) { - return this.getUserByNameWithHttpInfo(username) - .then(function(response_and_data) { - return response_and_data.data; - }); - } - - - /** - * Search Active Users - * Search and list any Active users by text query. **Has been locked down and now always respond with \"Invalid Admin Credentials\".** - * @param {String} search Username to search for - * @param {Object} opts Optional parameters - * @param {String} opts.developerType Active user by developer type, none for normal users and internal for moderators - * @param {Number} opts.offset A zero-based offset from the default object sorting from where search results start. - * @param {Number} opts.n The number of objects to return. (default to 60) - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link Array.} and HTTP response - */ - searchActiveUsersWithHttpInfo(search, opts) { - opts = opts || {}; - let postBody = null; - // verify the required parameter 'search' is set - if (search === undefined || search === null) { - throw new Error("Missing the required parameter 'search' when calling searchActiveUsers"); - } - - let pathParams = { - }; - let queryParams = { - 'search': search, - 'developerType': opts['developerType'], - 'offset': opts['offset'], - 'n': opts['n'] - }; - let headerParams = { - }; - let formParams = { - }; - - let authNames = ['apiKeyCookie', 'authCookie']; - let contentTypes = []; - let accepts = ['application/json']; - let returnType = [LimitedUser]; - return this.apiClient.callApi( - '/users/active', 'GET', - pathParams, queryParams, headerParams, formParams, postBody, - authNames, contentTypes, accepts, returnType, null - ); - } - - /** - * Search Active Users - * Search and list any Active users by text query. **Has been locked down and now always respond with \"Invalid Admin Credentials\".** - * @param {String} search Username to search for - * @param {Object} opts Optional parameters - * @param {String} opts.developerType Active user by developer type, none for normal users and internal for moderators - * @param {Number} opts.offset A zero-based offset from the default object sorting from where search results start. - * @param {Number} opts.n The number of objects to return. (default to 60) - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link Array.} - */ - searchActiveUsers(search, opts) { - return this.searchActiveUsersWithHttpInfo(search, opts) - .then(function(response_and_data) { - return response_and_data.data; - }); - } - - - /** - * Search All Users - * Search and list any users by text query - * @param {Object} opts Optional parameters - * @param {String} opts.search Searches by `displayName`. Will return empty array if search query is empty or missing. - * @param {String} opts.developerType Active user by developer type, none for normal users and internal for moderators - * @param {Number} opts.n The number of objects to return. (default to 60) - * @param {Number} opts.offset A zero-based offset from the default object sorting from where search results start. - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link Array.} and HTTP response - */ - searchUsersWithHttpInfo(opts) { - opts = opts || {}; - let postBody = null; - - let pathParams = { - }; - let queryParams = { - 'search': opts['search'], - 'developerType': opts['developerType'], - 'n': opts['n'], - 'offset': opts['offset'] - }; - let headerParams = { - }; - let formParams = { - }; - - let authNames = ['apiKeyCookie', 'authCookie']; - let contentTypes = []; - let accepts = ['application/json']; - let returnType = [LimitedUser]; - return this.apiClient.callApi( - '/users', 'GET', - pathParams, queryParams, headerParams, formParams, postBody, - authNames, contentTypes, accepts, returnType, null - ); - } - - /** - * Search All Users - * Search and list any users by text query - * @param {Object} opts Optional parameters - * @param {String} opts.search Searches by `displayName`. Will return empty array if search query is empty or missing. - * @param {String} opts.developerType Active user by developer type, none for normal users and internal for moderators - * @param {Number} opts.n The number of objects to return. (default to 60) - * @param {Number} opts.offset A zero-based offset from the default object sorting from where search results start. - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link Array.} - */ - searchUsers(opts) { - return this.searchUsersWithHttpInfo(opts) - .then(function(response_and_data) { - return response_and_data.data; - }); - } - - - /** - * Update User Info - * Update a users information such as the email and birthday. - * @param {String} userId - * @param {Object} opts Optional parameters - * @param {module:model/InlineObject2} opts.inlineObject2 - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link module:model/CurrentUser} and HTTP response - */ - updateUserWithHttpInfo(userId, opts) { - opts = opts || {}; - let postBody = opts['inlineObject2']; - // verify the required parameter 'userId' is set - if (userId === undefined || userId === null) { - throw new Error("Missing the required parameter 'userId' when calling updateUser"); - } - - let pathParams = { - 'userId': userId - }; - let queryParams = { - }; - let headerParams = { - }; - let formParams = { - }; - - let authNames = ['apiKeyCookie', 'authCookie']; - let contentTypes = ['application/json']; - let accepts = ['application/json']; - let returnType = CurrentUser; - return this.apiClient.callApi( - '/users/{userId}', 'PUT', - pathParams, queryParams, headerParams, formParams, postBody, - authNames, contentTypes, accepts, returnType, null - ); - } - - /** - * Update User Info - * Update a users information such as the email and birthday. - * @param {String} userId - * @param {Object} opts Optional parameters - * @param {module:model/InlineObject2} opts.inlineObject2 - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link module:model/CurrentUser} - */ - updateUser(userId, opts) { - return this.updateUserWithHttpInfo(userId, opts) - .then(function(response_and_data) { - return response_and_data.data; - }); - } - - -} diff --git a/src/api/WorldsApi.js b/src/api/WorldsApi.js deleted file mode 100644 index e788ba8..0000000 --- a/src/api/WorldsApi.js +++ /dev/null @@ -1,131 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - - -import ApiClient from "../ApiClient"; -import InlineResponse401 from '../model/InlineResponse401'; -import LimitedWorld from '../model/LimitedWorld'; - -/** -* Worlds service. -* @module api/WorldsApi -* @version 1.0.0 -*/ -export default class WorldsApi { - - /** - * Constructs a new WorldsApi. - * @alias module:api/WorldsApi - * @class - * @param {module:ApiClient} [apiClient] Optional API client implementation to use, - * default to {@link module:ApiClient#instance} if unspecified. - */ - constructor(apiClient) { - this.apiClient = apiClient || ApiClient.instance; - } - - - - /** - * Search all worlds - * Search and list any worlds by text query - * @param {Object} opts Optional parameters - * @param {Boolean} opts.featured is the world featured - * @param {module:model/String} opts.sort (default to 'order') - * @param {String} opts.user Set to `me` for searching own worlds - * @param {String} opts.userId Filter by creator id, use `me` for only worlds owned by current user - * @param {Number} opts.n The number of objects to return. (default to 60) - * @param {module:model/String} opts.order (default to 'descending') - * @param {Number} opts.offset A zero-based offset from the default object sorting from where search results start. - * @param {String} opts.search Searches by `name`. Will return empty array if search query is empty or missing. - * @param {Array.} opts.tag Filter by Tag - * @param {Array.} opts.notag Tags to exclude - * @param {module:model/String} opts.releaseStatus (default to 'hidden') - * @param {String} opts.maxUnityVersion Current unity version the game is using - * @param {String} opts.minUnityVersion The min unity version the world support - * @param {String} opts.maxAssetVersion Current asset version the game is using - * @param {String} opts.minAssetVersion The min asset version the world support - * @param {String} opts.platform The platform the world supports (usually standalonewindows) - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with an object containing data of type {@link Array.} and HTTP response - */ - searchWorldsWithHttpInfo(opts) { - opts = opts || {}; - let postBody = null; - - let pathParams = { - }; - let queryParams = { - 'featured': opts['featured'], - 'sort': opts['sort'], - 'user': opts['user'], - 'userId': opts['userId'], - 'n': opts['n'], - 'order': opts['order'], - 'offset': opts['offset'], - 'search': opts['search'], - 'tag': this.apiClient.buildCollectionParam(opts['tag'], 'multi'), - 'notag': this.apiClient.buildCollectionParam(opts['notag'], 'multi'), - 'releaseStatus': opts['releaseStatus'], - 'maxUnityVersion': opts['maxUnityVersion'], - 'minUnityVersion': opts['minUnityVersion'], - 'maxAssetVersion': opts['maxAssetVersion'], - 'minAssetVersion': opts['minAssetVersion'], - 'platform': opts['platform'] - }; - let headerParams = { - }; - let formParams = { - }; - - let authNames = ['apiKeyCookie', 'authCookie']; - let contentTypes = []; - let accepts = ['application/json']; - let returnType = [LimitedWorld]; - return this.apiClient.callApi( - '/worlds', 'GET', - pathParams, queryParams, headerParams, formParams, postBody, - authNames, contentTypes, accepts, returnType, null - ); - } - - /** - * Search all worlds - * Search and list any worlds by text query - * @param {Object} opts Optional parameters - * @param {Boolean} opts.featured is the world featured - * @param {module:model/String} opts.sort (default to 'order') - * @param {String} opts.user Set to `me` for searching own worlds - * @param {String} opts.userId Filter by creator id, use `me` for only worlds owned by current user - * @param {Number} opts.n The number of objects to return. (default to 60) - * @param {module:model/String} opts.order (default to 'descending') - * @param {Number} opts.offset A zero-based offset from the default object sorting from where search results start. - * @param {String} opts.search Searches by `name`. Will return empty array if search query is empty or missing. - * @param {Array.} opts.tag Filter by Tag - * @param {Array.} opts.notag Tags to exclude - * @param {module:model/String} opts.releaseStatus (default to 'hidden') - * @param {String} opts.maxUnityVersion Current unity version the game is using - * @param {String} opts.minUnityVersion The min unity version the world support - * @param {String} opts.maxAssetVersion Current asset version the game is using - * @param {String} opts.minAssetVersion The min asset version the world support - * @param {String} opts.platform The platform the world supports (usually standalonewindows) - * @return {Promise} a {@link https://www.promisejs.org/|Promise}, with data of type {@link Array.} - */ - searchWorlds(opts) { - return this.searchWorldsWithHttpInfo(opts) - .then(function(response_and_data) { - return response_and_data.data; - }); - } - - -} diff --git a/src/index.js b/src/index.js deleted file mode 100644 index abc7bec..0000000 --- a/src/index.js +++ /dev/null @@ -1,356 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - - -import ApiClient from './ApiClient'; -import Config from './model/Config'; -import ConfigAnnouncements from './model/ConfigAnnouncements'; -import ConfigDownloadUrls from './model/ConfigDownloadUrls'; -import ConfigDynamicWorldRows from './model/ConfigDynamicWorldRows'; -import ConfigEvents from './model/ConfigEvents'; -import CurrentUser from './model/CurrentUser'; -import DeploymentGroup from './model/DeploymentGroup'; -import DeveloperType from './model/DeveloperType'; -import Error from './model/Error'; -import File from './model/File'; -import FileData from './model/FileData'; -import FileStatus from './model/FileStatus'; -import FileVersion from './model/FileVersion'; -import InlineObject from './model/InlineObject'; -import InlineObject1 from './model/InlineObject1'; -import InlineObject2 from './model/InlineObject2'; -import InlineObject3 from './model/InlineObject3'; -import InlineObject4 from './model/InlineObject4'; -import InlineResponse200 from './model/InlineResponse200'; -import InlineResponse2001 from './model/InlineResponse2001'; -import InlineResponse2002 from './model/InlineResponse2002'; -import InlineResponse2003 from './model/InlineResponse2003'; -import InlineResponse2004 from './model/InlineResponse2004'; -import InlineResponse2005 from './model/InlineResponse2005'; -import InlineResponse401 from './model/InlineResponse401'; -import LimitedUser from './model/LimitedUser'; -import LimitedWorld from './model/LimitedWorld'; -import MIMEType from './model/MIMEType'; -import Notification from './model/Notification'; -import NotificationType from './model/NotificationType'; -import ReleaseStatus from './model/ReleaseStatus'; -import Response from './model/Response'; -import Success from './model/Success'; -import User from './model/User'; -import UserState from './model/UserState'; -import UserStatus from './model/UserStatus'; -import AuthenticationApi from './api/AuthenticationApi'; -import FilesApi from './api/FilesApi'; -import FriendsApi from './api/FriendsApi'; -import NotificationsApi from './api/NotificationsApi'; -import SystemApi from './api/SystemApi'; -import UsersApi from './api/UsersApi'; -import WorldsApi from './api/WorldsApi'; - - -/** -* _VRChat_API_Banner_https__raw_githubusercontent_com_vrchatapi_vrchatapi_github_io_master_assets_apibanner_png_VRChat_API_DocumentationThis_project_is_an__OPEN_Open_Source_Project_https__openopensource_orgIndividuals_making_significant_and_valuable_contributions_are_givencommit_access_to_the_project_to_contribute_as_they_see_fit__This_projectis_more_like_an_open_wiki_than_a_standard_guarded_open_source_project__DisclaimerThis_is_the_official_response_of_the_VRChat_Team__from_Tupper_more_specifically_on_the_usage_of_the_VRChat_API__Use_of_the_API_using_applications_other_than_the_approved_methods__website_VRChat_application_are_not_officially_supported__You_may_use_the_API_for_your_own_application_but_keep_these_guidelines_in_mind__We_do_not_provide_documentation_or_support_for_the_API___Do_not_make_queries_to_the_API_more_than_once_per_60_seconds___Abuse_of_the_API_may_result_in_account_termination___Access_to_API_endpoints_may_break_at_any_given_time_with_no_warning_As_stated_this_documentation_was_not_created_with_the_help_of_the_official_VRChat_team__Therefore_this_documentation_is_not_an_official_documentation_of_the_VRChat_API_and_may_not_be_always_up_to_date_with_the_latest_versions__If_you_find_that_a_page_or_endpoint_is_not_longer_valid_please_create_an_issue_and_tell_us_so_we_can_fix_it__Get_in_touch_with_us_https__discord_gg_qjZE9C9fkBvrchat_api_https__discord_gg_qjZE9C9fkB.
-* The index module provides access to constructors for all the classes which comprise the public API. -*

-* An AMD (recommended!) or CommonJS application will generally do something equivalent to the following: -*

-* var vrchatapi = require('index'); // See note below*.
-* var xxxSvc = new vrchatapi.XxxApi(); // Allocate the API class we're going to use.
-* var yyyModel = new vrchatapi.Yyy(); // Construct a model instance.
-* yyyModel.someProperty = 'someValue';
-* ...
-* var zzz = xxxSvc.doSomething(yyyModel); // Invoke the service.
-* ...
-* 
-* *NOTE: For a top-level AMD script, use require(['index'], function(){...}) -* and put the application logic within the callback function. -*

-*

-* A non-AMD browser application (discouraged) might do something like this: -*

-* var xxxSvc = new vrchatapi.XxxApi(); // Allocate the API class we're going to use.
-* var yyy = new vrchatapi.Yyy(); // Construct a model instance.
-* yyyModel.someProperty = 'someValue';
-* ...
-* var zzz = xxxSvc.doSomething(yyyModel); // Invoke the service.
-* ...
-* 
-*

-* @module index -* @version 1.0.0 -*/ -export { - /** - * The ApiClient constructor. - * @property {module:ApiClient} - */ - ApiClient, - - /** - * The Config model constructor. - * @property {module:model/Config} - */ - Config, - - /** - * The ConfigAnnouncements model constructor. - * @property {module:model/ConfigAnnouncements} - */ - ConfigAnnouncements, - - /** - * The ConfigDownloadUrls model constructor. - * @property {module:model/ConfigDownloadUrls} - */ - ConfigDownloadUrls, - - /** - * The ConfigDynamicWorldRows model constructor. - * @property {module:model/ConfigDynamicWorldRows} - */ - ConfigDynamicWorldRows, - - /** - * The ConfigEvents model constructor. - * @property {module:model/ConfigEvents} - */ - ConfigEvents, - - /** - * The CurrentUser model constructor. - * @property {module:model/CurrentUser} - */ - CurrentUser, - - /** - * The DeploymentGroup model constructor. - * @property {module:model/DeploymentGroup} - */ - DeploymentGroup, - - /** - * The DeveloperType model constructor. - * @property {module:model/DeveloperType} - */ - DeveloperType, - - /** - * The Error model constructor. - * @property {module:model/Error} - */ - Error, - - /** - * The File model constructor. - * @property {module:model/File} - */ - File, - - /** - * The FileData model constructor. - * @property {module:model/FileData} - */ - FileData, - - /** - * The FileStatus model constructor. - * @property {module:model/FileStatus} - */ - FileStatus, - - /** - * The FileVersion model constructor. - * @property {module:model/FileVersion} - */ - FileVersion, - - /** - * The InlineObject model constructor. - * @property {module:model/InlineObject} - */ - InlineObject, - - /** - * The InlineObject1 model constructor. - * @property {module:model/InlineObject1} - */ - InlineObject1, - - /** - * The InlineObject2 model constructor. - * @property {module:model/InlineObject2} - */ - InlineObject2, - - /** - * The InlineObject3 model constructor. - * @property {module:model/InlineObject3} - */ - InlineObject3, - - /** - * The InlineObject4 model constructor. - * @property {module:model/InlineObject4} - */ - InlineObject4, - - /** - * The InlineResponse200 model constructor. - * @property {module:model/InlineResponse200} - */ - InlineResponse200, - - /** - * The InlineResponse2001 model constructor. - * @property {module:model/InlineResponse2001} - */ - InlineResponse2001, - - /** - * The InlineResponse2002 model constructor. - * @property {module:model/InlineResponse2002} - */ - InlineResponse2002, - - /** - * The InlineResponse2003 model constructor. - * @property {module:model/InlineResponse2003} - */ - InlineResponse2003, - - /** - * The InlineResponse2004 model constructor. - * @property {module:model/InlineResponse2004} - */ - InlineResponse2004, - - /** - * The InlineResponse2005 model constructor. - * @property {module:model/InlineResponse2005} - */ - InlineResponse2005, - - /** - * The InlineResponse401 model constructor. - * @property {module:model/InlineResponse401} - */ - InlineResponse401, - - /** - * The LimitedUser model constructor. - * @property {module:model/LimitedUser} - */ - LimitedUser, - - /** - * The LimitedWorld model constructor. - * @property {module:model/LimitedWorld} - */ - LimitedWorld, - - /** - * The MIMEType model constructor. - * @property {module:model/MIMEType} - */ - MIMEType, - - /** - * The Notification model constructor. - * @property {module:model/Notification} - */ - Notification, - - /** - * The NotificationType model constructor. - * @property {module:model/NotificationType} - */ - NotificationType, - - /** - * The ReleaseStatus model constructor. - * @property {module:model/ReleaseStatus} - */ - ReleaseStatus, - - /** - * The Response model constructor. - * @property {module:model/Response} - */ - Response, - - /** - * The Success model constructor. - * @property {module:model/Success} - */ - Success, - - /** - * The User model constructor. - * @property {module:model/User} - */ - User, - - /** - * The UserState model constructor. - * @property {module:model/UserState} - */ - UserState, - - /** - * The UserStatus model constructor. - * @property {module:model/UserStatus} - */ - UserStatus, - - /** - * The AuthenticationApi service constructor. - * @property {module:api/AuthenticationApi} - */ - AuthenticationApi, - - /** - * The FilesApi service constructor. - * @property {module:api/FilesApi} - */ - FilesApi, - - /** - * The FriendsApi service constructor. - * @property {module:api/FriendsApi} - */ - FriendsApi, - - /** - * The NotificationsApi service constructor. - * @property {module:api/NotificationsApi} - */ - NotificationsApi, - - /** - * The SystemApi service constructor. - * @property {module:api/SystemApi} - */ - SystemApi, - - /** - * The UsersApi service constructor. - * @property {module:api/UsersApi} - */ - UsersApi, - - /** - * The WorldsApi service constructor. - * @property {module:api/WorldsApi} - */ - WorldsApi -}; diff --git a/src/model/Config.js b/src/model/Config.js deleted file mode 100644 index bd478fe..0000000 --- a/src/model/Config.js +++ /dev/null @@ -1,889 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -import ApiClient from '../ApiClient'; -import ConfigAnnouncements from './ConfigAnnouncements'; -import ConfigDownloadUrls from './ConfigDownloadUrls'; -import ConfigDynamicWorldRows from './ConfigDynamicWorldRows'; -import ConfigEvents from './ConfigEvents'; -import DeploymentGroup from './DeploymentGroup'; - -/** - * The Config model module. - * @module model/Config - * @version 1.0.0 - */ -class Config { - /** - * Constructs a new Config. - * @alias module:model/Config - * @param address {String} VRChat's office address - * @param announcements {Array.} PSA, Public Announcements - * @param apiKey {String} apiKey to be used for all other requests - * @param appName {String} Game name - * @param buildVersionTag {String} Build tag of the API server - * @param clientApiKey {String} apiKey to be used for all other requests - * @param contactEmail {String} VRChat's contact email - * @param copyrightEmail {String} VRChat's copyright-issues-related email - * @param currentTOSVersion {Number} Current version number of the Terms of Service - * @param defaultAvatar {String} - * @param deploymentGroup {module:model/DeploymentGroup} - * @param devAppVersionStandalone {String} Version number for game development build - * @param devDownloadLinkWindows {String} Developer Download link - * @param devSdkUrl {String} Link to download the development SDK, use downloadUrls instead - * @param devSdkVersion {String} Version of the development SDK - * @param devServerVersionStandalone {String} Version number for server development build - * @param disableAvatarCopying {Boolean} Toggles if copying avatars should be disabled - * @param disableAvatarGating {Boolean} Toggles if avatar gating should be disabled. Avatar gating restricts uploading of avatars to people with the `system_avatar_access` Tag or `admin_avatar_access` Tag - * @param disableCommunityLabs {Boolean} Toggles if the Community Labs should be disabled - * @param disableCommunityLabsPromotion {Boolean} Toggles if promotion out of Community Labs should be disabled - * @param disableEventStream {Boolean} Toggles if Analytics should be disabled (this sreportedly not used in the Client) - * @param disableFeedbackGating {Boolean} Toggles if feedback gating should be disabled. Feedback gating restricts submission of feedback (reporting a World or User) to people with the `system_feedback_access` Tag. - * @param disableRegistration {Boolean} Toggles if new user account registration should be disabled - * @param disableSteamNetworking {Boolean} Toggles if Steam Networking should be disabled. VRChat these days uses Photon Unity Networking (PUN) instead. - * @param disableTwoFactorAuth {Boolean} Toggles if 2FA should be disabled. - * @param disableUdon {Boolean} Toggles if Udon should be universally disabled in-game. - * @param disableUpgradeAccount {Boolean} Toggles if account upgrading \"linking with Steam/Oculus\" should be disabled. - * @param downloadLinkWindows {String} Download link for game on the Oculus Rift website. - * @param downloadUrls {module:model/ConfigDownloadUrls} - * @param dynamicWorldRows {Array.} Array of DynamicWorldRow objects, used by the game to display the list of world rows - * @param events {module:model/ConfigEvents} - * @param gearDemoRoomId {String} Unknown - * @param homepageRedirectTarget {String} Redirect target if you try to open the base API domain in your browser - * @param homeWorldId {String} - * @param hubWorldId {String} - * @param jobsEmail {String} VRChat's job application email - * @param messageOfTheDay {String} MOTD - * @param moderationEmail {String} VRChat's moderation related email - * @param moderationQueryPeriod {Number} Unknown - * @param notAllowedToSelectAvatarInPrivateWorldMessage {String} Used in-game to notify a user they aren't allowed to select avatars in private worlds - * @param plugin {String} Extra [plugin](https://doc.photonengine.com/en-us/server/current/plugins/manual) to run in each instance - * @param releaseAppVersionStandalone {String} Version number for game release build - * @param releaseSdkUrl {String} Link to download the release SDK - * @param releaseSdkVersion {String} Version of the release SDK - * @param releaseServerVersionStandalone {String} Version number for server release build - * @param sdkDeveloperFaqUrl {String} Link to the developer FAQ - * @param sdkDiscordUrl {String} Link to the official VRChat Discord - * @param sdkNotAllowedToPublishMessage {String} Used in the SDK to notify a user they aren't allowed to upload avatars/worlds yet - * @param sdkUnityVersion {String} Unity version supported by the SDK - * @param serverName {String} Server name of the API server currently responding - * @param supportEmail {String} VRChat's support email - * @param timeOutWorldId {String} - * @param tutorialWorldId {String} - * @param updateRateMsMaximum {Number} Unknown - * @param updateRateMsMinimum {Number} Unknown - * @param updateRateMsNormal {Number} Unknown - * @param updateRateMsUdonManual {Number} Unknown - * @param uploadAnalysisPercent {Number} Unknown - * @param urlList {Array.} List of allowed URLs that bypass the \"Allow untrusted URL's\" setting in-game - * @param useReliableUdpForVoice {Boolean} Unknown - * @param userUpdatePeriod {Number} Unknown - * @param userVerificationDelay {Number} Unknown - * @param userVerificationRetry {Number} Unknown - * @param userVerificationTimeout {Number} Unknown - * @param viveWindowsUrl {String} Download link for game on the Steam website. - * @param whiteListedAssetUrls {Array.} List of allowed URLs that are allowed to host avatar assets - * @param worldUpdatePeriod {Number} Unknown - * @param youtubedlHash {String} Currently used youtube-dl.exe hash in SHA-256-delimited format - * @param youtubedlVersion {String} Currently used youtube-dl.exe version - */ - constructor(address, announcements, apiKey, appName, buildVersionTag, clientApiKey, contactEmail, copyrightEmail, currentTOSVersion, defaultAvatar, deploymentGroup, devAppVersionStandalone, devDownloadLinkWindows, devSdkUrl, devSdkVersion, devServerVersionStandalone, disableAvatarCopying, disableAvatarGating, disableCommunityLabs, disableCommunityLabsPromotion, disableEventStream, disableFeedbackGating, disableRegistration, disableSteamNetworking, disableTwoFactorAuth, disableUdon, disableUpgradeAccount, downloadLinkWindows, downloadUrls, dynamicWorldRows, events, gearDemoRoomId, homepageRedirectTarget, homeWorldId, hubWorldId, jobsEmail, messageOfTheDay, moderationEmail, moderationQueryPeriod, notAllowedToSelectAvatarInPrivateWorldMessage, plugin, releaseAppVersionStandalone, releaseSdkUrl, releaseSdkVersion, releaseServerVersionStandalone, sdkDeveloperFaqUrl, sdkDiscordUrl, sdkNotAllowedToPublishMessage, sdkUnityVersion, serverName, supportEmail, timeOutWorldId, tutorialWorldId, updateRateMsMaximum, updateRateMsMinimum, updateRateMsNormal, updateRateMsUdonManual, uploadAnalysisPercent, urlList, useReliableUdpForVoice, userUpdatePeriod, userVerificationDelay, userVerificationRetry, userVerificationTimeout, viveWindowsUrl, whiteListedAssetUrls, worldUpdatePeriod, youtubedlHash, youtubedlVersion) { - - Config.initialize(this, address, announcements, apiKey, appName, buildVersionTag, clientApiKey, contactEmail, copyrightEmail, currentTOSVersion, defaultAvatar, deploymentGroup, devAppVersionStandalone, devDownloadLinkWindows, devSdkUrl, devSdkVersion, devServerVersionStandalone, disableAvatarCopying, disableAvatarGating, disableCommunityLabs, disableCommunityLabsPromotion, disableEventStream, disableFeedbackGating, disableRegistration, disableSteamNetworking, disableTwoFactorAuth, disableUdon, disableUpgradeAccount, downloadLinkWindows, downloadUrls, dynamicWorldRows, events, gearDemoRoomId, homepageRedirectTarget, homeWorldId, hubWorldId, jobsEmail, messageOfTheDay, moderationEmail, moderationQueryPeriod, notAllowedToSelectAvatarInPrivateWorldMessage, plugin, releaseAppVersionStandalone, releaseSdkUrl, releaseSdkVersion, releaseServerVersionStandalone, sdkDeveloperFaqUrl, sdkDiscordUrl, sdkNotAllowedToPublishMessage, sdkUnityVersion, serverName, supportEmail, timeOutWorldId, tutorialWorldId, updateRateMsMaximum, updateRateMsMinimum, updateRateMsNormal, updateRateMsUdonManual, uploadAnalysisPercent, urlList, useReliableUdpForVoice, userUpdatePeriod, userVerificationDelay, userVerificationRetry, userVerificationTimeout, viveWindowsUrl, whiteListedAssetUrls, worldUpdatePeriod, youtubedlHash, youtubedlVersion); - } - - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - static initialize(obj, address, announcements, apiKey, appName, buildVersionTag, clientApiKey, contactEmail, copyrightEmail, currentTOSVersion, defaultAvatar, deploymentGroup, devAppVersionStandalone, devDownloadLinkWindows, devSdkUrl, devSdkVersion, devServerVersionStandalone, disableAvatarCopying, disableAvatarGating, disableCommunityLabs, disableCommunityLabsPromotion, disableEventStream, disableFeedbackGating, disableRegistration, disableSteamNetworking, disableTwoFactorAuth, disableUdon, disableUpgradeAccount, downloadLinkWindows, downloadUrls, dynamicWorldRows, events, gearDemoRoomId, homepageRedirectTarget, homeWorldId, hubWorldId, jobsEmail, messageOfTheDay, moderationEmail, moderationQueryPeriod, notAllowedToSelectAvatarInPrivateWorldMessage, plugin, releaseAppVersionStandalone, releaseSdkUrl, releaseSdkVersion, releaseServerVersionStandalone, sdkDeveloperFaqUrl, sdkDiscordUrl, sdkNotAllowedToPublishMessage, sdkUnityVersion, serverName, supportEmail, timeOutWorldId, tutorialWorldId, updateRateMsMaximum, updateRateMsMinimum, updateRateMsNormal, updateRateMsUdonManual, uploadAnalysisPercent, urlList, useReliableUdpForVoice, userUpdatePeriod, userVerificationDelay, userVerificationRetry, userVerificationTimeout, viveWindowsUrl, whiteListedAssetUrls, worldUpdatePeriod, youtubedlHash, youtubedlVersion) { - obj['address'] = address; - obj['announcements'] = announcements; - obj['apiKey'] = apiKey; - obj['appName'] = appName || 'VrChat'; - obj['buildVersionTag'] = buildVersionTag; - obj['clientApiKey'] = clientApiKey; - obj['contactEmail'] = contactEmail; - obj['copyrightEmail'] = copyrightEmail; - obj['currentTOSVersion'] = currentTOSVersion; - obj['defaultAvatar'] = defaultAvatar; - obj['deploymentGroup'] = deploymentGroup; - obj['devAppVersionStandalone'] = devAppVersionStandalone; - obj['devDownloadLinkWindows'] = devDownloadLinkWindows; - obj['devSdkUrl'] = devSdkUrl; - obj['devSdkVersion'] = devSdkVersion; - obj['devServerVersionStandalone'] = devServerVersionStandalone; - obj['disableAvatarCopying'] = disableAvatarCopying || false; - obj['disableAvatarGating'] = disableAvatarGating || false; - obj['disableCommunityLabs'] = disableCommunityLabs || false; - obj['disableCommunityLabsPromotion'] = disableCommunityLabsPromotion || false; - obj['disableEventStream'] = disableEventStream || false; - obj['disableFeedbackGating'] = disableFeedbackGating || false; - obj['disableRegistration'] = disableRegistration || false; - obj['disableSteamNetworking'] = disableSteamNetworking || true; - obj['disableTwoFactorAuth'] = disableTwoFactorAuth || false; - obj['disableUdon'] = disableUdon || false; - obj['disableUpgradeAccount'] = disableUpgradeAccount || false; - obj['downloadLinkWindows'] = downloadLinkWindows; - obj['downloadUrls'] = downloadUrls; - obj['dynamicWorldRows'] = dynamicWorldRows; - obj['events'] = events; - obj['gearDemoRoomId'] = gearDemoRoomId; - obj['homepageRedirectTarget'] = homepageRedirectTarget || 'https://hello.vrchat.com'; - obj['homeWorldId'] = homeWorldId; - obj['hubWorldId'] = hubWorldId; - obj['jobsEmail'] = jobsEmail; - obj['messageOfTheDay'] = messageOfTheDay; - obj['moderationEmail'] = moderationEmail; - obj['moderationQueryPeriod'] = moderationQueryPeriod; - obj['notAllowedToSelectAvatarInPrivateWorldMessage'] = notAllowedToSelectAvatarInPrivateWorldMessage; - obj['plugin'] = plugin; - obj['releaseAppVersionStandalone'] = releaseAppVersionStandalone; - obj['releaseSdkUrl'] = releaseSdkUrl; - obj['releaseSdkVersion'] = releaseSdkVersion; - obj['releaseServerVersionStandalone'] = releaseServerVersionStandalone; - obj['sdkDeveloperFaqUrl'] = sdkDeveloperFaqUrl; - obj['sdkDiscordUrl'] = sdkDiscordUrl; - obj['sdkNotAllowedToPublishMessage'] = sdkNotAllowedToPublishMessage; - obj['sdkUnityVersion'] = sdkUnityVersion; - obj['serverName'] = serverName; - obj['supportEmail'] = supportEmail; - obj['timeOutWorldId'] = timeOutWorldId; - obj['tutorialWorldId'] = tutorialWorldId; - obj['updateRateMsMaximum'] = updateRateMsMaximum; - obj['updateRateMsMinimum'] = updateRateMsMinimum; - obj['updateRateMsNormal'] = updateRateMsNormal; - obj['updateRateMsUdonManual'] = updateRateMsUdonManual; - obj['uploadAnalysisPercent'] = uploadAnalysisPercent; - obj['urlList'] = urlList; - obj['useReliableUdpForVoice'] = useReliableUdpForVoice || false; - obj['userUpdatePeriod'] = userUpdatePeriod; - obj['userVerificationDelay'] = userVerificationDelay; - obj['userVerificationRetry'] = userVerificationRetry; - obj['userVerificationTimeout'] = userVerificationTimeout; - obj['viveWindowsUrl'] = viveWindowsUrl; - obj['whiteListedAssetUrls'] = whiteListedAssetUrls; - obj['worldUpdatePeriod'] = worldUpdatePeriod; - obj['youtubedl-hash'] = youtubedlHash; - obj['youtubedl-version'] = youtubedlVersion; - } - - /** - * Constructs a Config from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/Config} obj Optional instance to populate. - * @return {module:model/Config} The populated Config instance. - */ - static constructFromObject(data, obj) { - if (data) { - obj = obj || new Config(); - - if (data.hasOwnProperty('address')) { - obj['address'] = ApiClient.convertToType(data['address'], 'String'); - } - if (data.hasOwnProperty('announcements')) { - obj['announcements'] = ApiClient.convertToType(data['announcements'], [ConfigAnnouncements]); - } - if (data.hasOwnProperty('apiKey')) { - obj['apiKey'] = ApiClient.convertToType(data['apiKey'], 'String'); - } - if (data.hasOwnProperty('appName')) { - obj['appName'] = ApiClient.convertToType(data['appName'], 'String'); - } - if (data.hasOwnProperty('buildVersionTag')) { - obj['buildVersionTag'] = ApiClient.convertToType(data['buildVersionTag'], 'String'); - } - if (data.hasOwnProperty('clientApiKey')) { - obj['clientApiKey'] = ApiClient.convertToType(data['clientApiKey'], 'String'); - } - if (data.hasOwnProperty('clientBPSCeiling')) { - obj['clientBPSCeiling'] = ApiClient.convertToType(data['clientBPSCeiling'], 'Number'); - } - if (data.hasOwnProperty('clientDisconnectTimeout')) { - obj['clientDisconnectTimeout'] = ApiClient.convertToType(data['clientDisconnectTimeout'], 'Number'); - } - if (data.hasOwnProperty('clientReservedPlayerBPS')) { - obj['clientReservedPlayerBPS'] = ApiClient.convertToType(data['clientReservedPlayerBPS'], 'Number'); - } - if (data.hasOwnProperty('clientSentCountAllowance')) { - obj['clientSentCountAllowance'] = ApiClient.convertToType(data['clientSentCountAllowance'], 'Number'); - } - if (data.hasOwnProperty('contactEmail')) { - obj['contactEmail'] = ApiClient.convertToType(data['contactEmail'], 'String'); - } - if (data.hasOwnProperty('copyrightEmail')) { - obj['copyrightEmail'] = ApiClient.convertToType(data['copyrightEmail'], 'String'); - } - if (data.hasOwnProperty('currentTOSVersion')) { - obj['currentTOSVersion'] = ApiClient.convertToType(data['currentTOSVersion'], 'Number'); - } - if (data.hasOwnProperty('defaultAvatar')) { - obj['defaultAvatar'] = ApiClient.convertToType(data['defaultAvatar'], 'String'); - } - if (data.hasOwnProperty('deploymentGroup')) { - obj['deploymentGroup'] = DeploymentGroup.constructFromObject(data['deploymentGroup']); - } - if (data.hasOwnProperty('devAppVersionStandalone')) { - obj['devAppVersionStandalone'] = ApiClient.convertToType(data['devAppVersionStandalone'], 'String'); - } - if (data.hasOwnProperty('devDownloadLinkWindows')) { - obj['devDownloadLinkWindows'] = ApiClient.convertToType(data['devDownloadLinkWindows'], 'String'); - } - if (data.hasOwnProperty('devSdkUrl')) { - obj['devSdkUrl'] = ApiClient.convertToType(data['devSdkUrl'], 'String'); - } - if (data.hasOwnProperty('devSdkVersion')) { - obj['devSdkVersion'] = ApiClient.convertToType(data['devSdkVersion'], 'String'); - } - if (data.hasOwnProperty('devServerVersionStandalone')) { - obj['devServerVersionStandalone'] = ApiClient.convertToType(data['devServerVersionStandalone'], 'String'); - } - if (data.hasOwnProperty('disableAvatarCopying')) { - obj['disableAvatarCopying'] = ApiClient.convertToType(data['disableAvatarCopying'], 'Boolean'); - } - if (data.hasOwnProperty('disableAvatarGating')) { - obj['disableAvatarGating'] = ApiClient.convertToType(data['disableAvatarGating'], 'Boolean'); - } - if (data.hasOwnProperty('disableCommunityLabs')) { - obj['disableCommunityLabs'] = ApiClient.convertToType(data['disableCommunityLabs'], 'Boolean'); - } - if (data.hasOwnProperty('disableCommunityLabsPromotion')) { - obj['disableCommunityLabsPromotion'] = ApiClient.convertToType(data['disableCommunityLabsPromotion'], 'Boolean'); - } - if (data.hasOwnProperty('disableEmail')) { - obj['disableEmail'] = ApiClient.convertToType(data['disableEmail'], 'Boolean'); - } - if (data.hasOwnProperty('disableEventStream')) { - obj['disableEventStream'] = ApiClient.convertToType(data['disableEventStream'], 'Boolean'); - } - if (data.hasOwnProperty('disableFeedbackGating')) { - obj['disableFeedbackGating'] = ApiClient.convertToType(data['disableFeedbackGating'], 'Boolean'); - } - if (data.hasOwnProperty('disableHello')) { - obj['disableHello'] = ApiClient.convertToType(data['disableHello'], 'Boolean'); - } - if (data.hasOwnProperty('disableRegistration')) { - obj['disableRegistration'] = ApiClient.convertToType(data['disableRegistration'], 'Boolean'); - } - if (data.hasOwnProperty('disableSteamNetworking')) { - obj['disableSteamNetworking'] = ApiClient.convertToType(data['disableSteamNetworking'], 'Boolean'); - } - if (data.hasOwnProperty('disableTwoFactorAuth')) { - obj['disableTwoFactorAuth'] = ApiClient.convertToType(data['disableTwoFactorAuth'], 'Boolean'); - } - if (data.hasOwnProperty('disableUdon')) { - obj['disableUdon'] = ApiClient.convertToType(data['disableUdon'], 'Boolean'); - } - if (data.hasOwnProperty('disableUpgradeAccount')) { - obj['disableUpgradeAccount'] = ApiClient.convertToType(data['disableUpgradeAccount'], 'Boolean'); - } - if (data.hasOwnProperty('downloadLinkWindows')) { - obj['downloadLinkWindows'] = ApiClient.convertToType(data['downloadLinkWindows'], 'String'); - } - if (data.hasOwnProperty('downloadUrls')) { - obj['downloadUrls'] = ConfigDownloadUrls.constructFromObject(data['downloadUrls']); - } - if (data.hasOwnProperty('dynamicWorldRows')) { - obj['dynamicWorldRows'] = ApiClient.convertToType(data['dynamicWorldRows'], [ConfigDynamicWorldRows]); - } - if (data.hasOwnProperty('events')) { - obj['events'] = ConfigEvents.constructFromObject(data['events']); - } - if (data.hasOwnProperty('gearDemoRoomId')) { - obj['gearDemoRoomId'] = ApiClient.convertToType(data['gearDemoRoomId'], 'String'); - } - if (data.hasOwnProperty('homepageRedirectTarget')) { - obj['homepageRedirectTarget'] = ApiClient.convertToType(data['homepageRedirectTarget'], 'String'); - } - if (data.hasOwnProperty('homeWorldId')) { - obj['homeWorldId'] = ApiClient.convertToType(data['homeWorldId'], 'String'); - } - if (data.hasOwnProperty('hubWorldId')) { - obj['hubWorldId'] = ApiClient.convertToType(data['hubWorldId'], 'String'); - } - if (data.hasOwnProperty('jobsEmail')) { - obj['jobsEmail'] = ApiClient.convertToType(data['jobsEmail'], 'String'); - } - if (data.hasOwnProperty('messageOfTheDay')) { - obj['messageOfTheDay'] = ApiClient.convertToType(data['messageOfTheDay'], 'String'); - } - if (data.hasOwnProperty('moderationEmail')) { - obj['moderationEmail'] = ApiClient.convertToType(data['moderationEmail'], 'String'); - } - if (data.hasOwnProperty('moderationQueryPeriod')) { - obj['moderationQueryPeriod'] = ApiClient.convertToType(data['moderationQueryPeriod'], 'Number'); - } - if (data.hasOwnProperty('notAllowedToSelectAvatarInPrivateWorldMessage')) { - obj['notAllowedToSelectAvatarInPrivateWorldMessage'] = ApiClient.convertToType(data['notAllowedToSelectAvatarInPrivateWorldMessage'], 'String'); - } - if (data.hasOwnProperty('plugin')) { - obj['plugin'] = ApiClient.convertToType(data['plugin'], 'String'); - } - if (data.hasOwnProperty('releaseAppVersionStandalone')) { - obj['releaseAppVersionStandalone'] = ApiClient.convertToType(data['releaseAppVersionStandalone'], 'String'); - } - if (data.hasOwnProperty('releaseSdkUrl')) { - obj['releaseSdkUrl'] = ApiClient.convertToType(data['releaseSdkUrl'], 'String'); - } - if (data.hasOwnProperty('releaseSdkVersion')) { - obj['releaseSdkVersion'] = ApiClient.convertToType(data['releaseSdkVersion'], 'String'); - } - if (data.hasOwnProperty('releaseServerVersionStandalone')) { - obj['releaseServerVersionStandalone'] = ApiClient.convertToType(data['releaseServerVersionStandalone'], 'String'); - } - if (data.hasOwnProperty('sdkDeveloperFaqUrl')) { - obj['sdkDeveloperFaqUrl'] = ApiClient.convertToType(data['sdkDeveloperFaqUrl'], 'String'); - } - if (data.hasOwnProperty('sdkDiscordUrl')) { - obj['sdkDiscordUrl'] = ApiClient.convertToType(data['sdkDiscordUrl'], 'String'); - } - if (data.hasOwnProperty('sdkNotAllowedToPublishMessage')) { - obj['sdkNotAllowedToPublishMessage'] = ApiClient.convertToType(data['sdkNotAllowedToPublishMessage'], 'String'); - } - if (data.hasOwnProperty('sdkUnityVersion')) { - obj['sdkUnityVersion'] = ApiClient.convertToType(data['sdkUnityVersion'], 'String'); - } - if (data.hasOwnProperty('serverName')) { - obj['serverName'] = ApiClient.convertToType(data['serverName'], 'String'); - } - if (data.hasOwnProperty('supportEmail')) { - obj['supportEmail'] = ApiClient.convertToType(data['supportEmail'], 'String'); - } - if (data.hasOwnProperty('timeOutWorldId')) { - obj['timeOutWorldId'] = ApiClient.convertToType(data['timeOutWorldId'], 'String'); - } - if (data.hasOwnProperty('tutorialWorldId')) { - obj['tutorialWorldId'] = ApiClient.convertToType(data['tutorialWorldId'], 'String'); - } - if (data.hasOwnProperty('updateRateMsMaximum')) { - obj['updateRateMsMaximum'] = ApiClient.convertToType(data['updateRateMsMaximum'], 'Number'); - } - if (data.hasOwnProperty('updateRateMsMinimum')) { - obj['updateRateMsMinimum'] = ApiClient.convertToType(data['updateRateMsMinimum'], 'Number'); - } - if (data.hasOwnProperty('updateRateMsNormal')) { - obj['updateRateMsNormal'] = ApiClient.convertToType(data['updateRateMsNormal'], 'Number'); - } - if (data.hasOwnProperty('updateRateMsUdonManual')) { - obj['updateRateMsUdonManual'] = ApiClient.convertToType(data['updateRateMsUdonManual'], 'Number'); - } - if (data.hasOwnProperty('uploadAnalysisPercent')) { - obj['uploadAnalysisPercent'] = ApiClient.convertToType(data['uploadAnalysisPercent'], 'Number'); - } - if (data.hasOwnProperty('urlList')) { - obj['urlList'] = ApiClient.convertToType(data['urlList'], ['String']); - } - if (data.hasOwnProperty('useReliableUdpForVoice')) { - obj['useReliableUdpForVoice'] = ApiClient.convertToType(data['useReliableUdpForVoice'], 'Boolean'); - } - if (data.hasOwnProperty('userUpdatePeriod')) { - obj['userUpdatePeriod'] = ApiClient.convertToType(data['userUpdatePeriod'], 'Number'); - } - if (data.hasOwnProperty('userVerificationDelay')) { - obj['userVerificationDelay'] = ApiClient.convertToType(data['userVerificationDelay'], 'Number'); - } - if (data.hasOwnProperty('userVerificationRetry')) { - obj['userVerificationRetry'] = ApiClient.convertToType(data['userVerificationRetry'], 'Number'); - } - if (data.hasOwnProperty('userVerificationTimeout')) { - obj['userVerificationTimeout'] = ApiClient.convertToType(data['userVerificationTimeout'], 'Number'); - } - if (data.hasOwnProperty('viveWindowsUrl')) { - obj['viveWindowsUrl'] = ApiClient.convertToType(data['viveWindowsUrl'], 'String'); - } - if (data.hasOwnProperty('whiteListedAssetUrls')) { - obj['whiteListedAssetUrls'] = ApiClient.convertToType(data['whiteListedAssetUrls'], ['String']); - } - if (data.hasOwnProperty('worldUpdatePeriod')) { - obj['worldUpdatePeriod'] = ApiClient.convertToType(data['worldUpdatePeriod'], 'Number'); - } - if (data.hasOwnProperty('youtubedl-hash')) { - obj['youtubedl-hash'] = ApiClient.convertToType(data['youtubedl-hash'], 'String'); - } - if (data.hasOwnProperty('youtubedl-version')) { - obj['youtubedl-version'] = ApiClient.convertToType(data['youtubedl-version'], 'String'); - } - } - return obj; - } - - -} - -/** - * VRChat's office address - * @member {String} address - */ -Config.prototype['address'] = undefined; - -/** - * PSA, Public Announcements - * @member {Array.} announcements - */ -Config.prototype['announcements'] = undefined; - -/** - * apiKey to be used for all other requests - * @member {String} apiKey - */ -Config.prototype['apiKey'] = undefined; - -/** - * Game name - * @member {String} appName - * @default 'VrChat' - */ -Config.prototype['appName'] = 'VrChat'; - -/** - * Build tag of the API server - * @member {String} buildVersionTag - */ -Config.prototype['buildVersionTag'] = undefined; - -/** - * apiKey to be used for all other requests - * @member {String} clientApiKey - */ -Config.prototype['clientApiKey'] = undefined; - -/** - * Unknown - * @member {Number} clientBPSCeiling - */ -Config.prototype['clientBPSCeiling'] = undefined; - -/** - * Unknown - * @member {Number} clientDisconnectTimeout - */ -Config.prototype['clientDisconnectTimeout'] = undefined; - -/** - * Unknown - * @member {Number} clientReservedPlayerBPS - */ -Config.prototype['clientReservedPlayerBPS'] = undefined; - -/** - * Unknown - * @member {Number} clientSentCountAllowance - */ -Config.prototype['clientSentCountAllowance'] = undefined; - -/** - * VRChat's contact email - * @member {String} contactEmail - */ -Config.prototype['contactEmail'] = undefined; - -/** - * VRChat's copyright-issues-related email - * @member {String} copyrightEmail - */ -Config.prototype['copyrightEmail'] = undefined; - -/** - * Current version number of the Terms of Service - * @member {Number} currentTOSVersion - */ -Config.prototype['currentTOSVersion'] = undefined; - -/** - * @member {String} defaultAvatar - */ -Config.prototype['defaultAvatar'] = undefined; - -/** - * @member {module:model/DeploymentGroup} deploymentGroup - */ -Config.prototype['deploymentGroup'] = undefined; - -/** - * Version number for game development build - * @member {String} devAppVersionStandalone - */ -Config.prototype['devAppVersionStandalone'] = undefined; - -/** - * Developer Download link - * @member {String} devDownloadLinkWindows - */ -Config.prototype['devDownloadLinkWindows'] = undefined; - -/** - * Link to download the development SDK, use downloadUrls instead - * @member {String} devSdkUrl - */ -Config.prototype['devSdkUrl'] = undefined; - -/** - * Version of the development SDK - * @member {String} devSdkVersion - */ -Config.prototype['devSdkVersion'] = undefined; - -/** - * Version number for server development build - * @member {String} devServerVersionStandalone - */ -Config.prototype['devServerVersionStandalone'] = undefined; - -/** - * Toggles if copying avatars should be disabled - * @member {Boolean} disableAvatarCopying - * @default false - */ -Config.prototype['disableAvatarCopying'] = false; - -/** - * Toggles if avatar gating should be disabled. Avatar gating restricts uploading of avatars to people with the `system_avatar_access` Tag or `admin_avatar_access` Tag - * @member {Boolean} disableAvatarGating - * @default false - */ -Config.prototype['disableAvatarGating'] = false; - -/** - * Toggles if the Community Labs should be disabled - * @member {Boolean} disableCommunityLabs - * @default false - */ -Config.prototype['disableCommunityLabs'] = false; - -/** - * Toggles if promotion out of Community Labs should be disabled - * @member {Boolean} disableCommunityLabsPromotion - * @default false - */ -Config.prototype['disableCommunityLabsPromotion'] = false; - -/** - * Unknown - * @member {Boolean} disableEmail - * @default false - */ -Config.prototype['disableEmail'] = false; - -/** - * Toggles if Analytics should be disabled (this sreportedly not used in the Client) - * @member {Boolean} disableEventStream - * @default false - */ -Config.prototype['disableEventStream'] = false; - -/** - * Toggles if feedback gating should be disabled. Feedback gating restricts submission of feedback (reporting a World or User) to people with the `system_feedback_access` Tag. - * @member {Boolean} disableFeedbackGating - * @default false - */ -Config.prototype['disableFeedbackGating'] = false; - -/** - * Unknown - * @member {Boolean} disableHello - * @default false - */ -Config.prototype['disableHello'] = false; - -/** - * Toggles if new user account registration should be disabled - * @member {Boolean} disableRegistration - * @default false - */ -Config.prototype['disableRegistration'] = false; - -/** - * Toggles if Steam Networking should be disabled. VRChat these days uses Photon Unity Networking (PUN) instead. - * @member {Boolean} disableSteamNetworking - * @default true - */ -Config.prototype['disableSteamNetworking'] = true; - -/** - * Toggles if 2FA should be disabled. - * @member {Boolean} disableTwoFactorAuth - * @default false - */ -Config.prototype['disableTwoFactorAuth'] = false; - -/** - * Toggles if Udon should be universally disabled in-game. - * @member {Boolean} disableUdon - * @default false - */ -Config.prototype['disableUdon'] = false; - -/** - * Toggles if account upgrading \"linking with Steam/Oculus\" should be disabled. - * @member {Boolean} disableUpgradeAccount - * @default false - */ -Config.prototype['disableUpgradeAccount'] = false; - -/** - * Download link for game on the Oculus Rift website. - * @member {String} downloadLinkWindows - */ -Config.prototype['downloadLinkWindows'] = undefined; - -/** - * @member {module:model/ConfigDownloadUrls} downloadUrls - */ -Config.prototype['downloadUrls'] = undefined; - -/** - * Array of DynamicWorldRow objects, used by the game to display the list of world rows - * @member {Array.} dynamicWorldRows - */ -Config.prototype['dynamicWorldRows'] = undefined; - -/** - * @member {module:model/ConfigEvents} events - */ -Config.prototype['events'] = undefined; - -/** - * Unknown - * @member {String} gearDemoRoomId - */ -Config.prototype['gearDemoRoomId'] = undefined; - -/** - * Redirect target if you try to open the base API domain in your browser - * @member {String} homepageRedirectTarget - * @default 'https://hello.vrchat.com' - */ -Config.prototype['homepageRedirectTarget'] = 'https://hello.vrchat.com'; - -/** - * @member {String} homeWorldId - */ -Config.prototype['homeWorldId'] = undefined; - -/** - * @member {String} hubWorldId - */ -Config.prototype['hubWorldId'] = undefined; - -/** - * VRChat's job application email - * @member {String} jobsEmail - */ -Config.prototype['jobsEmail'] = undefined; - -/** - * MOTD - * @member {String} messageOfTheDay - */ -Config.prototype['messageOfTheDay'] = undefined; - -/** - * VRChat's moderation related email - * @member {String} moderationEmail - */ -Config.prototype['moderationEmail'] = undefined; - -/** - * Unknown - * @member {Number} moderationQueryPeriod - */ -Config.prototype['moderationQueryPeriod'] = undefined; - -/** - * Used in-game to notify a user they aren't allowed to select avatars in private worlds - * @member {String} notAllowedToSelectAvatarInPrivateWorldMessage - */ -Config.prototype['notAllowedToSelectAvatarInPrivateWorldMessage'] = undefined; - -/** - * Extra [plugin](https://doc.photonengine.com/en-us/server/current/plugins/manual) to run in each instance - * @member {String} plugin - */ -Config.prototype['plugin'] = undefined; - -/** - * Version number for game release build - * @member {String} releaseAppVersionStandalone - */ -Config.prototype['releaseAppVersionStandalone'] = undefined; - -/** - * Link to download the release SDK - * @member {String} releaseSdkUrl - */ -Config.prototype['releaseSdkUrl'] = undefined; - -/** - * Version of the release SDK - * @member {String} releaseSdkVersion - */ -Config.prototype['releaseSdkVersion'] = undefined; - -/** - * Version number for server release build - * @member {String} releaseServerVersionStandalone - */ -Config.prototype['releaseServerVersionStandalone'] = undefined; - -/** - * Link to the developer FAQ - * @member {String} sdkDeveloperFaqUrl - */ -Config.prototype['sdkDeveloperFaqUrl'] = undefined; - -/** - * Link to the official VRChat Discord - * @member {String} sdkDiscordUrl - */ -Config.prototype['sdkDiscordUrl'] = undefined; - -/** - * Used in the SDK to notify a user they aren't allowed to upload avatars/worlds yet - * @member {String} sdkNotAllowedToPublishMessage - */ -Config.prototype['sdkNotAllowedToPublishMessage'] = undefined; - -/** - * Unity version supported by the SDK - * @member {String} sdkUnityVersion - */ -Config.prototype['sdkUnityVersion'] = undefined; - -/** - * Server name of the API server currently responding - * @member {String} serverName - */ -Config.prototype['serverName'] = undefined; - -/** - * VRChat's support email - * @member {String} supportEmail - */ -Config.prototype['supportEmail'] = undefined; - -/** - * @member {String} timeOutWorldId - */ -Config.prototype['timeOutWorldId'] = undefined; - -/** - * @member {String} tutorialWorldId - */ -Config.prototype['tutorialWorldId'] = undefined; - -/** - * Unknown - * @member {Number} updateRateMsMaximum - */ -Config.prototype['updateRateMsMaximum'] = undefined; - -/** - * Unknown - * @member {Number} updateRateMsMinimum - */ -Config.prototype['updateRateMsMinimum'] = undefined; - -/** - * Unknown - * @member {Number} updateRateMsNormal - */ -Config.prototype['updateRateMsNormal'] = undefined; - -/** - * Unknown - * @member {Number} updateRateMsUdonManual - */ -Config.prototype['updateRateMsUdonManual'] = undefined; - -/** - * Unknown - * @member {Number} uploadAnalysisPercent - */ -Config.prototype['uploadAnalysisPercent'] = undefined; - -/** - * List of allowed URLs that bypass the \"Allow untrusted URL's\" setting in-game - * @member {Array.} urlList - */ -Config.prototype['urlList'] = undefined; - -/** - * Unknown - * @member {Boolean} useReliableUdpForVoice - * @default false - */ -Config.prototype['useReliableUdpForVoice'] = false; - -/** - * Unknown - * @member {Number} userUpdatePeriod - */ -Config.prototype['userUpdatePeriod'] = undefined; - -/** - * Unknown - * @member {Number} userVerificationDelay - */ -Config.prototype['userVerificationDelay'] = undefined; - -/** - * Unknown - * @member {Number} userVerificationRetry - */ -Config.prototype['userVerificationRetry'] = undefined; - -/** - * Unknown - * @member {Number} userVerificationTimeout - */ -Config.prototype['userVerificationTimeout'] = undefined; - -/** - * Download link for game on the Steam website. - * @member {String} viveWindowsUrl - */ -Config.prototype['viveWindowsUrl'] = undefined; - -/** - * List of allowed URLs that are allowed to host avatar assets - * @member {Array.} whiteListedAssetUrls - */ -Config.prototype['whiteListedAssetUrls'] = undefined; - -/** - * Unknown - * @member {Number} worldUpdatePeriod - */ -Config.prototype['worldUpdatePeriod'] = undefined; - -/** - * Currently used youtube-dl.exe hash in SHA-256-delimited format - * @member {String} youtubedl-hash - */ -Config.prototype['youtubedl-hash'] = undefined; - -/** - * Currently used youtube-dl.exe version - * @member {String} youtubedl-version - */ -Config.prototype['youtubedl-version'] = undefined; - - - - - - -export default Config; - diff --git a/src/model/ConfigAnnouncements.js b/src/model/ConfigAnnouncements.js deleted file mode 100644 index 824c14f..0000000 --- a/src/model/ConfigAnnouncements.js +++ /dev/null @@ -1,86 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -import ApiClient from '../ApiClient'; - -/** - * The ConfigAnnouncements model module. - * @module model/ConfigAnnouncements - * @version 1.0.0 - */ -class ConfigAnnouncements { - /** - * Constructs a new ConfigAnnouncements. - * Public Announcement - * @alias module:model/ConfigAnnouncements - * @param name {String} Announcement name - * @param text {String} Announcement text - */ - constructor(name, text) { - - ConfigAnnouncements.initialize(this, name, text); - } - - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - static initialize(obj, name, text) { - obj['name'] = name; - obj['text'] = text; - } - - /** - * Constructs a ConfigAnnouncements from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/ConfigAnnouncements} obj Optional instance to populate. - * @return {module:model/ConfigAnnouncements} The populated ConfigAnnouncements instance. - */ - static constructFromObject(data, obj) { - if (data) { - obj = obj || new ConfigAnnouncements(); - - if (data.hasOwnProperty('name')) { - obj['name'] = ApiClient.convertToType(data['name'], 'String'); - } - if (data.hasOwnProperty('text')) { - obj['text'] = ApiClient.convertToType(data['text'], 'String'); - } - } - return obj; - } - - -} - -/** - * Announcement name - * @member {String} name - */ -ConfigAnnouncements.prototype['name'] = undefined; - -/** - * Announcement text - * @member {String} text - */ -ConfigAnnouncements.prototype['text'] = undefined; - - - - - - -export default ConfigAnnouncements; - diff --git a/src/model/ConfigDownloadUrls.js b/src/model/ConfigDownloadUrls.js deleted file mode 100644 index 52a10ed..0000000 --- a/src/model/ConfigDownloadUrls.js +++ /dev/null @@ -1,97 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -import ApiClient from '../ApiClient'; - -/** - * The ConfigDownloadUrls model module. - * @module model/ConfigDownloadUrls - * @version 1.0.0 - */ -class ConfigDownloadUrls { - /** - * Constructs a new ConfigDownloadUrls. - * Download links for various development assets - * @alias module:model/ConfigDownloadUrls - * @param sdk2 {String} Download link for legacy SDK2 - * @param sdk3Avatars {String} Download link for SDK3 for Avatars - * @param sdk3Worlds {String} Download link for SDK3 for Worlds - */ - constructor(sdk2, sdk3Avatars, sdk3Worlds) { - - ConfigDownloadUrls.initialize(this, sdk2, sdk3Avatars, sdk3Worlds); - } - - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - static initialize(obj, sdk2, sdk3Avatars, sdk3Worlds) { - obj['sdk2'] = sdk2; - obj['sdk3-avatars'] = sdk3Avatars; - obj['sdk3-worlds'] = sdk3Worlds; - } - - /** - * Constructs a ConfigDownloadUrls from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/ConfigDownloadUrls} obj Optional instance to populate. - * @return {module:model/ConfigDownloadUrls} The populated ConfigDownloadUrls instance. - */ - static constructFromObject(data, obj) { - if (data) { - obj = obj || new ConfigDownloadUrls(); - - if (data.hasOwnProperty('sdk2')) { - obj['sdk2'] = ApiClient.convertToType(data['sdk2'], 'String'); - } - if (data.hasOwnProperty('sdk3-avatars')) { - obj['sdk3-avatars'] = ApiClient.convertToType(data['sdk3-avatars'], 'String'); - } - if (data.hasOwnProperty('sdk3-worlds')) { - obj['sdk3-worlds'] = ApiClient.convertToType(data['sdk3-worlds'], 'String'); - } - } - return obj; - } - - -} - -/** - * Download link for legacy SDK2 - * @member {String} sdk2 - */ -ConfigDownloadUrls.prototype['sdk2'] = undefined; - -/** - * Download link for SDK3 for Avatars - * @member {String} sdk3-avatars - */ -ConfigDownloadUrls.prototype['sdk3-avatars'] = undefined; - -/** - * Download link for SDK3 for Worlds - * @member {String} sdk3-worlds - */ -ConfigDownloadUrls.prototype['sdk3-worlds'] = undefined; - - - - - - -export default ConfigDownloadUrls; - diff --git a/src/model/ConfigDynamicWorldRows.js b/src/model/ConfigDynamicWorldRows.js deleted file mode 100644 index 8a67050..0000000 --- a/src/model/ConfigDynamicWorldRows.js +++ /dev/null @@ -1,132 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -import ApiClient from '../ApiClient'; - -/** - * The ConfigDynamicWorldRows model module. - * @module model/ConfigDynamicWorldRows - * @version 1.0.0 - */ -class ConfigDynamicWorldRows { - /** - * Constructs a new ConfigDynamicWorldRows. - * @alias module:model/ConfigDynamicWorldRows - * @param index {Number} - * @param name {String} - * @param platform {String} - * @param sortHeading {String} - * @param sortOrder {String} - * @param sortOwnership {String} - */ - constructor(index, name, platform, sortHeading, sortOrder, sortOwnership) { - - ConfigDynamicWorldRows.initialize(this, index, name, platform, sortHeading, sortOrder, sortOwnership); - } - - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - static initialize(obj, index, name, platform, sortHeading, sortOrder, sortOwnership) { - obj['index'] = index; - obj['name'] = name; - obj['platform'] = platform; - obj['sortHeading'] = sortHeading; - obj['sortOrder'] = sortOrder; - obj['sortOwnership'] = sortOwnership; - } - - /** - * Constructs a ConfigDynamicWorldRows from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/ConfigDynamicWorldRows} obj Optional instance to populate. - * @return {module:model/ConfigDynamicWorldRows} The populated ConfigDynamicWorldRows instance. - */ - static constructFromObject(data, obj) { - if (data) { - obj = obj || new ConfigDynamicWorldRows(); - - if (data.hasOwnProperty('index')) { - obj['index'] = ApiClient.convertToType(data['index'], 'Number'); - } - if (data.hasOwnProperty('name')) { - obj['name'] = ApiClient.convertToType(data['name'], 'String'); - } - if (data.hasOwnProperty('platform')) { - obj['platform'] = ApiClient.convertToType(data['platform'], 'String'); - } - if (data.hasOwnProperty('sortHeading')) { - obj['sortHeading'] = ApiClient.convertToType(data['sortHeading'], 'String'); - } - if (data.hasOwnProperty('sortOrder')) { - obj['sortOrder'] = ApiClient.convertToType(data['sortOrder'], 'String'); - } - if (data.hasOwnProperty('sortOwnership')) { - obj['sortOwnership'] = ApiClient.convertToType(data['sortOwnership'], 'String'); - } - if (data.hasOwnProperty('tag')) { - obj['tag'] = ApiClient.convertToType(data['tag'], 'String'); - } - } - return obj; - } - - -} - -/** - * @member {Number} index - */ -ConfigDynamicWorldRows.prototype['index'] = undefined; - -/** - * @member {String} name - */ -ConfigDynamicWorldRows.prototype['name'] = undefined; - -/** - * @member {String} platform - */ -ConfigDynamicWorldRows.prototype['platform'] = undefined; - -/** - * @member {String} sortHeading - */ -ConfigDynamicWorldRows.prototype['sortHeading'] = undefined; - -/** - * @member {String} sortOrder - */ -ConfigDynamicWorldRows.prototype['sortOrder'] = undefined; - -/** - * @member {String} sortOwnership - */ -ConfigDynamicWorldRows.prototype['sortOwnership'] = undefined; - -/** - * Tag to filter worlds for this row - * @member {String} tag - */ -ConfigDynamicWorldRows.prototype['tag'] = undefined; - - - - - - -export default ConfigDynamicWorldRows; - diff --git a/src/model/ConfigEvents.js b/src/model/ConfigEvents.js deleted file mode 100644 index bccc202..0000000 --- a/src/model/ConfigEvents.js +++ /dev/null @@ -1,173 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -import ApiClient from '../ApiClient'; - -/** - * The ConfigEvents model module. - * @module model/ConfigEvents - * @version 1.0.0 - */ -class ConfigEvents { - /** - * Constructs a new ConfigEvents. - * @alias module:model/ConfigEvents - * @param distanceClose {Number} Unknown - * @param distanceFactor {Number} Unknown - * @param distanceFar {Number} Unknown - * @param groupDistance {Number} Unknown - * @param maximumBunchSize {Number} Unknown - * @param notVisibleFactor {Number} Unknown - * @param playerOrderBucketSize {Number} Unknown - * @param playerOrderFactor {Number} Unknown - * @param slowUpdateFactorThreshold {Number} Unknown - * @param viewSegmentLength {Number} Unknown - */ - constructor(distanceClose, distanceFactor, distanceFar, groupDistance, maximumBunchSize, notVisibleFactor, playerOrderBucketSize, playerOrderFactor, slowUpdateFactorThreshold, viewSegmentLength) { - - ConfigEvents.initialize(this, distanceClose, distanceFactor, distanceFar, groupDistance, maximumBunchSize, notVisibleFactor, playerOrderBucketSize, playerOrderFactor, slowUpdateFactorThreshold, viewSegmentLength); - } - - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - static initialize(obj, distanceClose, distanceFactor, distanceFar, groupDistance, maximumBunchSize, notVisibleFactor, playerOrderBucketSize, playerOrderFactor, slowUpdateFactorThreshold, viewSegmentLength) { - obj['distanceClose'] = distanceClose; - obj['distanceFactor'] = distanceFactor; - obj['distanceFar'] = distanceFar; - obj['groupDistance'] = groupDistance; - obj['maximumBunchSize'] = maximumBunchSize; - obj['notVisibleFactor'] = notVisibleFactor; - obj['playerOrderBucketSize'] = playerOrderBucketSize; - obj['playerOrderFactor'] = playerOrderFactor; - obj['slowUpdateFactorThreshold'] = slowUpdateFactorThreshold; - obj['viewSegmentLength'] = viewSegmentLength; - } - - /** - * Constructs a ConfigEvents from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/ConfigEvents} obj Optional instance to populate. - * @return {module:model/ConfigEvents} The populated ConfigEvents instance. - */ - static constructFromObject(data, obj) { - if (data) { - obj = obj || new ConfigEvents(); - - if (data.hasOwnProperty('distanceClose')) { - obj['distanceClose'] = ApiClient.convertToType(data['distanceClose'], 'Number'); - } - if (data.hasOwnProperty('distanceFactor')) { - obj['distanceFactor'] = ApiClient.convertToType(data['distanceFactor'], 'Number'); - } - if (data.hasOwnProperty('distanceFar')) { - obj['distanceFar'] = ApiClient.convertToType(data['distanceFar'], 'Number'); - } - if (data.hasOwnProperty('groupDistance')) { - obj['groupDistance'] = ApiClient.convertToType(data['groupDistance'], 'Number'); - } - if (data.hasOwnProperty('maximumBunchSize')) { - obj['maximumBunchSize'] = ApiClient.convertToType(data['maximumBunchSize'], 'Number'); - } - if (data.hasOwnProperty('notVisibleFactor')) { - obj['notVisibleFactor'] = ApiClient.convertToType(data['notVisibleFactor'], 'Number'); - } - if (data.hasOwnProperty('playerOrderBucketSize')) { - obj['playerOrderBucketSize'] = ApiClient.convertToType(data['playerOrderBucketSize'], 'Number'); - } - if (data.hasOwnProperty('playerOrderFactor')) { - obj['playerOrderFactor'] = ApiClient.convertToType(data['playerOrderFactor'], 'Number'); - } - if (data.hasOwnProperty('slowUpdateFactorThreshold')) { - obj['slowUpdateFactorThreshold'] = ApiClient.convertToType(data['slowUpdateFactorThreshold'], 'Number'); - } - if (data.hasOwnProperty('viewSegmentLength')) { - obj['viewSegmentLength'] = ApiClient.convertToType(data['viewSegmentLength'], 'Number'); - } - } - return obj; - } - - -} - -/** - * Unknown - * @member {Number} distanceClose - */ -ConfigEvents.prototype['distanceClose'] = undefined; - -/** - * Unknown - * @member {Number} distanceFactor - */ -ConfigEvents.prototype['distanceFactor'] = undefined; - -/** - * Unknown - * @member {Number} distanceFar - */ -ConfigEvents.prototype['distanceFar'] = undefined; - -/** - * Unknown - * @member {Number} groupDistance - */ -ConfigEvents.prototype['groupDistance'] = undefined; - -/** - * Unknown - * @member {Number} maximumBunchSize - */ -ConfigEvents.prototype['maximumBunchSize'] = undefined; - -/** - * Unknown - * @member {Number} notVisibleFactor - */ -ConfigEvents.prototype['notVisibleFactor'] = undefined; - -/** - * Unknown - * @member {Number} playerOrderBucketSize - */ -ConfigEvents.prototype['playerOrderBucketSize'] = undefined; - -/** - * Unknown - * @member {Number} playerOrderFactor - */ -ConfigEvents.prototype['playerOrderFactor'] = undefined; - -/** - * Unknown - * @member {Number} slowUpdateFactorThreshold - */ -ConfigEvents.prototype['slowUpdateFactorThreshold'] = undefined; - -/** - * Unknown - * @member {Number} viewSegmentLength - */ -ConfigEvents.prototype['viewSegmentLength'] = undefined; - - - - - - -export default ConfigEvents; - diff --git a/src/model/CurrentUser.js b/src/model/CurrentUser.js deleted file mode 100644 index 2434cf0..0000000 --- a/src/model/CurrentUser.js +++ /dev/null @@ -1,525 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -import ApiClient from '../ApiClient'; -import DeveloperType from './DeveloperType'; -import UserState from './UserState'; -import UserStatus from './UserStatus'; - -/** - * The CurrentUser model module. - * @module model/CurrentUser - * @version 1.0.0 - */ -class CurrentUser { - /** - * Constructs a new CurrentUser. - * @alias module:model/CurrentUser - * @param id {String} - * @param username {String} - * @param displayName {String} - * @param userIcon {String} - * @param bio {String} - * @param bioLinks {Array.} - * @param profilePicOverride {String} - * @param statusDescription {String} - * @param pastDisplayNames {Array.} - * @param hasEmail {Boolean} - * @param hasPendingEmail {Boolean} - * @param obfuscatedEmail {String} - * @param obfuscatedPendingEmail {String} - * @param emailVerified {Boolean} - * @param hasBirthday {Boolean} - * @param unsubscribe {Boolean} - * @param statusHistory {Array.} - * @param statusFirstTime {Boolean} - * @param friends {Array.} - * @param friendGroupNames {Array.} - * @param currentAvatarImageUrl {String} - * @param currentAvatarThumbnailImageUrl {String} - * @param fallbackAvatar {String} - * @param currentAvatar {String} - * @param currentAvatarAssetUrl {String} - * @param acceptedTOSVersion {Number} - * @param steamId {String} - * @param steamDetails {Object} - * @param oculusId {String} - * @param hasLoggedInFromClient {Boolean} - * @param homeLocation {String} - * @param twoFactorAuthEnabled {Boolean} - * @param state {module:model/UserState} - * @param tags {Array.} - * @param developerType {module:model/DeveloperType} - * @param lastLogin {Date} - * @param lastPlatform {String} - * @param allowAvatarCopying {Boolean} - * @param status {module:model/UserStatus} - * @param dateJoined {Date} - * @param isFriend {Boolean} - * @param friendKey {String} - * @param onlineFriends {Array.} - * @param activeFriends {Array.} - * @param offlineFriends {Array.} - */ - constructor(id, username, displayName, userIcon, bio, bioLinks, profilePicOverride, statusDescription, pastDisplayNames, hasEmail, hasPendingEmail, obfuscatedEmail, obfuscatedPendingEmail, emailVerified, hasBirthday, unsubscribe, statusHistory, statusFirstTime, friends, friendGroupNames, currentAvatarImageUrl, currentAvatarThumbnailImageUrl, fallbackAvatar, currentAvatar, currentAvatarAssetUrl, acceptedTOSVersion, steamId, steamDetails, oculusId, hasLoggedInFromClient, homeLocation, twoFactorAuthEnabled, state, tags, developerType, lastLogin, lastPlatform, allowAvatarCopying, status, dateJoined, isFriend, friendKey, onlineFriends, activeFriends, offlineFriends) { - - CurrentUser.initialize(this, id, username, displayName, userIcon, bio, bioLinks, profilePicOverride, statusDescription, pastDisplayNames, hasEmail, hasPendingEmail, obfuscatedEmail, obfuscatedPendingEmail, emailVerified, hasBirthday, unsubscribe, statusHistory, statusFirstTime, friends, friendGroupNames, currentAvatarImageUrl, currentAvatarThumbnailImageUrl, fallbackAvatar, currentAvatar, currentAvatarAssetUrl, acceptedTOSVersion, steamId, steamDetails, oculusId, hasLoggedInFromClient, homeLocation, twoFactorAuthEnabled, state, tags, developerType, lastLogin, lastPlatform, allowAvatarCopying, status, dateJoined, isFriend, friendKey, onlineFriends, activeFriends, offlineFriends); - } - - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - static initialize(obj, id, username, displayName, userIcon, bio, bioLinks, profilePicOverride, statusDescription, pastDisplayNames, hasEmail, hasPendingEmail, obfuscatedEmail, obfuscatedPendingEmail, emailVerified, hasBirthday, unsubscribe, statusHistory, statusFirstTime, friends, friendGroupNames, currentAvatarImageUrl, currentAvatarThumbnailImageUrl, fallbackAvatar, currentAvatar, currentAvatarAssetUrl, acceptedTOSVersion, steamId, steamDetails, oculusId, hasLoggedInFromClient, homeLocation, twoFactorAuthEnabled, state, tags, developerType, lastLogin, lastPlatform, allowAvatarCopying, status, dateJoined, isFriend, friendKey, onlineFriends, activeFriends, offlineFriends) { - obj['id'] = id; - obj['username'] = username; - obj['displayName'] = displayName; - obj['userIcon'] = userIcon; - obj['bio'] = bio; - obj['bioLinks'] = bioLinks; - obj['profilePicOverride'] = profilePicOverride; - obj['statusDescription'] = statusDescription; - obj['pastDisplayNames'] = pastDisplayNames; - obj['hasEmail'] = hasEmail; - obj['hasPendingEmail'] = hasPendingEmail; - obj['obfuscatedEmail'] = obfuscatedEmail; - obj['obfuscatedPendingEmail'] = obfuscatedPendingEmail; - obj['emailVerified'] = emailVerified; - obj['hasBirthday'] = hasBirthday; - obj['unsubscribe'] = unsubscribe; - obj['statusHistory'] = statusHistory; - obj['statusFirstTime'] = statusFirstTime; - obj['friends'] = friends; - obj['friendGroupNames'] = friendGroupNames; - obj['currentAvatarImageUrl'] = currentAvatarImageUrl; - obj['currentAvatarThumbnailImageUrl'] = currentAvatarThumbnailImageUrl; - obj['fallbackAvatar'] = fallbackAvatar; - obj['currentAvatar'] = currentAvatar; - obj['currentAvatarAssetUrl'] = currentAvatarAssetUrl; - obj['acceptedTOSVersion'] = acceptedTOSVersion; - obj['steamId'] = steamId; - obj['steamDetails'] = steamDetails; - obj['oculusId'] = oculusId; - obj['hasLoggedInFromClient'] = hasLoggedInFromClient; - obj['homeLocation'] = homeLocation; - obj['twoFactorAuthEnabled'] = twoFactorAuthEnabled; - obj['state'] = state; - obj['tags'] = tags; - obj['developerType'] = developerType; - obj['last_login'] = lastLogin; - obj['last_platform'] = lastPlatform; - obj['allowAvatarCopying'] = allowAvatarCopying; - obj['status'] = status; - obj['date_joined'] = dateJoined; - obj['isFriend'] = isFriend || false; - obj['friendKey'] = friendKey; - obj['onlineFriends'] = onlineFriends; - obj['activeFriends'] = activeFriends; - obj['offlineFriends'] = offlineFriends; - } - - /** - * Constructs a CurrentUser from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/CurrentUser} obj Optional instance to populate. - * @return {module:model/CurrentUser} The populated CurrentUser instance. - */ - static constructFromObject(data, obj) { - if (data) { - obj = obj || new CurrentUser(); - - if (data.hasOwnProperty('id')) { - obj['id'] = ApiClient.convertToType(data['id'], 'String'); - } - if (data.hasOwnProperty('username')) { - obj['username'] = ApiClient.convertToType(data['username'], 'String'); - } - if (data.hasOwnProperty('displayName')) { - obj['displayName'] = ApiClient.convertToType(data['displayName'], 'String'); - } - if (data.hasOwnProperty('userIcon')) { - obj['userIcon'] = ApiClient.convertToType(data['userIcon'], 'String'); - } - if (data.hasOwnProperty('bio')) { - obj['bio'] = ApiClient.convertToType(data['bio'], 'String'); - } - if (data.hasOwnProperty('bioLinks')) { - obj['bioLinks'] = ApiClient.convertToType(data['bioLinks'], ['String']); - } - if (data.hasOwnProperty('profilePicOverride')) { - obj['profilePicOverride'] = ApiClient.convertToType(data['profilePicOverride'], 'String'); - } - if (data.hasOwnProperty('statusDescription')) { - obj['statusDescription'] = ApiClient.convertToType(data['statusDescription'], 'String'); - } - if (data.hasOwnProperty('pastDisplayNames')) { - obj['pastDisplayNames'] = ApiClient.convertToType(data['pastDisplayNames'], ['String']); - } - if (data.hasOwnProperty('hasEmail')) { - obj['hasEmail'] = ApiClient.convertToType(data['hasEmail'], 'Boolean'); - } - if (data.hasOwnProperty('hasPendingEmail')) { - obj['hasPendingEmail'] = ApiClient.convertToType(data['hasPendingEmail'], 'Boolean'); - } - if (data.hasOwnProperty('obfuscatedEmail')) { - obj['obfuscatedEmail'] = ApiClient.convertToType(data['obfuscatedEmail'], 'String'); - } - if (data.hasOwnProperty('obfuscatedPendingEmail')) { - obj['obfuscatedPendingEmail'] = ApiClient.convertToType(data['obfuscatedPendingEmail'], 'String'); - } - if (data.hasOwnProperty('emailVerified')) { - obj['emailVerified'] = ApiClient.convertToType(data['emailVerified'], 'Boolean'); - } - if (data.hasOwnProperty('hasBirthday')) { - obj['hasBirthday'] = ApiClient.convertToType(data['hasBirthday'], 'Boolean'); - } - if (data.hasOwnProperty('unsubscribe')) { - obj['unsubscribe'] = ApiClient.convertToType(data['unsubscribe'], 'Boolean'); - } - if (data.hasOwnProperty('statusHistory')) { - obj['statusHistory'] = ApiClient.convertToType(data['statusHistory'], ['String']); - } - if (data.hasOwnProperty('statusFirstTime')) { - obj['statusFirstTime'] = ApiClient.convertToType(data['statusFirstTime'], 'Boolean'); - } - if (data.hasOwnProperty('friends')) { - obj['friends'] = ApiClient.convertToType(data['friends'], ['String']); - } - if (data.hasOwnProperty('friendGroupNames')) { - obj['friendGroupNames'] = ApiClient.convertToType(data['friendGroupNames'], ['String']); - } - if (data.hasOwnProperty('currentAvatarImageUrl')) { - obj['currentAvatarImageUrl'] = ApiClient.convertToType(data['currentAvatarImageUrl'], 'String'); - } - if (data.hasOwnProperty('currentAvatarThumbnailImageUrl')) { - obj['currentAvatarThumbnailImageUrl'] = ApiClient.convertToType(data['currentAvatarThumbnailImageUrl'], 'String'); - } - if (data.hasOwnProperty('fallbackAvatar')) { - obj['fallbackAvatar'] = ApiClient.convertToType(data['fallbackAvatar'], 'String'); - } - if (data.hasOwnProperty('currentAvatar')) { - obj['currentAvatar'] = ApiClient.convertToType(data['currentAvatar'], 'String'); - } - if (data.hasOwnProperty('currentAvatarAssetUrl')) { - obj['currentAvatarAssetUrl'] = ApiClient.convertToType(data['currentAvatarAssetUrl'], 'String'); - } - if (data.hasOwnProperty('accountDeletionDate')) { - obj['accountDeletionDate'] = ApiClient.convertToType(data['accountDeletionDate'], 'Date'); - } - if (data.hasOwnProperty('acceptedTOSVersion')) { - obj['acceptedTOSVersion'] = ApiClient.convertToType(data['acceptedTOSVersion'], 'Number'); - } - if (data.hasOwnProperty('steamId')) { - obj['steamId'] = ApiClient.convertToType(data['steamId'], 'String'); - } - if (data.hasOwnProperty('steamDetails')) { - obj['steamDetails'] = ApiClient.convertToType(data['steamDetails'], Object); - } - if (data.hasOwnProperty('oculusId')) { - obj['oculusId'] = ApiClient.convertToType(data['oculusId'], 'String'); - } - if (data.hasOwnProperty('hasLoggedInFromClient')) { - obj['hasLoggedInFromClient'] = ApiClient.convertToType(data['hasLoggedInFromClient'], 'Boolean'); - } - if (data.hasOwnProperty('homeLocation')) { - obj['homeLocation'] = ApiClient.convertToType(data['homeLocation'], 'String'); - } - if (data.hasOwnProperty('twoFactorAuthEnabled')) { - obj['twoFactorAuthEnabled'] = ApiClient.convertToType(data['twoFactorAuthEnabled'], 'Boolean'); - } - if (data.hasOwnProperty('state')) { - obj['state'] = UserState.constructFromObject(data['state']); - } - if (data.hasOwnProperty('tags')) { - obj['tags'] = ApiClient.convertToType(data['tags'], ['String']); - } - if (data.hasOwnProperty('developerType')) { - obj['developerType'] = DeveloperType.constructFromObject(data['developerType']); - } - if (data.hasOwnProperty('last_login')) { - obj['last_login'] = ApiClient.convertToType(data['last_login'], 'Date'); - } - if (data.hasOwnProperty('last_platform')) { - obj['last_platform'] = ApiClient.convertToType(data['last_platform'], 'String'); - } - if (data.hasOwnProperty('allowAvatarCopying')) { - obj['allowAvatarCopying'] = ApiClient.convertToType(data['allowAvatarCopying'], 'Boolean'); - } - if (data.hasOwnProperty('status')) { - obj['status'] = UserStatus.constructFromObject(data['status']); - } - if (data.hasOwnProperty('date_joined')) { - obj['date_joined'] = ApiClient.convertToType(data['date_joined'], 'Date'); - } - if (data.hasOwnProperty('isFriend')) { - obj['isFriend'] = ApiClient.convertToType(data['isFriend'], 'Boolean'); - } - if (data.hasOwnProperty('friendKey')) { - obj['friendKey'] = ApiClient.convertToType(data['friendKey'], 'String'); - } - if (data.hasOwnProperty('onlineFriends')) { - obj['onlineFriends'] = ApiClient.convertToType(data['onlineFriends'], ['String']); - } - if (data.hasOwnProperty('activeFriends')) { - obj['activeFriends'] = ApiClient.convertToType(data['activeFriends'], ['String']); - } - if (data.hasOwnProperty('offlineFriends')) { - obj['offlineFriends'] = ApiClient.convertToType(data['offlineFriends'], ['String']); - } - } - return obj; - } - - -} - -/** - * @member {String} id - */ -CurrentUser.prototype['id'] = undefined; - -/** - * @member {String} username - */ -CurrentUser.prototype['username'] = undefined; - -/** - * @member {String} displayName - */ -CurrentUser.prototype['displayName'] = undefined; - -/** - * @member {String} userIcon - */ -CurrentUser.prototype['userIcon'] = undefined; - -/** - * @member {String} bio - */ -CurrentUser.prototype['bio'] = undefined; - -/** - * @member {Array.} bioLinks - */ -CurrentUser.prototype['bioLinks'] = undefined; - -/** - * @member {String} profilePicOverride - */ -CurrentUser.prototype['profilePicOverride'] = undefined; - -/** - * @member {String} statusDescription - */ -CurrentUser.prototype['statusDescription'] = undefined; - -/** - * @member {Array.} pastDisplayNames - */ -CurrentUser.prototype['pastDisplayNames'] = undefined; - -/** - * @member {Boolean} hasEmail - */ -CurrentUser.prototype['hasEmail'] = undefined; - -/** - * @member {Boolean} hasPendingEmail - */ -CurrentUser.prototype['hasPendingEmail'] = undefined; - -/** - * @member {String} obfuscatedEmail - */ -CurrentUser.prototype['obfuscatedEmail'] = undefined; - -/** - * @member {String} obfuscatedPendingEmail - */ -CurrentUser.prototype['obfuscatedPendingEmail'] = undefined; - -/** - * @member {Boolean} emailVerified - */ -CurrentUser.prototype['emailVerified'] = undefined; - -/** - * @member {Boolean} hasBirthday - */ -CurrentUser.prototype['hasBirthday'] = undefined; - -/** - * @member {Boolean} unsubscribe - */ -CurrentUser.prototype['unsubscribe'] = undefined; - -/** - * @member {Array.} statusHistory - */ -CurrentUser.prototype['statusHistory'] = undefined; - -/** - * @member {Boolean} statusFirstTime - */ -CurrentUser.prototype['statusFirstTime'] = undefined; - -/** - * @member {Array.} friends - */ -CurrentUser.prototype['friends'] = undefined; - -/** - * @member {Array.} friendGroupNames - */ -CurrentUser.prototype['friendGroupNames'] = undefined; - -/** - * @member {String} currentAvatarImageUrl - */ -CurrentUser.prototype['currentAvatarImageUrl'] = undefined; - -/** - * @member {String} currentAvatarThumbnailImageUrl - */ -CurrentUser.prototype['currentAvatarThumbnailImageUrl'] = undefined; - -/** - * @member {String} fallbackAvatar - */ -CurrentUser.prototype['fallbackAvatar'] = undefined; - -/** - * @member {String} currentAvatar - */ -CurrentUser.prototype['currentAvatar'] = undefined; - -/** - * @member {String} currentAvatarAssetUrl - */ -CurrentUser.prototype['currentAvatarAssetUrl'] = undefined; - -/** - * @member {Date} accountDeletionDate - */ -CurrentUser.prototype['accountDeletionDate'] = undefined; - -/** - * @member {Number} acceptedTOSVersion - */ -CurrentUser.prototype['acceptedTOSVersion'] = undefined; - -/** - * @member {String} steamId - */ -CurrentUser.prototype['steamId'] = undefined; - -/** - * @member {Object} steamDetails - */ -CurrentUser.prototype['steamDetails'] = undefined; - -/** - * @member {String} oculusId - */ -CurrentUser.prototype['oculusId'] = undefined; - -/** - * @member {Boolean} hasLoggedInFromClient - */ -CurrentUser.prototype['hasLoggedInFromClient'] = undefined; - -/** - * @member {String} homeLocation - */ -CurrentUser.prototype['homeLocation'] = undefined; - -/** - * @member {Boolean} twoFactorAuthEnabled - */ -CurrentUser.prototype['twoFactorAuthEnabled'] = undefined; - -/** - * @member {module:model/UserState} state - */ -CurrentUser.prototype['state'] = undefined; - -/** - * @member {Array.} tags - */ -CurrentUser.prototype['tags'] = undefined; - -/** - * @member {module:model/DeveloperType} developerType - */ -CurrentUser.prototype['developerType'] = undefined; - -/** - * @member {Date} last_login - */ -CurrentUser.prototype['last_login'] = undefined; - -/** - * @member {String} last_platform - */ -CurrentUser.prototype['last_platform'] = undefined; - -/** - * @member {Boolean} allowAvatarCopying - */ -CurrentUser.prototype['allowAvatarCopying'] = undefined; - -/** - * @member {module:model/UserStatus} status - */ -CurrentUser.prototype['status'] = undefined; - -/** - * @member {Date} date_joined - */ -CurrentUser.prototype['date_joined'] = undefined; - -/** - * @member {Boolean} isFriend - * @default false - */ -CurrentUser.prototype['isFriend'] = false; - -/** - * @member {String} friendKey - */ -CurrentUser.prototype['friendKey'] = undefined; - -/** - * @member {Array.} onlineFriends - */ -CurrentUser.prototype['onlineFriends'] = undefined; - -/** - * @member {Array.} activeFriends - */ -CurrentUser.prototype['activeFriends'] = undefined; - -/** - * @member {Array.} offlineFriends - */ -CurrentUser.prototype['offlineFriends'] = undefined; - - - - - - -export default CurrentUser; - diff --git a/src/model/DeploymentGroup.js b/src/model/DeploymentGroup.js deleted file mode 100644 index 0b9f7d4..0000000 --- a/src/model/DeploymentGroup.js +++ /dev/null @@ -1,60 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -import ApiClient from '../ApiClient'; -/** -* Enum class DeploymentGroup. -* @enum {} -* @readonly -*/ -export default class DeploymentGroup { - - /** - * value: "blue" - * @const - */ - "blue" = "blue"; - - - /** - * value: "green" - * @const - */ - "green" = "green"; - - - /** - * value: "grape" - * @const - */ - "grape" = "grape"; - - - /** - * value: "cherry" - * @const - */ - "cherry" = "cherry"; - - - - /** - * Returns a DeploymentGroup enum value from a Javascript object name. - * @param {Object} data The plain JavaScript object containing the name of the enum value. - * @return {module:model/DeploymentGroup} The enum DeploymentGroup value. - */ - static constructFromObject(object) { - return object; - } -} - diff --git a/src/model/DeveloperType.js b/src/model/DeveloperType.js deleted file mode 100644 index af0ff35..0000000 --- a/src/model/DeveloperType.js +++ /dev/null @@ -1,60 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -import ApiClient from '../ApiClient'; -/** -* Enum class DeveloperType. -* @enum {} -* @readonly -*/ -export default class DeveloperType { - - /** - * value: "none" - * @const - */ - "none" = "none"; - - - /** - * value: "trusted" - * @const - */ - "trusted" = "trusted"; - - - /** - * value: "internal" - * @const - */ - "internal" = "internal"; - - - /** - * value: "moderator" - * @const - */ - "moderator" = "moderator"; - - - - /** - * Returns a DeveloperType enum value from a Javascript object name. - * @param {Object} data The plain JavaScript object containing the name of the enum value. - * @return {module:model/DeveloperType} The enum DeveloperType value. - */ - static constructFromObject(object) { - return object; - } -} - diff --git a/src/model/Error.js b/src/model/Error.js deleted file mode 100644 index b4609d7..0000000 --- a/src/model/Error.js +++ /dev/null @@ -1,72 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -import ApiClient from '../ApiClient'; -import Response from './Response'; - -/** - * The Error model module. - * @module model/Error - * @version 1.0.0 - */ -class Error { - /** - * Constructs a new Error. - * @alias module:model/Error - */ - constructor() { - - Error.initialize(this); - } - - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - static initialize(obj) { - } - - /** - * Constructs a Error from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/Error} obj Optional instance to populate. - * @return {module:model/Error} The populated Error instance. - */ - static constructFromObject(data, obj) { - if (data) { - obj = obj || new Error(); - - if (data.hasOwnProperty('error')) { - obj['error'] = Response.constructFromObject(data['error']); - } - } - return obj; - } - - -} - -/** - * @member {module:model/Response} error - */ -Error.prototype['error'] = undefined; - - - - - - -export default Error; - diff --git a/src/model/File.js b/src/model/File.js deleted file mode 100644 index 0c86a9b..0000000 --- a/src/model/File.js +++ /dev/null @@ -1,137 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -import ApiClient from '../ApiClient'; -import FileVersion from './FileVersion'; -import MIMEType from './MIMEType'; - -/** - * The File model module. - * @module model/File - * @version 1.0.0 - */ -class File { - /** - * Constructs a new File. - * - * @alias module:model/File - * @param id {String} - * @param name {String} - * @param ownerId {String} - * @param mimeType {module:model/MIMEType} - * @param extension {String} - * @param tags {Array.} - * @param versions {Array.} - */ - constructor(id, name, ownerId, mimeType, extension, tags, versions) { - - File.initialize(this, id, name, ownerId, mimeType, extension, tags, versions); - } - - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - static initialize(obj, id, name, ownerId, mimeType, extension, tags, versions) { - obj['id'] = id; - obj['name'] = name; - obj['ownerId'] = ownerId; - obj['mimeType'] = mimeType; - obj['extension'] = extension; - obj['tags'] = tags; - obj['versions'] = versions; - } - - /** - * Constructs a File from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/File} obj Optional instance to populate. - * @return {module:model/File} The populated File instance. - */ - static constructFromObject(data, obj) { - if (data) { - obj = obj || new File(); - - if (data.hasOwnProperty('id')) { - obj['id'] = ApiClient.convertToType(data['id'], 'String'); - } - if (data.hasOwnProperty('name')) { - obj['name'] = ApiClient.convertToType(data['name'], 'String'); - } - if (data.hasOwnProperty('ownerId')) { - obj['ownerId'] = ApiClient.convertToType(data['ownerId'], 'String'); - } - if (data.hasOwnProperty('mimeType')) { - obj['mimeType'] = MIMEType.constructFromObject(data['mimeType']); - } - if (data.hasOwnProperty('extension')) { - obj['extension'] = ApiClient.convertToType(data['extension'], 'String'); - } - if (data.hasOwnProperty('tags')) { - obj['tags'] = ApiClient.convertToType(data['tags'], ['String']); - } - if (data.hasOwnProperty('versions')) { - obj['versions'] = ApiClient.convertToType(data['versions'], [FileVersion]); - } - } - return obj; - } - - -} - -/** - * @member {String} id - */ -File.prototype['id'] = undefined; - -/** - * - * @member {String} name - */ -File.prototype['name'] = undefined; - -/** - * @member {String} ownerId - */ -File.prototype['ownerId'] = undefined; - -/** - * @member {module:model/MIMEType} mimeType - */ -File.prototype['mimeType'] = undefined; - -/** - * @member {String} extension - */ -File.prototype['extension'] = undefined; - -/** - * @member {Array.} tags - */ -File.prototype['tags'] = undefined; - -/** - * @member {Array.} versions - */ -File.prototype['versions'] = undefined; - - - - - - -export default File; - diff --git a/src/model/FileData.js b/src/model/FileData.js deleted file mode 100644 index 35ceb0d..0000000 --- a/src/model/FileData.js +++ /dev/null @@ -1,163 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -import ApiClient from '../ApiClient'; -import FileStatus from './FileStatus'; - -/** - * The FileData model module. - * @module model/FileData - * @version 1.0.0 - */ -class FileData { - /** - * Constructs a new FileData. - * - * @alias module:model/FileData - * @param fileName {String} - * @param url {String} - * @param md5 {String} - * @param sizeInBytes {Number} - * @param status {module:model/FileStatus} - * @param category {module:model/FileData.CategoryEnum} - * @param uploadId {String} - */ - constructor(fileName, url, md5, sizeInBytes, status, category, uploadId) { - - FileData.initialize(this, fileName, url, md5, sizeInBytes, status, category, uploadId); - } - - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - static initialize(obj, fileName, url, md5, sizeInBytes, status, category, uploadId) { - obj['fileName'] = fileName; - obj['url'] = url; - obj['md5'] = md5; - obj['sizeInBytes'] = sizeInBytes; - obj['status'] = status; - obj['category'] = category; - obj['uploadId'] = uploadId || ''; - } - - /** - * Constructs a FileData from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/FileData} obj Optional instance to populate. - * @return {module:model/FileData} The populated FileData instance. - */ - static constructFromObject(data, obj) { - if (data) { - obj = obj || new FileData(); - - if (data.hasOwnProperty('fileName')) { - obj['fileName'] = ApiClient.convertToType(data['fileName'], 'String'); - } - if (data.hasOwnProperty('url')) { - obj['url'] = ApiClient.convertToType(data['url'], 'String'); - } - if (data.hasOwnProperty('md5')) { - obj['md5'] = ApiClient.convertToType(data['md5'], 'String'); - } - if (data.hasOwnProperty('sizeInBytes')) { - obj['sizeInBytes'] = ApiClient.convertToType(data['sizeInBytes'], 'Number'); - } - if (data.hasOwnProperty('status')) { - obj['status'] = FileStatus.constructFromObject(data['status']); - } - if (data.hasOwnProperty('category')) { - obj['category'] = ApiClient.convertToType(data['category'], 'String'); - } - if (data.hasOwnProperty('uploadId')) { - obj['uploadId'] = ApiClient.convertToType(data['uploadId'], 'String'); - } - } - return obj; - } - - -} - -/** - * @member {String} fileName - */ -FileData.prototype['fileName'] = undefined; - -/** - * @member {String} url - */ -FileData.prototype['url'] = undefined; - -/** - * @member {String} md5 - */ -FileData.prototype['md5'] = undefined; - -/** - * @member {Number} sizeInBytes - */ -FileData.prototype['sizeInBytes'] = undefined; - -/** - * @member {module:model/FileStatus} status - */ -FileData.prototype['status'] = undefined; - -/** - * @member {module:model/FileData.CategoryEnum} category - */ -FileData.prototype['category'] = undefined; - -/** - * @member {String} uploadId - * @default '' - */ -FileData.prototype['uploadId'] = ''; - - - - - -/** - * Allowed values for the category property. - * @enum {String} - * @readonly - */ -FileData['CategoryEnum'] = { - - /** - * value: "multipart" - * @const - */ - "multipart": "multipart", - - /** - * value: "queued" - * @const - */ - "queued": "queued", - - /** - * value: "simple" - * @const - */ - "simple": "simple" -}; - - - -export default FileData; - diff --git a/src/model/FileStatus.js b/src/model/FileStatus.js deleted file mode 100644 index eff1ae1..0000000 --- a/src/model/FileStatus.js +++ /dev/null @@ -1,53 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -import ApiClient from '../ApiClient'; -/** -* Enum class FileStatus. -* @enum {} -* @readonly -*/ -export default class FileStatus { - - /** - * value: "waiting" - * @const - */ - "waiting" = "waiting"; - - - /** - * value: "complete" - * @const - */ - "complete" = "complete"; - - - /** - * value: "none" - * @const - */ - "none" = "none"; - - - - /** - * Returns a FileStatus enum value from a Javascript object name. - * @param {Object} data The plain JavaScript object containing the name of the enum value. - * @return {module:model/FileStatus} The enum FileStatus value. - */ - static constructFromObject(object) { - return object; - } -} - diff --git a/src/model/FileVersion.js b/src/model/FileVersion.js deleted file mode 100644 index 9d4b352..0000000 --- a/src/model/FileVersion.js +++ /dev/null @@ -1,132 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -import ApiClient from '../ApiClient'; -import FileData from './FileData'; -import FileStatus from './FileStatus'; - -/** - * The FileVersion model module. - * @module model/FileVersion - * @version 1.0.0 - */ -class FileVersion { - /** - * Constructs a new FileVersion. - * - * @alias module:model/FileVersion - * @param version {Number} Incremental version counter, can only be increased. - * @param status {module:model/FileStatus} - * @param createdAt {Date} - */ - constructor(version, status, createdAt) { - - FileVersion.initialize(this, version, status, createdAt); - } - - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - static initialize(obj, version, status, createdAt) { - obj['version'] = version || 0; - obj['status'] = status; - obj['created_at'] = createdAt; - } - - /** - * Constructs a FileVersion from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/FileVersion} obj Optional instance to populate. - * @return {module:model/FileVersion} The populated FileVersion instance. - */ - static constructFromObject(data, obj) { - if (data) { - obj = obj || new FileVersion(); - - if (data.hasOwnProperty('version')) { - obj['version'] = ApiClient.convertToType(data['version'], 'Number'); - } - if (data.hasOwnProperty('status')) { - obj['status'] = FileStatus.constructFromObject(data['status']); - } - if (data.hasOwnProperty('created_at')) { - obj['created_at'] = ApiClient.convertToType(data['created_at'], 'Date'); - } - if (data.hasOwnProperty('file')) { - obj['file'] = FileData.constructFromObject(data['file']); - } - if (data.hasOwnProperty('delta')) { - obj['delta'] = FileData.constructFromObject(data['delta']); - } - if (data.hasOwnProperty('signature')) { - obj['signature'] = FileData.constructFromObject(data['signature']); - } - if (data.hasOwnProperty('deleted')) { - obj['deleted'] = ApiClient.convertToType(data['deleted'], 'Boolean'); - } - } - return obj; - } - - -} - -/** - * Incremental version counter, can only be increased. - * @member {Number} version - * @default 0 - */ -FileVersion.prototype['version'] = 0; - -/** - * @member {module:model/FileStatus} status - */ -FileVersion.prototype['status'] = undefined; - -/** - * @member {Date} created_at - */ -FileVersion.prototype['created_at'] = undefined; - -/** - * @member {module:model/FileData} file - */ -FileVersion.prototype['file'] = undefined; - -/** - * @member {module:model/FileData} delta - */ -FileVersion.prototype['delta'] = undefined; - -/** - * @member {module:model/FileData} signature - */ -FileVersion.prototype['signature'] = undefined; - -/** - * Usually only present if `true` - * @member {Boolean} deleted - * @default true - */ -FileVersion.prototype['deleted'] = true; - - - - - - -export default FileVersion; - diff --git a/src/model/InlineObject.js b/src/model/InlineObject.js deleted file mode 100644 index dd50cb0..0000000 --- a/src/model/InlineObject.js +++ /dev/null @@ -1,73 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -import ApiClient from '../ApiClient'; - -/** - * The InlineObject model module. - * @module model/InlineObject - * @version 1.0.0 - */ -class InlineObject { - /** - * Constructs a new InlineObject. - * @alias module:model/InlineObject - * @param code {String} - */ - constructor(code) { - - InlineObject.initialize(this, code); - } - - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - static initialize(obj, code) { - obj['code'] = code; - } - - /** - * Constructs a InlineObject from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/InlineObject} obj Optional instance to populate. - * @return {module:model/InlineObject} The populated InlineObject instance. - */ - static constructFromObject(data, obj) { - if (data) { - obj = obj || new InlineObject(); - - if (data.hasOwnProperty('code')) { - obj['code'] = ApiClient.convertToType(data['code'], 'String'); - } - } - return obj; - } - - -} - -/** - * @member {String} code - */ -InlineObject.prototype['code'] = undefined; - - - - - - -export default InlineObject; - diff --git a/src/model/InlineObject1.js b/src/model/InlineObject1.js deleted file mode 100644 index e07462e..0000000 --- a/src/model/InlineObject1.js +++ /dev/null @@ -1,73 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -import ApiClient from '../ApiClient'; - -/** - * The InlineObject1 model module. - * @module model/InlineObject1 - * @version 1.0.0 - */ -class InlineObject1 { - /** - * Constructs a new InlineObject1. - * @alias module:model/InlineObject1 - * @param code {String} - */ - constructor(code) { - - InlineObject1.initialize(this, code); - } - - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - static initialize(obj, code) { - obj['code'] = code; - } - - /** - * Constructs a InlineObject1 from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/InlineObject1} obj Optional instance to populate. - * @return {module:model/InlineObject1} The populated InlineObject1 instance. - */ - static constructFromObject(data, obj) { - if (data) { - obj = obj || new InlineObject1(); - - if (data.hasOwnProperty('code')) { - obj['code'] = ApiClient.convertToType(data['code'], 'String'); - } - } - return obj; - } - - -} - -/** - * @member {String} code - */ -InlineObject1.prototype['code'] = undefined; - - - - - - -export default InlineObject1; - diff --git a/src/model/InlineObject2.js b/src/model/InlineObject2.js deleted file mode 100644 index 2942d40..0000000 --- a/src/model/InlineObject2.js +++ /dev/null @@ -1,137 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -import ApiClient from '../ApiClient'; -import UserStatus from './UserStatus'; - -/** - * The InlineObject2 model module. - * @module model/InlineObject2 - * @version 1.0.0 - */ -class InlineObject2 { - /** - * Constructs a new InlineObject2. - * @alias module:model/InlineObject2 - */ - constructor() { - - InlineObject2.initialize(this); - } - - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - static initialize(obj) { - } - - /** - * Constructs a InlineObject2 from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/InlineObject2} obj Optional instance to populate. - * @return {module:model/InlineObject2} The populated InlineObject2 instance. - */ - static constructFromObject(data, obj) { - if (data) { - obj = obj || new InlineObject2(); - - if (data.hasOwnProperty('email')) { - obj['email'] = ApiClient.convertToType(data['email'], 'String'); - } - if (data.hasOwnProperty('birthday')) { - obj['birthday'] = ApiClient.convertToType(data['birthday'], 'Date'); - } - if (data.hasOwnProperty('acceptedTOSVersion')) { - obj['acceptedTOSVersion'] = ApiClient.convertToType(data['acceptedTOSVersion'], 'Number'); - } - if (data.hasOwnProperty('tags')) { - obj['tags'] = ApiClient.convertToType(data['tags'], ['String']); - } - if (data.hasOwnProperty('status')) { - obj['status'] = UserStatus.constructFromObject(data['status']); - } - if (data.hasOwnProperty('statusDescription')) { - obj['statusDescription'] = ApiClient.convertToType(data['statusDescription'], 'String'); - } - if (data.hasOwnProperty('bio')) { - obj['bio'] = ApiClient.convertToType(data['bio'], 'String'); - } - if (data.hasOwnProperty('bioLinks')) { - obj['bioLinks'] = ApiClient.convertToType(data['bioLinks'], ['String']); - } - if (data.hasOwnProperty('userIcon')) { - obj['userIcon'] = ApiClient.convertToType(data['userIcon'], 'String'); - } - } - return obj; - } - - -} - -/** - * @member {String} email - */ -InlineObject2.prototype['email'] = undefined; - -/** - * @member {Date} birthday - */ -InlineObject2.prototype['birthday'] = undefined; - -/** - * @member {Number} acceptedTOSVersion - */ -InlineObject2.prototype['acceptedTOSVersion'] = undefined; - -/** - * @member {Array.} tags - */ -InlineObject2.prototype['tags'] = undefined; - -/** - * @member {module:model/UserStatus} status - */ -InlineObject2.prototype['status'] = undefined; - -/** - * @member {String} statusDescription - */ -InlineObject2.prototype['statusDescription'] = undefined; - -/** - * @member {String} bio - */ -InlineObject2.prototype['bio'] = undefined; - -/** - * @member {Array.} bioLinks - */ -InlineObject2.prototype['bioLinks'] = undefined; - -/** - * MUST be a valid VRChat /file/ url. - * @member {String} userIcon - */ -InlineObject2.prototype['userIcon'] = undefined; - - - - - - -export default InlineObject2; - diff --git a/src/model/InlineObject3.js b/src/model/InlineObject3.js deleted file mode 100644 index f049967..0000000 --- a/src/model/InlineObject3.js +++ /dev/null @@ -1,102 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -import ApiClient from '../ApiClient'; -import MIMEType from './MIMEType'; - -/** - * The InlineObject3 model module. - * @module model/InlineObject3 - * @version 1.0.0 - */ -class InlineObject3 { - /** - * Constructs a new InlineObject3. - * @alias module:model/InlineObject3 - * @param name {String} - * @param mimeType {module:model/MIMEType} - * @param extension {String} - */ - constructor(name, mimeType, extension) { - - InlineObject3.initialize(this, name, mimeType, extension); - } - - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - static initialize(obj, name, mimeType, extension) { - obj['name'] = name; - obj['mimeType'] = mimeType; - obj['extension'] = extension; - } - - /** - * Constructs a InlineObject3 from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/InlineObject3} obj Optional instance to populate. - * @return {module:model/InlineObject3} The populated InlineObject3 instance. - */ - static constructFromObject(data, obj) { - if (data) { - obj = obj || new InlineObject3(); - - if (data.hasOwnProperty('name')) { - obj['name'] = ApiClient.convertToType(data['name'], 'String'); - } - if (data.hasOwnProperty('mimeType')) { - obj['mimeType'] = MIMEType.constructFromObject(data['mimeType']); - } - if (data.hasOwnProperty('extension')) { - obj['extension'] = ApiClient.convertToType(data['extension'], 'String'); - } - if (data.hasOwnProperty('tags')) { - obj['tags'] = ApiClient.convertToType(data['tags'], ['String']); - } - } - return obj; - } - - -} - -/** - * @member {String} name - */ -InlineObject3.prototype['name'] = undefined; - -/** - * @member {module:model/MIMEType} mimeType - */ -InlineObject3.prototype['mimeType'] = undefined; - -/** - * @member {String} extension - */ -InlineObject3.prototype['extension'] = undefined; - -/** - * @member {Array.} tags - */ -InlineObject3.prototype['tags'] = undefined; - - - - - - -export default InlineObject3; - diff --git a/src/model/InlineObject4.js b/src/model/InlineObject4.js deleted file mode 100644 index 6f7fba4..0000000 --- a/src/model/InlineObject4.js +++ /dev/null @@ -1,126 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -import ApiClient from '../ApiClient'; - -/** - * The InlineObject4 model module. - * @module model/InlineObject4 - * @version 1.0.0 - */ -class InlineObject4 { - /** - * Constructs a new InlineObject4. - * @alias module:model/InlineObject4 - * @param nextPartNumber {module:model/InlineObject4.NextPartNumberEnum} Always a zero in string form, despite how many parts uploaded. - * @param maxParts {module:model/InlineObject4.MaxPartsEnum} Always a zero in string form, despite how many parts uploaded. - */ - constructor(nextPartNumber, maxParts) { - - InlineObject4.initialize(this, nextPartNumber, maxParts); - } - - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - static initialize(obj, nextPartNumber, maxParts) { - obj['nextPartNumber'] = nextPartNumber || '0'; - obj['maxParts'] = maxParts || '0'; - } - - /** - * Constructs a InlineObject4 from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/InlineObject4} obj Optional instance to populate. - * @return {module:model/InlineObject4} The populated InlineObject4 instance. - */ - static constructFromObject(data, obj) { - if (data) { - obj = obj || new InlineObject4(); - - if (data.hasOwnProperty('etags')) { - obj['etags'] = ApiClient.convertToType(data['etags'], ['String']); - } - if (data.hasOwnProperty('nextPartNumber')) { - obj['nextPartNumber'] = ApiClient.convertToType(data['nextPartNumber'], 'String'); - } - if (data.hasOwnProperty('maxParts')) { - obj['maxParts'] = ApiClient.convertToType(data['maxParts'], 'String'); - } - } - return obj; - } - - -} - -/** - * Array of ETags uploaded. - * @member {Array.} etags - */ -InlineObject4.prototype['etags'] = undefined; - -/** - * Always a zero in string form, despite how many parts uploaded. - * @member {module:model/InlineObject4.NextPartNumberEnum} nextPartNumber - * @default '0' - */ -InlineObject4.prototype['nextPartNumber'] = '0'; - -/** - * Always a zero in string form, despite how many parts uploaded. - * @member {module:model/InlineObject4.MaxPartsEnum} maxParts - * @default '0' - */ -InlineObject4.prototype['maxParts'] = '0'; - - - - - -/** - * Allowed values for the nextPartNumber property. - * @enum {String} - * @readonly - */ -InlineObject4['NextPartNumberEnum'] = { - - /** - * value: "0" - * @const - */ - "0": "0" -}; - - -/** - * Allowed values for the maxParts property. - * @enum {String} - * @readonly - */ -InlineObject4['MaxPartsEnum'] = { - - /** - * value: "0" - * @const - */ - "0": "0" -}; - - - -export default InlineObject4; - diff --git a/src/model/InlineResponse200.js b/src/model/InlineResponse200.js deleted file mode 100644 index e3d2ec8..0000000 --- a/src/model/InlineResponse200.js +++ /dev/null @@ -1,83 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -import ApiClient from '../ApiClient'; - -/** - * The InlineResponse200 model module. - * @module model/InlineResponse200 - * @version 1.0.0 - */ -class InlineResponse200 { - /** - * Constructs a new InlineResponse200. - * @alias module:model/InlineResponse200 - * @param ok {Boolean} - * @param token {String} - */ - constructor(ok, token) { - - InlineResponse200.initialize(this, ok, token); - } - - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - static initialize(obj, ok, token) { - obj['ok'] = ok; - obj['token'] = token; - } - - /** - * Constructs a InlineResponse200 from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/InlineResponse200} obj Optional instance to populate. - * @return {module:model/InlineResponse200} The populated InlineResponse200 instance. - */ - static constructFromObject(data, obj) { - if (data) { - obj = obj || new InlineResponse200(); - - if (data.hasOwnProperty('ok')) { - obj['ok'] = ApiClient.convertToType(data['ok'], 'Boolean'); - } - if (data.hasOwnProperty('token')) { - obj['token'] = ApiClient.convertToType(data['token'], 'String'); - } - } - return obj; - } - - -} - -/** - * @member {Boolean} ok - */ -InlineResponse200.prototype['ok'] = undefined; - -/** - * @member {String} token - */ -InlineResponse200.prototype['token'] = undefined; - - - - - - -export default InlineResponse200; - diff --git a/src/model/InlineResponse2001.js b/src/model/InlineResponse2001.js deleted file mode 100644 index c75ec2f..0000000 --- a/src/model/InlineResponse2001.js +++ /dev/null @@ -1,73 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -import ApiClient from '../ApiClient'; - -/** - * The InlineResponse2001 model module. - * @module model/InlineResponse2001 - * @version 1.0.0 - */ -class InlineResponse2001 { - /** - * Constructs a new InlineResponse2001. - * @alias module:model/InlineResponse2001 - * @param verified {Boolean} - */ - constructor(verified) { - - InlineResponse2001.initialize(this, verified); - } - - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - static initialize(obj, verified) { - obj['verified'] = verified; - } - - /** - * Constructs a InlineResponse2001 from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/InlineResponse2001} obj Optional instance to populate. - * @return {module:model/InlineResponse2001} The populated InlineResponse2001 instance. - */ - static constructFromObject(data, obj) { - if (data) { - obj = obj || new InlineResponse2001(); - - if (data.hasOwnProperty('verified')) { - obj['verified'] = ApiClient.convertToType(data['verified'], 'Boolean'); - } - } - return obj; - } - - -} - -/** - * @member {Boolean} verified - */ -InlineResponse2001.prototype['verified'] = undefined; - - - - - - -export default InlineResponse2001; - diff --git a/src/model/InlineResponse2002.js b/src/model/InlineResponse2002.js deleted file mode 100644 index a7c9d67..0000000 --- a/src/model/InlineResponse2002.js +++ /dev/null @@ -1,93 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -import ApiClient from '../ApiClient'; - -/** - * The InlineResponse2002 model module. - * @module model/InlineResponse2002 - * @version 1.0.0 - */ -class InlineResponse2002 { - /** - * Constructs a new InlineResponse2002. - * @alias module:model/InlineResponse2002 - * @param ok {Boolean} - * @param serverName {String} - * @param buildVersionTag {String} - */ - constructor(ok, serverName, buildVersionTag) { - - InlineResponse2002.initialize(this, ok, serverName, buildVersionTag); - } - - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - static initialize(obj, ok, serverName, buildVersionTag) { - obj['ok'] = ok; - obj['serverName'] = serverName; - obj['buildVersionTag'] = buildVersionTag; - } - - /** - * Constructs a InlineResponse2002 from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/InlineResponse2002} obj Optional instance to populate. - * @return {module:model/InlineResponse2002} The populated InlineResponse2002 instance. - */ - static constructFromObject(data, obj) { - if (data) { - obj = obj || new InlineResponse2002(); - - if (data.hasOwnProperty('ok')) { - obj['ok'] = ApiClient.convertToType(data['ok'], 'Boolean'); - } - if (data.hasOwnProperty('serverName')) { - obj['serverName'] = ApiClient.convertToType(data['serverName'], 'String'); - } - if (data.hasOwnProperty('buildVersionTag')) { - obj['buildVersionTag'] = ApiClient.convertToType(data['buildVersionTag'], 'String'); - } - } - return obj; - } - - -} - -/** - * @member {Boolean} ok - */ -InlineResponse2002.prototype['ok'] = undefined; - -/** - * @member {String} serverName - */ -InlineResponse2002.prototype['serverName'] = undefined; - -/** - * @member {String} buildVersionTag - */ -InlineResponse2002.prototype['buildVersionTag'] = undefined; - - - - - - -export default InlineResponse2002; - diff --git a/src/model/InlineResponse2003.js b/src/model/InlineResponse2003.js deleted file mode 100644 index dfadc92..0000000 --- a/src/model/InlineResponse2003.js +++ /dev/null @@ -1,96 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -import ApiClient from '../ApiClient'; - -/** - * The InlineResponse2003 model module. - * @module model/InlineResponse2003 - * @version 1.0.0 - */ -class InlineResponse2003 { - /** - * Constructs a new InlineResponse2003. - * @alias module:model/InlineResponse2003 - * @param isFriend {Boolean} - * @param outgoingRequest {Boolean} - * @param incomingRequest {Boolean} - */ - constructor(isFriend, outgoingRequest, incomingRequest) { - - InlineResponse2003.initialize(this, isFriend, outgoingRequest, incomingRequest); - } - - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - static initialize(obj, isFriend, outgoingRequest, incomingRequest) { - obj['isFriend'] = isFriend || false; - obj['outgoingRequest'] = outgoingRequest || false; - obj['incomingRequest'] = incomingRequest || false; - } - - /** - * Constructs a InlineResponse2003 from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/InlineResponse2003} obj Optional instance to populate. - * @return {module:model/InlineResponse2003} The populated InlineResponse2003 instance. - */ - static constructFromObject(data, obj) { - if (data) { - obj = obj || new InlineResponse2003(); - - if (data.hasOwnProperty('isFriend')) { - obj['isFriend'] = ApiClient.convertToType(data['isFriend'], 'Boolean'); - } - if (data.hasOwnProperty('outgoingRequest')) { - obj['outgoingRequest'] = ApiClient.convertToType(data['outgoingRequest'], 'Boolean'); - } - if (data.hasOwnProperty('incomingRequest')) { - obj['incomingRequest'] = ApiClient.convertToType(data['incomingRequest'], 'Boolean'); - } - } - return obj; - } - - -} - -/** - * @member {Boolean} isFriend - * @default false - */ -InlineResponse2003.prototype['isFriend'] = false; - -/** - * @member {Boolean} outgoingRequest - * @default false - */ -InlineResponse2003.prototype['outgoingRequest'] = false; - -/** - * @member {Boolean} incomingRequest - * @default false - */ -InlineResponse2003.prototype['incomingRequest'] = false; - - - - - - -export default InlineResponse2003; - diff --git a/src/model/InlineResponse2004.js b/src/model/InlineResponse2004.js deleted file mode 100644 index 440b06f..0000000 --- a/src/model/InlineResponse2004.js +++ /dev/null @@ -1,124 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -import ApiClient from '../ApiClient'; - -/** - * The InlineResponse2004 model module. - * @module model/InlineResponse2004 - * @version 1.0.0 - */ -class InlineResponse2004 { - /** - * Constructs a new InlineResponse2004. - * @alias module:model/InlineResponse2004 - * @param uploadId {String} - * @param fileName {String} - * @param nextPartNumber {Number} - * @param maxParts {Number} - * @param parts {Array.} - * @param etags {Array.} Unknown - */ - constructor(uploadId, fileName, nextPartNumber, maxParts, parts, etags) { - - InlineResponse2004.initialize(this, uploadId, fileName, nextPartNumber, maxParts, parts, etags); - } - - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - static initialize(obj, uploadId, fileName, nextPartNumber, maxParts, parts, etags) { - obj['uploadId'] = uploadId; - obj['fileName'] = fileName; - obj['nextPartNumber'] = nextPartNumber; - obj['maxParts'] = maxParts; - obj['parts'] = parts; - obj['etags'] = etags; - } - - /** - * Constructs a InlineResponse2004 from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/InlineResponse2004} obj Optional instance to populate. - * @return {module:model/InlineResponse2004} The populated InlineResponse2004 instance. - */ - static constructFromObject(data, obj) { - if (data) { - obj = obj || new InlineResponse2004(); - - if (data.hasOwnProperty('uploadId')) { - obj['uploadId'] = ApiClient.convertToType(data['uploadId'], 'String'); - } - if (data.hasOwnProperty('fileName')) { - obj['fileName'] = ApiClient.convertToType(data['fileName'], 'String'); - } - if (data.hasOwnProperty('nextPartNumber')) { - obj['nextPartNumber'] = ApiClient.convertToType(data['nextPartNumber'], 'Number'); - } - if (data.hasOwnProperty('maxParts')) { - obj['maxParts'] = ApiClient.convertToType(data['maxParts'], 'Number'); - } - if (data.hasOwnProperty('parts')) { - obj['parts'] = ApiClient.convertToType(data['parts'], [Object]); - } - if (data.hasOwnProperty('etags')) { - obj['etags'] = ApiClient.convertToType(data['etags'], [Object]); - } - } - return obj; - } - - -} - -/** - * @member {String} uploadId - */ -InlineResponse2004.prototype['uploadId'] = undefined; - -/** - * @member {String} fileName - */ -InlineResponse2004.prototype['fileName'] = undefined; - -/** - * @member {Number} nextPartNumber - */ -InlineResponse2004.prototype['nextPartNumber'] = undefined; - -/** - * @member {Number} maxParts - */ -InlineResponse2004.prototype['maxParts'] = undefined; - -/** - * @member {Array.} parts - */ -InlineResponse2004.prototype['parts'] = undefined; - -/** - * Unknown - * @member {Array.} etags - */ -InlineResponse2004.prototype['etags'] = undefined; - - - - - - -export default InlineResponse2004; - diff --git a/src/model/InlineResponse2005.js b/src/model/InlineResponse2005.js deleted file mode 100644 index 6641f90..0000000 --- a/src/model/InlineResponse2005.js +++ /dev/null @@ -1,73 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -import ApiClient from '../ApiClient'; - -/** - * The InlineResponse2005 model module. - * @module model/InlineResponse2005 - * @version 1.0.0 - */ -class InlineResponse2005 { - /** - * Constructs a new InlineResponse2005. - * @alias module:model/InlineResponse2005 - * @param url {String} - */ - constructor(url) { - - InlineResponse2005.initialize(this, url); - } - - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - static initialize(obj, url) { - obj['url'] = url; - } - - /** - * Constructs a InlineResponse2005 from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/InlineResponse2005} obj Optional instance to populate. - * @return {module:model/InlineResponse2005} The populated InlineResponse2005 instance. - */ - static constructFromObject(data, obj) { - if (data) { - obj = obj || new InlineResponse2005(); - - if (data.hasOwnProperty('url')) { - obj['url'] = ApiClient.convertToType(data['url'], 'String'); - } - } - return obj; - } - - -} - -/** - * @member {String} url - */ -InlineResponse2005.prototype['url'] = undefined; - - - - - - -export default InlineResponse2005; - diff --git a/src/model/InlineResponse401.js b/src/model/InlineResponse401.js deleted file mode 100644 index 234bed4..0000000 --- a/src/model/InlineResponse401.js +++ /dev/null @@ -1,74 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -import ApiClient from '../ApiClient'; -import Error from './Error'; - -/** - * The InlineResponse401 model module. - * @module model/InlineResponse401 - * @version 1.0.0 - */ -class InlineResponse401 { - /** - * Constructs a new InlineResponse401. - * @alias module:model/InlineResponse401 - * @param error {module:model/Error} - */ - constructor(error) { - - InlineResponse401.initialize(this, error); - } - - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - static initialize(obj, error) { - obj['error'] = error; - } - - /** - * Constructs a InlineResponse401 from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/InlineResponse401} obj Optional instance to populate. - * @return {module:model/InlineResponse401} The populated InlineResponse401 instance. - */ - static constructFromObject(data, obj) { - if (data) { - obj = obj || new InlineResponse401(); - - if (data.hasOwnProperty('error')) { - obj['error'] = Error.constructFromObject(data['error']); - } - } - return obj; - } - - -} - -/** - * @member {module:model/Error} error - */ -InlineResponse401.prototype['error'] = undefined; - - - - - - -export default InlineResponse401; - diff --git a/src/model/LimitedUser.js b/src/model/LimitedUser.js deleted file mode 100644 index 9df309d..0000000 --- a/src/model/LimitedUser.js +++ /dev/null @@ -1,224 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -import ApiClient from '../ApiClient'; -import DeveloperType from './DeveloperType'; -import UserStatus from './UserStatus'; - -/** - * The LimitedUser model module. - * @module model/LimitedUser - * @version 1.0.0 - */ -class LimitedUser { - /** - * Constructs a new LimitedUser. - * @alias module:model/LimitedUser - * @param id {String} - * @param username {String} - * @param displayName {String} - * @param userIcon {String} - * @param profilePicOverride {String} - * @param statusDescription {String} - * @param currentAvatarImageUrl {String} - * @param currentAvatarThumbnailImageUrl {String} - * @param fallbackAvatar {String} - * @param developerType {module:model/DeveloperType} - * @param lastPlatform {String} - * @param status {module:model/UserStatus} - * @param isFriend {Boolean} - * @param location {String} - * @param tags {Array.} Always empty - */ - constructor(id, username, displayName, userIcon, profilePicOverride, statusDescription, currentAvatarImageUrl, currentAvatarThumbnailImageUrl, fallbackAvatar, developerType, lastPlatform, status, isFriend, location, tags) { - - LimitedUser.initialize(this, id, username, displayName, userIcon, profilePicOverride, statusDescription, currentAvatarImageUrl, currentAvatarThumbnailImageUrl, fallbackAvatar, developerType, lastPlatform, status, isFriend, location, tags); - } - - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - static initialize(obj, id, username, displayName, userIcon, profilePicOverride, statusDescription, currentAvatarImageUrl, currentAvatarThumbnailImageUrl, fallbackAvatar, developerType, lastPlatform, status, isFriend, location, tags) { - obj['id'] = id; - obj['username'] = username; - obj['displayName'] = displayName; - obj['userIcon'] = userIcon; - obj['profilePicOverride'] = profilePicOverride; - obj['statusDescription'] = statusDescription; - obj['currentAvatarImageUrl'] = currentAvatarImageUrl; - obj['currentAvatarThumbnailImageUrl'] = currentAvatarThumbnailImageUrl; - obj['fallbackAvatar'] = fallbackAvatar; - obj['developerType'] = developerType; - obj['last_platform'] = lastPlatform; - obj['status'] = status; - obj['isFriend'] = isFriend; - obj['location'] = location; - obj['tags'] = tags; - } - - /** - * Constructs a LimitedUser from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/LimitedUser} obj Optional instance to populate. - * @return {module:model/LimitedUser} The populated LimitedUser instance. - */ - static constructFromObject(data, obj) { - if (data) { - obj = obj || new LimitedUser(); - - if (data.hasOwnProperty('id')) { - obj['id'] = ApiClient.convertToType(data['id'], 'String'); - } - if (data.hasOwnProperty('username')) { - obj['username'] = ApiClient.convertToType(data['username'], 'String'); - } - if (data.hasOwnProperty('displayName')) { - obj['displayName'] = ApiClient.convertToType(data['displayName'], 'String'); - } - if (data.hasOwnProperty('bio')) { - obj['bio'] = ApiClient.convertToType(data['bio'], 'String'); - } - if (data.hasOwnProperty('userIcon')) { - obj['userIcon'] = ApiClient.convertToType(data['userIcon'], 'String'); - } - if (data.hasOwnProperty('profilePicOverride')) { - obj['profilePicOverride'] = ApiClient.convertToType(data['profilePicOverride'], 'String'); - } - if (data.hasOwnProperty('statusDescription')) { - obj['statusDescription'] = ApiClient.convertToType(data['statusDescription'], 'String'); - } - if (data.hasOwnProperty('currentAvatarImageUrl')) { - obj['currentAvatarImageUrl'] = ApiClient.convertToType(data['currentAvatarImageUrl'], 'String'); - } - if (data.hasOwnProperty('currentAvatarThumbnailImageUrl')) { - obj['currentAvatarThumbnailImageUrl'] = ApiClient.convertToType(data['currentAvatarThumbnailImageUrl'], 'String'); - } - if (data.hasOwnProperty('fallbackAvatar')) { - obj['fallbackAvatar'] = ApiClient.convertToType(data['fallbackAvatar'], 'String'); - } - if (data.hasOwnProperty('developerType')) { - obj['developerType'] = DeveloperType.constructFromObject(data['developerType']); - } - if (data.hasOwnProperty('last_platform')) { - obj['last_platform'] = ApiClient.convertToType(data['last_platform'], 'String'); - } - if (data.hasOwnProperty('status')) { - obj['status'] = UserStatus.constructFromObject(data['status']); - } - if (data.hasOwnProperty('isFriend')) { - obj['isFriend'] = ApiClient.convertToType(data['isFriend'], 'Boolean'); - } - if (data.hasOwnProperty('location')) { - obj['location'] = ApiClient.convertToType(data['location'], 'String'); - } - if (data.hasOwnProperty('tags')) { - obj['tags'] = ApiClient.convertToType(data['tags'], ['String']); - } - } - return obj; - } - - -} - -/** - * @member {String} id - */ -LimitedUser.prototype['id'] = undefined; - -/** - * @member {String} username - */ -LimitedUser.prototype['username'] = undefined; - -/** - * @member {String} displayName - */ -LimitedUser.prototype['displayName'] = undefined; - -/** - * @member {String} bio - */ -LimitedUser.prototype['bio'] = undefined; - -/** - * @member {String} userIcon - */ -LimitedUser.prototype['userIcon'] = undefined; - -/** - * @member {String} profilePicOverride - */ -LimitedUser.prototype['profilePicOverride'] = undefined; - -/** - * @member {String} statusDescription - */ -LimitedUser.prototype['statusDescription'] = undefined; - -/** - * @member {String} currentAvatarImageUrl - */ -LimitedUser.prototype['currentAvatarImageUrl'] = undefined; - -/** - * @member {String} currentAvatarThumbnailImageUrl - */ -LimitedUser.prototype['currentAvatarThumbnailImageUrl'] = undefined; - -/** - * @member {String} fallbackAvatar - */ -LimitedUser.prototype['fallbackAvatar'] = undefined; - -/** - * @member {module:model/DeveloperType} developerType - */ -LimitedUser.prototype['developerType'] = undefined; - -/** - * @member {String} last_platform - */ -LimitedUser.prototype['last_platform'] = undefined; - -/** - * @member {module:model/UserStatus} status - */ -LimitedUser.prototype['status'] = undefined; - -/** - * @member {Boolean} isFriend - */ -LimitedUser.prototype['isFriend'] = undefined; - -/** - * @member {String} location - */ -LimitedUser.prototype['location'] = undefined; - -/** - * Always empty - * @member {Array.} tags - */ -LimitedUser.prototype['tags'] = undefined; - - - - - - -export default LimitedUser; - diff --git a/src/model/LimitedWorld.js b/src/model/LimitedWorld.js deleted file mode 100644 index 99ba944..0000000 --- a/src/model/LimitedWorld.js +++ /dev/null @@ -1,246 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -import ApiClient from '../ApiClient'; -import ReleaseStatus from './ReleaseStatus'; - -/** - * The LimitedWorld model module. - * @module model/LimitedWorld - * @version 1.0.0 - */ -class LimitedWorld { - /** - * Constructs a new LimitedWorld. - * @alias module:model/LimitedWorld - * @param authorId {String} - * @param authorName {String} - * @param capacity {Number} - * @param favorites {Number} - * @param heat {Number} - * @param id {String} - * @param imageUrl {String} - * @param name {String} - * @param organization {String} - * @param popularity {Number} - * @param publicationDate {String} - * @param releaseStatus {module:model/ReleaseStatus} - * @param tags {Array.} - * @param thumbnailImageUrl {String} - * @param unityPackages {Array.} - */ - constructor(authorId, authorName, capacity, favorites, heat, id, imageUrl, name, organization, popularity, publicationDate, releaseStatus, tags, thumbnailImageUrl, unityPackages) { - - LimitedWorld.initialize(this, authorId, authorName, capacity, favorites, heat, id, imageUrl, name, organization, popularity, publicationDate, releaseStatus, tags, thumbnailImageUrl, unityPackages); - } - - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - static initialize(obj, authorId, authorName, capacity, favorites, heat, id, imageUrl, name, organization, popularity, publicationDate, releaseStatus, tags, thumbnailImageUrl, unityPackages) { - obj['authorId'] = authorId; - obj['authorName'] = authorName; - obj['capacity'] = capacity; - obj['favorites'] = favorites; - obj['heat'] = heat; - obj['id'] = id; - obj['imageUrl'] = imageUrl; - obj['name'] = name; - obj['organization'] = organization; - obj['popularity'] = popularity; - obj['publicationDate'] = publicationDate; - obj['releaseStatus'] = releaseStatus; - obj['tags'] = tags; - obj['thumbnailImageUrl'] = thumbnailImageUrl; - obj['unityPackages'] = unityPackages; - } - - /** - * Constructs a LimitedWorld from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/LimitedWorld} obj Optional instance to populate. - * @return {module:model/LimitedWorld} The populated LimitedWorld instance. - */ - static constructFromObject(data, obj) { - if (data) { - obj = obj || new LimitedWorld(); - - if (data.hasOwnProperty('authorId')) { - obj['authorId'] = ApiClient.convertToType(data['authorId'], 'String'); - } - if (data.hasOwnProperty('authorName')) { - obj['authorName'] = ApiClient.convertToType(data['authorName'], 'String'); - } - if (data.hasOwnProperty('capacity')) { - obj['capacity'] = ApiClient.convertToType(data['capacity'], 'Number'); - } - if (data.hasOwnProperty('created_at')) { - obj['created_at'] = ApiClient.convertToType(data['created_at'], 'Date'); - } - if (data.hasOwnProperty('favorites')) { - obj['favorites'] = ApiClient.convertToType(data['favorites'], 'Number'); - } - if (data.hasOwnProperty('heat')) { - obj['heat'] = ApiClient.convertToType(data['heat'], 'Number'); - } - if (data.hasOwnProperty('id')) { - obj['id'] = ApiClient.convertToType(data['id'], 'String'); - } - if (data.hasOwnProperty('imageUrl')) { - obj['imageUrl'] = ApiClient.convertToType(data['imageUrl'], 'String'); - } - if (data.hasOwnProperty('labsPublicationDate')) { - obj['labsPublicationDate'] = ApiClient.convertToType(data['labsPublicationDate'], 'String'); - } - if (data.hasOwnProperty('name')) { - obj['name'] = ApiClient.convertToType(data['name'], 'String'); - } - if (data.hasOwnProperty('occupants')) { - obj['occupants'] = ApiClient.convertToType(data['occupants'], 'Number'); - } - if (data.hasOwnProperty('organization')) { - obj['organization'] = ApiClient.convertToType(data['organization'], 'String'); - } - if (data.hasOwnProperty('popularity')) { - obj['popularity'] = ApiClient.convertToType(data['popularity'], 'Number'); - } - if (data.hasOwnProperty('publicationDate')) { - obj['publicationDate'] = ApiClient.convertToType(data['publicationDate'], 'String'); - } - if (data.hasOwnProperty('releaseStatus')) { - obj['releaseStatus'] = ReleaseStatus.constructFromObject(data['releaseStatus']); - } - if (data.hasOwnProperty('tags')) { - obj['tags'] = ApiClient.convertToType(data['tags'], ['String']); - } - if (data.hasOwnProperty('thumbnailImageUrl')) { - obj['thumbnailImageUrl'] = ApiClient.convertToType(data['thumbnailImageUrl'], 'String'); - } - if (data.hasOwnProperty('unityPackages')) { - obj['unityPackages'] = ApiClient.convertToType(data['unityPackages'], [Object]); - } - if (data.hasOwnProperty('updated_at')) { - obj['updated_at'] = ApiClient.convertToType(data['updated_at'], 'Date'); - } - } - return obj; - } - - -} - -/** - * @member {String} authorId - */ -LimitedWorld.prototype['authorId'] = undefined; - -/** - * @member {String} authorName - */ -LimitedWorld.prototype['authorName'] = undefined; - -/** - * @member {Number} capacity - */ -LimitedWorld.prototype['capacity'] = undefined; - -/** - * @member {Date} created_at - */ -LimitedWorld.prototype['created_at'] = undefined; - -/** - * @member {Number} favorites - */ -LimitedWorld.prototype['favorites'] = undefined; - -/** - * @member {Number} heat - */ -LimitedWorld.prototype['heat'] = undefined; - -/** - * @member {String} id - */ -LimitedWorld.prototype['id'] = undefined; - -/** - * @member {String} imageUrl - */ -LimitedWorld.prototype['imageUrl'] = undefined; - -/** - * @member {String} labsPublicationDate - */ -LimitedWorld.prototype['labsPublicationDate'] = undefined; - -/** - * @member {String} name - */ -LimitedWorld.prototype['name'] = undefined; - -/** - * @member {Number} occupants - */ -LimitedWorld.prototype['occupants'] = undefined; - -/** - * @member {String} organization - */ -LimitedWorld.prototype['organization'] = undefined; - -/** - * @member {Number} popularity - */ -LimitedWorld.prototype['popularity'] = undefined; - -/** - * @member {String} publicationDate - */ -LimitedWorld.prototype['publicationDate'] = undefined; - -/** - * @member {module:model/ReleaseStatus} releaseStatus - */ -LimitedWorld.prototype['releaseStatus'] = undefined; - -/** - * @member {Array.} tags - */ -LimitedWorld.prototype['tags'] = undefined; - -/** - * @member {String} thumbnailImageUrl - */ -LimitedWorld.prototype['thumbnailImageUrl'] = undefined; - -/** - * @member {Array.} unityPackages - */ -LimitedWorld.prototype['unityPackages'] = undefined; - -/** - * @member {Date} updated_at - */ -LimitedWorld.prototype['updated_at'] = undefined; - - - - - - -export default LimitedWorld; - diff --git a/src/model/MIMEType.js b/src/model/MIMEType.js deleted file mode 100644 index 560ab65..0000000 --- a/src/model/MIMEType.js +++ /dev/null @@ -1,130 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -import ApiClient from '../ApiClient'; -/** -* Enum class MIMEType. -* @enum {} -* @readonly -*/ -export default class MIMEType { - - /** - * value: "image⁄jpeg" - * @const - */ - "image⁄jpeg" = "image⁄jpeg"; - - - /** - * value: "image⁄jpg" - * @const - */ - "image⁄jpg" = "image⁄jpg"; - - - /** - * value: "image⁄png" - * @const - */ - "image⁄png" = "image⁄png"; - - - /** - * value: "image⁄webp" - * @const - */ - "image⁄webp" = "image⁄webp"; - - - /** - * value: "image⁄gif" - * @const - */ - "image⁄gif" = "image⁄gif"; - - - /** - * value: "image⁄bmp" - * @const - */ - "image⁄bmp" = "image⁄bmp"; - - - /** - * value: "image⁄svg+xml" - * @const - */ - "image⁄svg+xml" = "image⁄svg+xml"; - - - /** - * value: "image⁄tiff" - * @const - */ - "image⁄tiff" = "image⁄tiff"; - - - /** - * value: "application⁄x-avatar" - * @const - */ - "application⁄x-avatar" = "application⁄x-avatar"; - - - /** - * value: "application⁄x-world" - * @const - */ - "application⁄x-world" = "application⁄x-world"; - - - /** - * value: "application⁄gzip" - * @const - */ - "application⁄gzip" = "application⁄gzip"; - - - /** - * value: "application/x-rsync-signature" - * @const - */ - "application/x-rsync-signature" = "application/x-rsync-signature"; - - - /** - * value: "application/x-rsync-delta" - * @const - */ - "application/x-rsync-delta" = "application/x-rsync-delta"; - - - /** - * value: "application/octet-stream" - * @const - */ - "application/octet-stream" = "application/octet-stream"; - - - - /** - * Returns a MIMEType enum value from a Javascript object name. - * @param {Object} data The plain JavaScript object containing the name of the enum value. - * @return {module:model/MIMEType} The enum MIMEType value. - */ - static constructFromObject(object) { - return object; - } -} - diff --git a/src/model/Notification.js b/src/model/Notification.js deleted file mode 100644 index 4bd979e..0000000 --- a/src/model/Notification.js +++ /dev/null @@ -1,149 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -import ApiClient from '../ApiClient'; -import NotificationType from './NotificationType'; - -/** - * The Notification model module. - * @module model/Notification - * @version 1.0.0 - */ -class Notification { - /** - * Constructs a new Notification. - * - * @alias module:model/Notification - * @param id {String} - * @param senderUserId {String} - * @param senderUsername {String} - * @param type {module:model/NotificationType} - * @param message {String} - * @param details {String} **NOTICE:** This is not a JSON object, this is a json **encoded** object, meaning you have to json-de-encode to get the NotificationDetail object depending on the NotificationType. - * @param seen {Boolean} - * @param createdAt {Date} - */ - constructor(id, senderUserId, senderUsername, type, message, details, seen, createdAt) { - - Notification.initialize(this, id, senderUserId, senderUsername, type, message, details, seen, createdAt); - } - - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - static initialize(obj, id, senderUserId, senderUsername, type, message, details, seen, createdAt) { - obj['id'] = id; - obj['senderUserId'] = senderUserId; - obj['senderUsername'] = senderUsername; - obj['type'] = type; - obj['message'] = message; - obj['details'] = details || '{}'; - obj['seen'] = seen || false; - obj['created_at'] = createdAt; - } - - /** - * Constructs a Notification from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/Notification} obj Optional instance to populate. - * @return {module:model/Notification} The populated Notification instance. - */ - static constructFromObject(data, obj) { - if (data) { - obj = obj || new Notification(); - - if (data.hasOwnProperty('id')) { - obj['id'] = ApiClient.convertToType(data['id'], 'String'); - } - if (data.hasOwnProperty('senderUserId')) { - obj['senderUserId'] = ApiClient.convertToType(data['senderUserId'], 'String'); - } - if (data.hasOwnProperty('senderUsername')) { - obj['senderUsername'] = ApiClient.convertToType(data['senderUsername'], 'String'); - } - if (data.hasOwnProperty('type')) { - obj['type'] = NotificationType.constructFromObject(data['type']); - } - if (data.hasOwnProperty('message')) { - obj['message'] = ApiClient.convertToType(data['message'], 'String'); - } - if (data.hasOwnProperty('details')) { - obj['details'] = ApiClient.convertToType(data['details'], 'String'); - } - if (data.hasOwnProperty('seen')) { - obj['seen'] = ApiClient.convertToType(data['seen'], 'Boolean'); - } - if (data.hasOwnProperty('created_at')) { - obj['created_at'] = ApiClient.convertToType(data['created_at'], 'Date'); - } - } - return obj; - } - - -} - -/** - * @member {String} id - */ -Notification.prototype['id'] = undefined; - -/** - * @member {String} senderUserId - */ -Notification.prototype['senderUserId'] = undefined; - -/** - * @member {String} senderUsername - */ -Notification.prototype['senderUsername'] = undefined; - -/** - * @member {module:model/NotificationType} type - */ -Notification.prototype['type'] = undefined; - -/** - * - * @member {String} message - */ -Notification.prototype['message'] = undefined; - -/** - * **NOTICE:** This is not a JSON object, this is a json **encoded** object, meaning you have to json-de-encode to get the NotificationDetail object depending on the NotificationType. - * @member {String} details - * @default '{}' - */ -Notification.prototype['details'] = '{}'; - -/** - * @member {Boolean} seen - * @default false - */ -Notification.prototype['seen'] = false; - -/** - * @member {Date} created_at - */ -Notification.prototype['created_at'] = undefined; - - - - - - -export default Notification; - diff --git a/src/model/NotificationType.js b/src/model/NotificationType.js deleted file mode 100644 index 249c83a..0000000 --- a/src/model/NotificationType.js +++ /dev/null @@ -1,81 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -import ApiClient from '../ApiClient'; -/** -* Enum class NotificationType. -* @enum {} -* @readonly -*/ -export default class NotificationType { - - /** - * value: "all" - * @const - */ - "all" = "all"; - - - /** - * value: "broadcast" - * @const - */ - "broadcast" = "broadcast"; - - - /** - * value: "friendRequest" - * @const - */ - "friendRequest" = "friendRequest"; - - - /** - * value: "invite" - * @const - */ - "invite" = "invite"; - - - /** - * value: "message" - * @const - */ - "message" = "message"; - - - /** - * value: "RequestInvite" - * @const - */ - "RequestInvite" = "RequestInvite"; - - - /** - * value: "votetokick" - * @const - */ - "votetokick" = "votetokick"; - - - - /** - * Returns a NotificationType enum value from a Javascript object name. - * @param {Object} data The plain JavaScript object containing the name of the enum value. - * @return {module:model/NotificationType} The enum NotificationType value. - */ - static constructFromObject(object) { - return object; - } -} - diff --git a/src/model/ReleaseStatus.js b/src/model/ReleaseStatus.js deleted file mode 100644 index 4c1083f..0000000 --- a/src/model/ReleaseStatus.js +++ /dev/null @@ -1,53 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -import ApiClient from '../ApiClient'; -/** -* Enum class ReleaseStatus. -* @enum {} -* @readonly -*/ -export default class ReleaseStatus { - - /** - * value: "public" - * @const - */ - "public" = "public"; - - - /** - * value: "private" - * @const - */ - "private" = "private"; - - - /** - * value: "hidden" - * @const - */ - "hidden" = "hidden"; - - - - /** - * Returns a ReleaseStatus enum value from a Javascript object name. - * @param {Object} data The plain JavaScript object containing the name of the enum value. - * @return {module:model/ReleaseStatus} The enum ReleaseStatus value. - */ - static constructFromObject(object) { - return object; - } -} - diff --git a/src/model/Response.js b/src/model/Response.js deleted file mode 100644 index 6590779..0000000 --- a/src/model/Response.js +++ /dev/null @@ -1,83 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -import ApiClient from '../ApiClient'; - -/** - * The Response model module. - * @module model/Response - * @version 1.0.0 - */ -class Response { - /** - * Constructs a new Response. - * @alias module:model/Response - * @param message {String} - * @param statusCode {Number} - */ - constructor(message, statusCode) { - - Response.initialize(this, message, statusCode); - } - - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - static initialize(obj, message, statusCode) { - obj['message'] = message; - obj['status_code'] = statusCode; - } - - /** - * Constructs a Response from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/Response} obj Optional instance to populate. - * @return {module:model/Response} The populated Response instance. - */ - static constructFromObject(data, obj) { - if (data) { - obj = obj || new Response(); - - if (data.hasOwnProperty('message')) { - obj['message'] = ApiClient.convertToType(data['message'], 'String'); - } - if (data.hasOwnProperty('status_code')) { - obj['status_code'] = ApiClient.convertToType(data['status_code'], 'Number'); - } - } - return obj; - } - - -} - -/** - * @member {String} message - */ -Response.prototype['message'] = undefined; - -/** - * @member {Number} status_code - */ -Response.prototype['status_code'] = undefined; - - - - - - -export default Response; - diff --git a/src/model/Success.js b/src/model/Success.js deleted file mode 100644 index 0c990d1..0000000 --- a/src/model/Success.js +++ /dev/null @@ -1,72 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -import ApiClient from '../ApiClient'; -import Response from './Response'; - -/** - * The Success model module. - * @module model/Success - * @version 1.0.0 - */ -class Success { - /** - * Constructs a new Success. - * @alias module:model/Success - */ - constructor() { - - Success.initialize(this); - } - - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - static initialize(obj) { - } - - /** - * Constructs a Success from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/Success} obj Optional instance to populate. - * @return {module:model/Success} The populated Success instance. - */ - static constructFromObject(data, obj) { - if (data) { - obj = obj || new Success(); - - if (data.hasOwnProperty('success')) { - obj['success'] = Response.constructFromObject(data['success']); - } - } - return obj; - } - - -} - -/** - * @member {module:model/Response} success - */ -Success.prototype['success'] = undefined; - - - - - - -export default Success; - diff --git a/src/model/User.js b/src/model/User.js deleted file mode 100644 index 71fd633..0000000 --- a/src/model/User.js +++ /dev/null @@ -1,300 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -import ApiClient from '../ApiClient'; -import DeveloperType from './DeveloperType'; -import UserState from './UserState'; -import UserStatus from './UserStatus'; - -/** - * The User model module. - * @module model/User - * @version 1.0.0 - */ -class User { - /** - * Constructs a new User. - * @alias module:model/User - * @param id {String} - * @param username {String} - * @param displayName {String} - * @param userIcon {String} - * @param bio {String} - * @param bioLinks {Array.} - * @param profilePicOverride {String} - * @param statusDescription {String} - * @param currentAvatarImageUrl {String} - * @param currentAvatarThumbnailImageUrl {String} - * @param fallbackAvatar {String} - * @param state {module:model/UserState} - * @param tags {Array.} - * @param developerType {module:model/DeveloperType} - * @param lastLogin {Date} - * @param lastPlatform {String} - * @param allowAvatarCopying {Boolean} - * @param status {module:model/UserStatus} - * @param dateJoined {Date} - * @param isFriend {Boolean} - * @param friendKey {String} - */ - constructor(id, username, displayName, userIcon, bio, bioLinks, profilePicOverride, statusDescription, currentAvatarImageUrl, currentAvatarThumbnailImageUrl, fallbackAvatar, state, tags, developerType, lastLogin, lastPlatform, allowAvatarCopying, status, dateJoined, isFriend, friendKey) { - - User.initialize(this, id, username, displayName, userIcon, bio, bioLinks, profilePicOverride, statusDescription, currentAvatarImageUrl, currentAvatarThumbnailImageUrl, fallbackAvatar, state, tags, developerType, lastLogin, lastPlatform, allowAvatarCopying, status, dateJoined, isFriend, friendKey); - } - - /** - * Initializes the fields of this object. - * This method is used by the constructors of any subclasses, in order to implement multiple inheritance (mix-ins). - * Only for internal use. - */ - static initialize(obj, id, username, displayName, userIcon, bio, bioLinks, profilePicOverride, statusDescription, currentAvatarImageUrl, currentAvatarThumbnailImageUrl, fallbackAvatar, state, tags, developerType, lastLogin, lastPlatform, allowAvatarCopying, status, dateJoined, isFriend, friendKey) { - obj['id'] = id; - obj['username'] = username; - obj['displayName'] = displayName; - obj['userIcon'] = userIcon; - obj['bio'] = bio; - obj['bioLinks'] = bioLinks; - obj['profilePicOverride'] = profilePicOverride; - obj['statusDescription'] = statusDescription; - obj['currentAvatarImageUrl'] = currentAvatarImageUrl; - obj['currentAvatarThumbnailImageUrl'] = currentAvatarThumbnailImageUrl; - obj['fallbackAvatar'] = fallbackAvatar; - obj['state'] = state; - obj['tags'] = tags; - obj['developerType'] = developerType; - obj['last_login'] = lastLogin; - obj['last_platform'] = lastPlatform; - obj['allowAvatarCopying'] = allowAvatarCopying; - obj['status'] = status; - obj['date_joined'] = dateJoined; - obj['isFriend'] = isFriend; - obj['friendKey'] = friendKey; - } - - /** - * Constructs a User from a plain JavaScript object, optionally creating a new instance. - * Copies all relevant properties from data to obj if supplied or a new instance if not. - * @param {Object} data The plain JavaScript object bearing properties of interest. - * @param {module:model/User} obj Optional instance to populate. - * @return {module:model/User} The populated User instance. - */ - static constructFromObject(data, obj) { - if (data) { - obj = obj || new User(); - - if (data.hasOwnProperty('id')) { - obj['id'] = ApiClient.convertToType(data['id'], 'String'); - } - if (data.hasOwnProperty('username')) { - obj['username'] = ApiClient.convertToType(data['username'], 'String'); - } - if (data.hasOwnProperty('displayName')) { - obj['displayName'] = ApiClient.convertToType(data['displayName'], 'String'); - } - if (data.hasOwnProperty('userIcon')) { - obj['userIcon'] = ApiClient.convertToType(data['userIcon'], 'String'); - } - if (data.hasOwnProperty('bio')) { - obj['bio'] = ApiClient.convertToType(data['bio'], 'String'); - } - if (data.hasOwnProperty('bioLinks')) { - obj['bioLinks'] = ApiClient.convertToType(data['bioLinks'], ['String']); - } - if (data.hasOwnProperty('profilePicOverride')) { - obj['profilePicOverride'] = ApiClient.convertToType(data['profilePicOverride'], 'String'); - } - if (data.hasOwnProperty('statusDescription')) { - obj['statusDescription'] = ApiClient.convertToType(data['statusDescription'], 'String'); - } - if (data.hasOwnProperty('currentAvatarImageUrl')) { - obj['currentAvatarImageUrl'] = ApiClient.convertToType(data['currentAvatarImageUrl'], 'String'); - } - if (data.hasOwnProperty('currentAvatarThumbnailImageUrl')) { - obj['currentAvatarThumbnailImageUrl'] = ApiClient.convertToType(data['currentAvatarThumbnailImageUrl'], 'String'); - } - if (data.hasOwnProperty('fallbackAvatar')) { - obj['fallbackAvatar'] = ApiClient.convertToType(data['fallbackAvatar'], 'String'); - } - if (data.hasOwnProperty('state')) { - obj['state'] = UserState.constructFromObject(data['state']); - } - if (data.hasOwnProperty('tags')) { - obj['tags'] = ApiClient.convertToType(data['tags'], ['String']); - } - if (data.hasOwnProperty('developerType')) { - obj['developerType'] = DeveloperType.constructFromObject(data['developerType']); - } - if (data.hasOwnProperty('last_login')) { - obj['last_login'] = ApiClient.convertToType(data['last_login'], 'Date'); - } - if (data.hasOwnProperty('last_platform')) { - obj['last_platform'] = ApiClient.convertToType(data['last_platform'], 'String'); - } - if (data.hasOwnProperty('allowAvatarCopying')) { - obj['allowAvatarCopying'] = ApiClient.convertToType(data['allowAvatarCopying'], 'Boolean'); - } - if (data.hasOwnProperty('status')) { - obj['status'] = UserStatus.constructFromObject(data['status']); - } - if (data.hasOwnProperty('date_joined')) { - obj['date_joined'] = ApiClient.convertToType(data['date_joined'], 'Date'); - } - if (data.hasOwnProperty('isFriend')) { - obj['isFriend'] = ApiClient.convertToType(data['isFriend'], 'Boolean'); - } - if (data.hasOwnProperty('friendKey')) { - obj['friendKey'] = ApiClient.convertToType(data['friendKey'], 'String'); - } - if (data.hasOwnProperty('worldId')) { - obj['worldId'] = ApiClient.convertToType(data['worldId'], 'String'); - } - if (data.hasOwnProperty('instanceId')) { - obj['instanceId'] = ApiClient.convertToType(data['instanceId'], 'String'); - } - if (data.hasOwnProperty('location')) { - obj['location'] = ApiClient.convertToType(data['location'], 'String'); - } - } - return obj; - } - - -} - -/** - * @member {String} id - */ -User.prototype['id'] = undefined; - -/** - * @member {String} username - */ -User.prototype['username'] = undefined; - -/** - * @member {String} displayName - */ -User.prototype['displayName'] = undefined; - -/** - * @member {String} userIcon - */ -User.prototype['userIcon'] = undefined; - -/** - * @member {String} bio - */ -User.prototype['bio'] = undefined; - -/** - * @member {Array.} bioLinks - */ -User.prototype['bioLinks'] = undefined; - -/** - * @member {String} profilePicOverride - */ -User.prototype['profilePicOverride'] = undefined; - -/** - * @member {String} statusDescription - */ -User.prototype['statusDescription'] = undefined; - -/** - * @member {String} currentAvatarImageUrl - */ -User.prototype['currentAvatarImageUrl'] = undefined; - -/** - * @member {String} currentAvatarThumbnailImageUrl - */ -User.prototype['currentAvatarThumbnailImageUrl'] = undefined; - -/** - * @member {String} fallbackAvatar - */ -User.prototype['fallbackAvatar'] = undefined; - -/** - * @member {module:model/UserState} state - */ -User.prototype['state'] = undefined; - -/** - * @member {Array.} tags - */ -User.prototype['tags'] = undefined; - -/** - * @member {module:model/DeveloperType} developerType - */ -User.prototype['developerType'] = undefined; - -/** - * @member {Date} last_login - */ -User.prototype['last_login'] = undefined; - -/** - * @member {String} last_platform - */ -User.prototype['last_platform'] = undefined; - -/** - * @member {Boolean} allowAvatarCopying - */ -User.prototype['allowAvatarCopying'] = undefined; - -/** - * @member {module:model/UserStatus} status - */ -User.prototype['status'] = undefined; - -/** - * @member {Date} date_joined - */ -User.prototype['date_joined'] = undefined; - -/** - * @member {Boolean} isFriend - */ -User.prototype['isFriend'] = undefined; - -/** - * @member {String} friendKey - */ -User.prototype['friendKey'] = undefined; - -/** - * @member {String} worldId - */ -User.prototype['worldId'] = undefined; - -/** - * @member {String} instanceId - */ -User.prototype['instanceId'] = undefined; - -/** - * @member {String} location - */ -User.prototype['location'] = undefined; - - - - - - -export default User; - diff --git a/test/api/AuthenticationApi.spec.js b/test/api/AuthenticationApi.spec.js deleted file mode 100644 index 3ec9f46..0000000 --- a/test/api/AuthenticationApi.spec.js +++ /dev/null @@ -1,113 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -(function(root, factory) { - if (typeof define === 'function' && define.amd) { - // AMD. - define(['expect.js', process.cwd()+'/src/index'], factory); - } else if (typeof module === 'object' && module.exports) { - // CommonJS-like environments that support module.exports, like Node. - factory(require('expect.js'), require(process.cwd()+'/src/index')); - } else { - // Browser globals (root is window) - factory(root.expect, root.vrchatapi); - } -}(this, function(expect, vrchatapi) { - 'use strict'; - - var instance; - - beforeEach(function() { - instance = new vrchatapi.AuthenticationApi(); - }); - - var getProperty = function(object, getter, property) { - // Use getter method if present; otherwise, get the property directly. - if (typeof object[getter] === 'function') - return object[getter](); - else - return object[property]; - } - - var setProperty = function(object, setter, property, value) { - // Use setter method if present; otherwise, set the property directly. - if (typeof object[setter] === 'function') - object[setter](value); - else - object[property] = value; - } - - describe('AuthenticationApi', function() { - describe('deleteUserById', function() { - it('should call deleteUserById successfully', function(done) { - //uncomment below and update the code to test deleteUserById - //instance.deleteUserById(function(error) { - // if (error) throw error; - //expect().to.be(); - //}); - done(); - }); - }); - describe('getCurrentUser', function() { - it('should call getCurrentUser successfully', function(done) { - //uncomment below and update the code to test getCurrentUser - //instance.getCurrentUser(function(error) { - // if (error) throw error; - //expect().to.be(); - //}); - done(); - }); - }); - describe('logout', function() { - it('should call logout successfully', function(done) { - //uncomment below and update the code to test logout - //instance.logout(function(error) { - // if (error) throw error; - //expect().to.be(); - //}); - done(); - }); - }); - describe('verify2FA', function() { - it('should call verify2FA successfully', function(done) { - //uncomment below and update the code to test verify2FA - //instance.verify2FA(function(error) { - // if (error) throw error; - //expect().to.be(); - //}); - done(); - }); - }); - describe('verifyAuthToken', function() { - it('should call verifyAuthToken successfully', function(done) { - //uncomment below and update the code to test verifyAuthToken - //instance.verifyAuthToken(function(error) { - // if (error) throw error; - //expect().to.be(); - //}); - done(); - }); - }); - describe('verifyRecoveryCode', function() { - it('should call verifyRecoveryCode successfully', function(done) { - //uncomment below and update the code to test verifyRecoveryCode - //instance.verifyRecoveryCode(function(error) { - // if (error) throw error; - //expect().to.be(); - //}); - done(); - }); - }); - }); - -})); diff --git a/test/api/FilesApi.spec.js b/test/api/FilesApi.spec.js deleted file mode 100644 index d329214..0000000 --- a/test/api/FilesApi.spec.js +++ /dev/null @@ -1,153 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -(function(root, factory) { - if (typeof define === 'function' && define.amd) { - // AMD. - define(['expect.js', process.cwd()+'/src/index'], factory); - } else if (typeof module === 'object' && module.exports) { - // CommonJS-like environments that support module.exports, like Node. - factory(require('expect.js'), require(process.cwd()+'/src/index')); - } else { - // Browser globals (root is window) - factory(root.expect, root.vrchatapi); - } -}(this, function(expect, vrchatapi) { - 'use strict'; - - var instance; - - beforeEach(function() { - instance = new vrchatapi.FilesApi(); - }); - - var getProperty = function(object, getter, property) { - // Use getter method if present; otherwise, get the property directly. - if (typeof object[getter] === 'function') - return object[getter](); - else - return object[property]; - } - - var setProperty = function(object, setter, property, value) { - // Use setter method if present; otherwise, set the property directly. - if (typeof object[setter] === 'function') - object[setter](value); - else - object[property] = value; - } - - describe('FilesApi', function() { - describe('createFile', function() { - it('should call createFile successfully', function(done) { - //uncomment below and update the code to test createFile - //instance.createFile(function(error) { - // if (error) throw error; - //expect().to.be(); - //}); - done(); - }); - }); - describe('createFileVersion', function() { - it('should call createFileVersion successfully', function(done) { - //uncomment below and update the code to test createFileVersion - //instance.createFileVersion(function(error) { - // if (error) throw error; - //expect().to.be(); - //}); - done(); - }); - }); - describe('deleteFile', function() { - it('should call deleteFile successfully', function(done) { - //uncomment below and update the code to test deleteFile - //instance.deleteFile(function(error) { - // if (error) throw error; - //expect().to.be(); - //}); - done(); - }); - }); - describe('deleteFileVersion', function() { - it('should call deleteFileVersion successfully', function(done) { - //uncomment below and update the code to test deleteFileVersion - //instance.deleteFileVersion(function(error) { - // if (error) throw error; - //expect().to.be(); - //}); - done(); - }); - }); - describe('downloadFileVersion', function() { - it('should call downloadFileVersion successfully', function(done) { - //uncomment below and update the code to test downloadFileVersion - //instance.downloadFileVersion(function(error) { - // if (error) throw error; - //expect().to.be(); - //}); - done(); - }); - }); - describe('finishFileDataUpload', function() { - it('should call finishFileDataUpload successfully', function(done) { - //uncomment below and update the code to test finishFileDataUpload - //instance.finishFileDataUpload(function(error) { - // if (error) throw error; - //expect().to.be(); - //}); - done(); - }); - }); - describe('getFile', function() { - it('should call getFile successfully', function(done) { - //uncomment below and update the code to test getFile - //instance.getFile(function(error) { - // if (error) throw error; - //expect().to.be(); - //}); - done(); - }); - }); - describe('getFileDataUploadStatus', function() { - it('should call getFileDataUploadStatus successfully', function(done) { - //uncomment below and update the code to test getFileDataUploadStatus - //instance.getFileDataUploadStatus(function(error) { - // if (error) throw error; - //expect().to.be(); - //}); - done(); - }); - }); - describe('getFiles', function() { - it('should call getFiles successfully', function(done) { - //uncomment below and update the code to test getFiles - //instance.getFiles(function(error) { - // if (error) throw error; - //expect().to.be(); - //}); - done(); - }); - }); - describe('startFileDataUpload', function() { - it('should call startFileDataUpload successfully', function(done) { - //uncomment below and update the code to test startFileDataUpload - //instance.startFileDataUpload(function(error) { - // if (error) throw error; - //expect().to.be(); - //}); - done(); - }); - }); - }); - -})); diff --git a/test/api/FriendsApi.spec.js b/test/api/FriendsApi.spec.js deleted file mode 100644 index 1cf8492..0000000 --- a/test/api/FriendsApi.spec.js +++ /dev/null @@ -1,103 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -(function(root, factory) { - if (typeof define === 'function' && define.amd) { - // AMD. - define(['expect.js', process.cwd()+'/src/index'], factory); - } else if (typeof module === 'object' && module.exports) { - // CommonJS-like environments that support module.exports, like Node. - factory(require('expect.js'), require(process.cwd()+'/src/index')); - } else { - // Browser globals (root is window) - factory(root.expect, root.vrchatapi); - } -}(this, function(expect, vrchatapi) { - 'use strict'; - - var instance; - - beforeEach(function() { - instance = new vrchatapi.FriendsApi(); - }); - - var getProperty = function(object, getter, property) { - // Use getter method if present; otherwise, get the property directly. - if (typeof object[getter] === 'function') - return object[getter](); - else - return object[property]; - } - - var setProperty = function(object, setter, property, value) { - // Use setter method if present; otherwise, set the property directly. - if (typeof object[setter] === 'function') - object[setter](value); - else - object[property] = value; - } - - describe('FriendsApi', function() { - describe('deleteFriendRequest', function() { - it('should call deleteFriendRequest successfully', function(done) { - //uncomment below and update the code to test deleteFriendRequest - //instance.deleteFriendRequest(function(error) { - // if (error) throw error; - //expect().to.be(); - //}); - done(); - }); - }); - describe('friend', function() { - it('should call friend successfully', function(done) { - //uncomment below and update the code to test friend - //instance.friend(function(error) { - // if (error) throw error; - //expect().to.be(); - //}); - done(); - }); - }); - describe('getFriendStatus', function() { - it('should call getFriendStatus successfully', function(done) { - //uncomment below and update the code to test getFriendStatus - //instance.getFriendStatus(function(error) { - // if (error) throw error; - //expect().to.be(); - //}); - done(); - }); - }); - describe('getFriends', function() { - it('should call getFriends successfully', function(done) { - //uncomment below and update the code to test getFriends - //instance.getFriends(function(error) { - // if (error) throw error; - //expect().to.be(); - //}); - done(); - }); - }); - describe('unfriend', function() { - it('should call unfriend successfully', function(done) { - //uncomment below and update the code to test unfriend - //instance.unfriend(function(error) { - // if (error) throw error; - //expect().to.be(); - //}); - done(); - }); - }); - }); - -})); diff --git a/test/api/NotificationsApi.spec.js b/test/api/NotificationsApi.spec.js deleted file mode 100644 index c31f3be..0000000 --- a/test/api/NotificationsApi.spec.js +++ /dev/null @@ -1,103 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -(function(root, factory) { - if (typeof define === 'function' && define.amd) { - // AMD. - define(['expect.js', process.cwd()+'/src/index'], factory); - } else if (typeof module === 'object' && module.exports) { - // CommonJS-like environments that support module.exports, like Node. - factory(require('expect.js'), require(process.cwd()+'/src/index')); - } else { - // Browser globals (root is window) - factory(root.expect, root.vrchatapi); - } -}(this, function(expect, vrchatapi) { - 'use strict'; - - var instance; - - beforeEach(function() { - instance = new vrchatapi.NotificationsApi(); - }); - - var getProperty = function(object, getter, property) { - // Use getter method if present; otherwise, get the property directly. - if (typeof object[getter] === 'function') - return object[getter](); - else - return object[property]; - } - - var setProperty = function(object, setter, property, value) { - // Use setter method if present; otherwise, set the property directly. - if (typeof object[setter] === 'function') - object[setter](value); - else - object[property] = value; - } - - describe('NotificationsApi', function() { - describe('acceptFriendRequest', function() { - it('should call acceptFriendRequest successfully', function(done) { - //uncomment below and update the code to test acceptFriendRequest - //instance.acceptFriendRequest(function(error) { - // if (error) throw error; - //expect().to.be(); - //}); - done(); - }); - }); - describe('clearNotifications', function() { - it('should call clearNotifications successfully', function(done) { - //uncomment below and update the code to test clearNotifications - //instance.clearNotifications(function(error) { - // if (error) throw error; - //expect().to.be(); - //}); - done(); - }); - }); - describe('deleteNotification', function() { - it('should call deleteNotification successfully', function(done) { - //uncomment below and update the code to test deleteNotification - //instance.deleteNotification(function(error) { - // if (error) throw error; - //expect().to.be(); - //}); - done(); - }); - }); - describe('getNotifications', function() { - it('should call getNotifications successfully', function(done) { - //uncomment below and update the code to test getNotifications - //instance.getNotifications(function(error) { - // if (error) throw error; - //expect().to.be(); - //}); - done(); - }); - }); - describe('markNotificationAsRead', function() { - it('should call markNotificationAsRead successfully', function(done) { - //uncomment below and update the code to test markNotificationAsRead - //instance.markNotificationAsRead(function(error) { - // if (error) throw error; - //expect().to.be(); - //}); - done(); - }); - }); - }); - -})); diff --git a/test/api/SystemApi.spec.js b/test/api/SystemApi.spec.js deleted file mode 100644 index 055e9dd..0000000 --- a/test/api/SystemApi.spec.js +++ /dev/null @@ -1,93 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -(function(root, factory) { - if (typeof define === 'function' && define.amd) { - // AMD. - define(['expect.js', process.cwd()+'/src/index'], factory); - } else if (typeof module === 'object' && module.exports) { - // CommonJS-like environments that support module.exports, like Node. - factory(require('expect.js'), require(process.cwd()+'/src/index')); - } else { - // Browser globals (root is window) - factory(root.expect, root.vrchatapi); - } -}(this, function(expect, vrchatapi) { - 'use strict'; - - var instance; - - beforeEach(function() { - instance = new vrchatapi.SystemApi(); - }); - - var getProperty = function(object, getter, property) { - // Use getter method if present; otherwise, get the property directly. - if (typeof object[getter] === 'function') - return object[getter](); - else - return object[property]; - } - - var setProperty = function(object, setter, property, value) { - // Use setter method if present; otherwise, set the property directly. - if (typeof object[setter] === 'function') - object[setter](value); - else - object[property] = value; - } - - describe('SystemApi', function() { - describe('getConfig', function() { - it('should call getConfig successfully', function(done) { - //uncomment below and update the code to test getConfig - //instance.getConfig(function(error) { - // if (error) throw error; - //expect().to.be(); - //}); - done(); - }); - }); - describe('getCurrentOnlineUsers', function() { - it('should call getCurrentOnlineUsers successfully', function(done) { - //uncomment below and update the code to test getCurrentOnlineUsers - //instance.getCurrentOnlineUsers(function(error) { - // if (error) throw error; - //expect().to.be(); - //}); - done(); - }); - }); - describe('getHealth', function() { - it('should call getHealth successfully', function(done) { - //uncomment below and update the code to test getHealth - //instance.getHealth(function(error) { - // if (error) throw error; - //expect().to.be(); - //}); - done(); - }); - }); - describe('getSystemTime', function() { - it('should call getSystemTime successfully', function(done) { - //uncomment below and update the code to test getSystemTime - //instance.getSystemTime(function(error) { - // if (error) throw error; - //expect().to.be(); - //}); - done(); - }); - }); - }); - -})); diff --git a/test/api/UsersApi.spec.js b/test/api/UsersApi.spec.js deleted file mode 100644 index f206516..0000000 --- a/test/api/UsersApi.spec.js +++ /dev/null @@ -1,103 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -(function(root, factory) { - if (typeof define === 'function' && define.amd) { - // AMD. - define(['expect.js', process.cwd()+'/src/index'], factory); - } else if (typeof module === 'object' && module.exports) { - // CommonJS-like environments that support module.exports, like Node. - factory(require('expect.js'), require(process.cwd()+'/src/index')); - } else { - // Browser globals (root is window) - factory(root.expect, root.vrchatapi); - } -}(this, function(expect, vrchatapi) { - 'use strict'; - - var instance; - - beforeEach(function() { - instance = new vrchatapi.UsersApi(); - }); - - var getProperty = function(object, getter, property) { - // Use getter method if present; otherwise, get the property directly. - if (typeof object[getter] === 'function') - return object[getter](); - else - return object[property]; - } - - var setProperty = function(object, setter, property, value) { - // Use setter method if present; otherwise, set the property directly. - if (typeof object[setter] === 'function') - object[setter](value); - else - object[property] = value; - } - - describe('UsersApi', function() { - describe('getUser', function() { - it('should call getUser successfully', function(done) { - //uncomment below and update the code to test getUser - //instance.getUser(function(error) { - // if (error) throw error; - //expect().to.be(); - //}); - done(); - }); - }); - describe('getUserByName', function() { - it('should call getUserByName successfully', function(done) { - //uncomment below and update the code to test getUserByName - //instance.getUserByName(function(error) { - // if (error) throw error; - //expect().to.be(); - //}); - done(); - }); - }); - describe('searchActiveUsers', function() { - it('should call searchActiveUsers successfully', function(done) { - //uncomment below and update the code to test searchActiveUsers - //instance.searchActiveUsers(function(error) { - // if (error) throw error; - //expect().to.be(); - //}); - done(); - }); - }); - describe('searchUsers', function() { - it('should call searchUsers successfully', function(done) { - //uncomment below and update the code to test searchUsers - //instance.searchUsers(function(error) { - // if (error) throw error; - //expect().to.be(); - //}); - done(); - }); - }); - describe('updateUser', function() { - it('should call updateUser successfully', function(done) { - //uncomment below and update the code to test updateUser - //instance.updateUser(function(error) { - // if (error) throw error; - //expect().to.be(); - //}); - done(); - }); - }); - }); - -})); diff --git a/test/api/WorldsApi.spec.js b/test/api/WorldsApi.spec.js deleted file mode 100644 index 67413cb..0000000 --- a/test/api/WorldsApi.spec.js +++ /dev/null @@ -1,63 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -(function(root, factory) { - if (typeof define === 'function' && define.amd) { - // AMD. - define(['expect.js', process.cwd()+'/src/index'], factory); - } else if (typeof module === 'object' && module.exports) { - // CommonJS-like environments that support module.exports, like Node. - factory(require('expect.js'), require(process.cwd()+'/src/index')); - } else { - // Browser globals (root is window) - factory(root.expect, root.vrchatapi); - } -}(this, function(expect, vrchatapi) { - 'use strict'; - - var instance; - - beforeEach(function() { - instance = new vrchatapi.WorldsApi(); - }); - - var getProperty = function(object, getter, property) { - // Use getter method if present; otherwise, get the property directly. - if (typeof object[getter] === 'function') - return object[getter](); - else - return object[property]; - } - - var setProperty = function(object, setter, property, value) { - // Use setter method if present; otherwise, set the property directly. - if (typeof object[setter] === 'function') - object[setter](value); - else - object[property] = value; - } - - describe('WorldsApi', function() { - describe('searchWorlds', function() { - it('should call searchWorlds successfully', function(done) { - //uncomment below and update the code to test searchWorlds - //instance.searchWorlds(function(error) { - // if (error) throw error; - //expect().to.be(); - //}); - done(); - }); - }); - }); - -})); diff --git a/test/model/Config.spec.js b/test/model/Config.spec.js deleted file mode 100644 index ad3a73c..0000000 --- a/test/model/Config.spec.js +++ /dev/null @@ -1,509 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -(function(root, factory) { - if (typeof define === 'function' && define.amd) { - // AMD. - define(['expect.js', process.cwd()+'/src/index'], factory); - } else if (typeof module === 'object' && module.exports) { - // CommonJS-like environments that support module.exports, like Node. - factory(require('expect.js'), require(process.cwd()+'/src/index')); - } else { - // Browser globals (root is window) - factory(root.expect, root.vrchatapi); - } -}(this, function(expect, vrchatapi) { - 'use strict'; - - var instance; - - beforeEach(function() { - instance = new vrchatapi.Config(); - }); - - var getProperty = function(object, getter, property) { - // Use getter method if present; otherwise, get the property directly. - if (typeof object[getter] === 'function') - return object[getter](); - else - return object[property]; - } - - var setProperty = function(object, setter, property, value) { - // Use setter method if present; otherwise, set the property directly. - if (typeof object[setter] === 'function') - object[setter](value); - else - object[property] = value; - } - - describe('Config', function() { - it('should create an instance of Config', function() { - // uncomment below and update the code to test Config - //var instane = new vrchatapi.Config(); - //expect(instance).to.be.a(vrchatapi.Config); - }); - - it('should have the property address (base name: "address")', function() { - // uncomment below and update the code to test the property address - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property announcements (base name: "announcements")', function() { - // uncomment below and update the code to test the property announcements - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property apiKey (base name: "apiKey")', function() { - // uncomment below and update the code to test the property apiKey - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property appName (base name: "appName")', function() { - // uncomment below and update the code to test the property appName - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property buildVersionTag (base name: "buildVersionTag")', function() { - // uncomment below and update the code to test the property buildVersionTag - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property clientApiKey (base name: "clientApiKey")', function() { - // uncomment below and update the code to test the property clientApiKey - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property clientBPSCeiling (base name: "clientBPSCeiling")', function() { - // uncomment below and update the code to test the property clientBPSCeiling - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property clientDisconnectTimeout (base name: "clientDisconnectTimeout")', function() { - // uncomment below and update the code to test the property clientDisconnectTimeout - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property clientReservedPlayerBPS (base name: "clientReservedPlayerBPS")', function() { - // uncomment below and update the code to test the property clientReservedPlayerBPS - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property clientSentCountAllowance (base name: "clientSentCountAllowance")', function() { - // uncomment below and update the code to test the property clientSentCountAllowance - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property contactEmail (base name: "contactEmail")', function() { - // uncomment below and update the code to test the property contactEmail - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property copyrightEmail (base name: "copyrightEmail")', function() { - // uncomment below and update the code to test the property copyrightEmail - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property currentTOSVersion (base name: "currentTOSVersion")', function() { - // uncomment below and update the code to test the property currentTOSVersion - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property defaultAvatar (base name: "defaultAvatar")', function() { - // uncomment below and update the code to test the property defaultAvatar - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property deploymentGroup (base name: "deploymentGroup")', function() { - // uncomment below and update the code to test the property deploymentGroup - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property devAppVersionStandalone (base name: "devAppVersionStandalone")', function() { - // uncomment below and update the code to test the property devAppVersionStandalone - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property devDownloadLinkWindows (base name: "devDownloadLinkWindows")', function() { - // uncomment below and update the code to test the property devDownloadLinkWindows - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property devSdkUrl (base name: "devSdkUrl")', function() { - // uncomment below and update the code to test the property devSdkUrl - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property devSdkVersion (base name: "devSdkVersion")', function() { - // uncomment below and update the code to test the property devSdkVersion - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property devServerVersionStandalone (base name: "devServerVersionStandalone")', function() { - // uncomment below and update the code to test the property devServerVersionStandalone - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property disableAvatarCopying (base name: "disableAvatarCopying")', function() { - // uncomment below and update the code to test the property disableAvatarCopying - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property disableAvatarGating (base name: "disableAvatarGating")', function() { - // uncomment below and update the code to test the property disableAvatarGating - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property disableCommunityLabs (base name: "disableCommunityLabs")', function() { - // uncomment below and update the code to test the property disableCommunityLabs - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property disableCommunityLabsPromotion (base name: "disableCommunityLabsPromotion")', function() { - // uncomment below and update the code to test the property disableCommunityLabsPromotion - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property disableEmail (base name: "disableEmail")', function() { - // uncomment below and update the code to test the property disableEmail - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property disableEventStream (base name: "disableEventStream")', function() { - // uncomment below and update the code to test the property disableEventStream - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property disableFeedbackGating (base name: "disableFeedbackGating")', function() { - // uncomment below and update the code to test the property disableFeedbackGating - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property disableHello (base name: "disableHello")', function() { - // uncomment below and update the code to test the property disableHello - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property disableRegistration (base name: "disableRegistration")', function() { - // uncomment below and update the code to test the property disableRegistration - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property disableSteamNetworking (base name: "disableSteamNetworking")', function() { - // uncomment below and update the code to test the property disableSteamNetworking - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property disableTwoFactorAuth (base name: "disableTwoFactorAuth")', function() { - // uncomment below and update the code to test the property disableTwoFactorAuth - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property disableUdon (base name: "disableUdon")', function() { - // uncomment below and update the code to test the property disableUdon - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property disableUpgradeAccount (base name: "disableUpgradeAccount")', function() { - // uncomment below and update the code to test the property disableUpgradeAccount - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property downloadLinkWindows (base name: "downloadLinkWindows")', function() { - // uncomment below and update the code to test the property downloadLinkWindows - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property downloadUrls (base name: "downloadUrls")', function() { - // uncomment below and update the code to test the property downloadUrls - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property dynamicWorldRows (base name: "dynamicWorldRows")', function() { - // uncomment below and update the code to test the property dynamicWorldRows - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property events (base name: "events")', function() { - // uncomment below and update the code to test the property events - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property gearDemoRoomId (base name: "gearDemoRoomId")', function() { - // uncomment below and update the code to test the property gearDemoRoomId - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property homepageRedirectTarget (base name: "homepageRedirectTarget")', function() { - // uncomment below and update the code to test the property homepageRedirectTarget - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property homeWorldId (base name: "homeWorldId")', function() { - // uncomment below and update the code to test the property homeWorldId - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property hubWorldId (base name: "hubWorldId")', function() { - // uncomment below and update the code to test the property hubWorldId - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property jobsEmail (base name: "jobsEmail")', function() { - // uncomment below and update the code to test the property jobsEmail - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property messageOfTheDay (base name: "messageOfTheDay")', function() { - // uncomment below and update the code to test the property messageOfTheDay - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property moderationEmail (base name: "moderationEmail")', function() { - // uncomment below and update the code to test the property moderationEmail - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property moderationQueryPeriod (base name: "moderationQueryPeriod")', function() { - // uncomment below and update the code to test the property moderationQueryPeriod - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property notAllowedToSelectAvatarInPrivateWorldMessage (base name: "notAllowedToSelectAvatarInPrivateWorldMessage")', function() { - // uncomment below and update the code to test the property notAllowedToSelectAvatarInPrivateWorldMessage - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property plugin (base name: "plugin")', function() { - // uncomment below and update the code to test the property plugin - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property releaseAppVersionStandalone (base name: "releaseAppVersionStandalone")', function() { - // uncomment below and update the code to test the property releaseAppVersionStandalone - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property releaseSdkUrl (base name: "releaseSdkUrl")', function() { - // uncomment below and update the code to test the property releaseSdkUrl - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property releaseSdkVersion (base name: "releaseSdkVersion")', function() { - // uncomment below and update the code to test the property releaseSdkVersion - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property releaseServerVersionStandalone (base name: "releaseServerVersionStandalone")', function() { - // uncomment below and update the code to test the property releaseServerVersionStandalone - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property sdkDeveloperFaqUrl (base name: "sdkDeveloperFaqUrl")', function() { - // uncomment below and update the code to test the property sdkDeveloperFaqUrl - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property sdkDiscordUrl (base name: "sdkDiscordUrl")', function() { - // uncomment below and update the code to test the property sdkDiscordUrl - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property sdkNotAllowedToPublishMessage (base name: "sdkNotAllowedToPublishMessage")', function() { - // uncomment below and update the code to test the property sdkNotAllowedToPublishMessage - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property sdkUnityVersion (base name: "sdkUnityVersion")', function() { - // uncomment below and update the code to test the property sdkUnityVersion - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property serverName (base name: "serverName")', function() { - // uncomment below and update the code to test the property serverName - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property supportEmail (base name: "supportEmail")', function() { - // uncomment below and update the code to test the property supportEmail - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property timeOutWorldId (base name: "timeOutWorldId")', function() { - // uncomment below and update the code to test the property timeOutWorldId - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property tutorialWorldId (base name: "tutorialWorldId")', function() { - // uncomment below and update the code to test the property tutorialWorldId - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property updateRateMsMaximum (base name: "updateRateMsMaximum")', function() { - // uncomment below and update the code to test the property updateRateMsMaximum - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property updateRateMsMinimum (base name: "updateRateMsMinimum")', function() { - // uncomment below and update the code to test the property updateRateMsMinimum - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property updateRateMsNormal (base name: "updateRateMsNormal")', function() { - // uncomment below and update the code to test the property updateRateMsNormal - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property updateRateMsUdonManual (base name: "updateRateMsUdonManual")', function() { - // uncomment below and update the code to test the property updateRateMsUdonManual - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property uploadAnalysisPercent (base name: "uploadAnalysisPercent")', function() { - // uncomment below and update the code to test the property uploadAnalysisPercent - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property urlList (base name: "urlList")', function() { - // uncomment below and update the code to test the property urlList - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property useReliableUdpForVoice (base name: "useReliableUdpForVoice")', function() { - // uncomment below and update the code to test the property useReliableUdpForVoice - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property userUpdatePeriod (base name: "userUpdatePeriod")', function() { - // uncomment below and update the code to test the property userUpdatePeriod - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property userVerificationDelay (base name: "userVerificationDelay")', function() { - // uncomment below and update the code to test the property userVerificationDelay - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property userVerificationRetry (base name: "userVerificationRetry")', function() { - // uncomment below and update the code to test the property userVerificationRetry - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property userVerificationTimeout (base name: "userVerificationTimeout")', function() { - // uncomment below and update the code to test the property userVerificationTimeout - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property viveWindowsUrl (base name: "viveWindowsUrl")', function() { - // uncomment below and update the code to test the property viveWindowsUrl - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property whiteListedAssetUrls (base name: "whiteListedAssetUrls")', function() { - // uncomment below and update the code to test the property whiteListedAssetUrls - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property worldUpdatePeriod (base name: "worldUpdatePeriod")', function() { - // uncomment below and update the code to test the property worldUpdatePeriod - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property youtubedlHash (base name: "youtubedl-hash")', function() { - // uncomment below and update the code to test the property youtubedlHash - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - it('should have the property youtubedlVersion (base name: "youtubedl-version")', function() { - // uncomment below and update the code to test the property youtubedlVersion - //var instance = new vrchatapi.Config(); - //expect(instance).to.be(); - }); - - }); - -})); diff --git a/test/model/ConfigAnnouncements.spec.js b/test/model/ConfigAnnouncements.spec.js deleted file mode 100644 index 25dbc53..0000000 --- a/test/model/ConfigAnnouncements.spec.js +++ /dev/null @@ -1,71 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -(function(root, factory) { - if (typeof define === 'function' && define.amd) { - // AMD. - define(['expect.js', process.cwd()+'/src/index'], factory); - } else if (typeof module === 'object' && module.exports) { - // CommonJS-like environments that support module.exports, like Node. - factory(require('expect.js'), require(process.cwd()+'/src/index')); - } else { - // Browser globals (root is window) - factory(root.expect, root.vrchatapi); - } -}(this, function(expect, vrchatapi) { - 'use strict'; - - var instance; - - beforeEach(function() { - instance = new vrchatapi.ConfigAnnouncements(); - }); - - var getProperty = function(object, getter, property) { - // Use getter method if present; otherwise, get the property directly. - if (typeof object[getter] === 'function') - return object[getter](); - else - return object[property]; - } - - var setProperty = function(object, setter, property, value) { - // Use setter method if present; otherwise, set the property directly. - if (typeof object[setter] === 'function') - object[setter](value); - else - object[property] = value; - } - - describe('ConfigAnnouncements', function() { - it('should create an instance of ConfigAnnouncements', function() { - // uncomment below and update the code to test ConfigAnnouncements - //var instane = new vrchatapi.ConfigAnnouncements(); - //expect(instance).to.be.a(vrchatapi.ConfigAnnouncements); - }); - - it('should have the property name (base name: "name")', function() { - // uncomment below and update the code to test the property name - //var instance = new vrchatapi.ConfigAnnouncements(); - //expect(instance).to.be(); - }); - - it('should have the property text (base name: "text")', function() { - // uncomment below and update the code to test the property text - //var instance = new vrchatapi.ConfigAnnouncements(); - //expect(instance).to.be(); - }); - - }); - -})); diff --git a/test/model/ConfigDownloadUrls.spec.js b/test/model/ConfigDownloadUrls.spec.js deleted file mode 100644 index c5fe1d5..0000000 --- a/test/model/ConfigDownloadUrls.spec.js +++ /dev/null @@ -1,77 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -(function(root, factory) { - if (typeof define === 'function' && define.amd) { - // AMD. - define(['expect.js', process.cwd()+'/src/index'], factory); - } else if (typeof module === 'object' && module.exports) { - // CommonJS-like environments that support module.exports, like Node. - factory(require('expect.js'), require(process.cwd()+'/src/index')); - } else { - // Browser globals (root is window) - factory(root.expect, root.vrchatapi); - } -}(this, function(expect, vrchatapi) { - 'use strict'; - - var instance; - - beforeEach(function() { - instance = new vrchatapi.ConfigDownloadUrls(); - }); - - var getProperty = function(object, getter, property) { - // Use getter method if present; otherwise, get the property directly. - if (typeof object[getter] === 'function') - return object[getter](); - else - return object[property]; - } - - var setProperty = function(object, setter, property, value) { - // Use setter method if present; otherwise, set the property directly. - if (typeof object[setter] === 'function') - object[setter](value); - else - object[property] = value; - } - - describe('ConfigDownloadUrls', function() { - it('should create an instance of ConfigDownloadUrls', function() { - // uncomment below and update the code to test ConfigDownloadUrls - //var instane = new vrchatapi.ConfigDownloadUrls(); - //expect(instance).to.be.a(vrchatapi.ConfigDownloadUrls); - }); - - it('should have the property sdk2 (base name: "sdk2")', function() { - // uncomment below and update the code to test the property sdk2 - //var instance = new vrchatapi.ConfigDownloadUrls(); - //expect(instance).to.be(); - }); - - it('should have the property sdk3Avatars (base name: "sdk3-avatars")', function() { - // uncomment below and update the code to test the property sdk3Avatars - //var instance = new vrchatapi.ConfigDownloadUrls(); - //expect(instance).to.be(); - }); - - it('should have the property sdk3Worlds (base name: "sdk3-worlds")', function() { - // uncomment below and update the code to test the property sdk3Worlds - //var instance = new vrchatapi.ConfigDownloadUrls(); - //expect(instance).to.be(); - }); - - }); - -})); diff --git a/test/model/ConfigDynamicWorldRows.spec.js b/test/model/ConfigDynamicWorldRows.spec.js deleted file mode 100644 index 2d2871c..0000000 --- a/test/model/ConfigDynamicWorldRows.spec.js +++ /dev/null @@ -1,101 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -(function(root, factory) { - if (typeof define === 'function' && define.amd) { - // AMD. - define(['expect.js', process.cwd()+'/src/index'], factory); - } else if (typeof module === 'object' && module.exports) { - // CommonJS-like environments that support module.exports, like Node. - factory(require('expect.js'), require(process.cwd()+'/src/index')); - } else { - // Browser globals (root is window) - factory(root.expect, root.vrchatapi); - } -}(this, function(expect, vrchatapi) { - 'use strict'; - - var instance; - - beforeEach(function() { - instance = new vrchatapi.ConfigDynamicWorldRows(); - }); - - var getProperty = function(object, getter, property) { - // Use getter method if present; otherwise, get the property directly. - if (typeof object[getter] === 'function') - return object[getter](); - else - return object[property]; - } - - var setProperty = function(object, setter, property, value) { - // Use setter method if present; otherwise, set the property directly. - if (typeof object[setter] === 'function') - object[setter](value); - else - object[property] = value; - } - - describe('ConfigDynamicWorldRows', function() { - it('should create an instance of ConfigDynamicWorldRows', function() { - // uncomment below and update the code to test ConfigDynamicWorldRows - //var instane = new vrchatapi.ConfigDynamicWorldRows(); - //expect(instance).to.be.a(vrchatapi.ConfigDynamicWorldRows); - }); - - it('should have the property index (base name: "index")', function() { - // uncomment below and update the code to test the property index - //var instance = new vrchatapi.ConfigDynamicWorldRows(); - //expect(instance).to.be(); - }); - - it('should have the property name (base name: "name")', function() { - // uncomment below and update the code to test the property name - //var instance = new vrchatapi.ConfigDynamicWorldRows(); - //expect(instance).to.be(); - }); - - it('should have the property platform (base name: "platform")', function() { - // uncomment below and update the code to test the property platform - //var instance = new vrchatapi.ConfigDynamicWorldRows(); - //expect(instance).to.be(); - }); - - it('should have the property sortHeading (base name: "sortHeading")', function() { - // uncomment below and update the code to test the property sortHeading - //var instance = new vrchatapi.ConfigDynamicWorldRows(); - //expect(instance).to.be(); - }); - - it('should have the property sortOrder (base name: "sortOrder")', function() { - // uncomment below and update the code to test the property sortOrder - //var instance = new vrchatapi.ConfigDynamicWorldRows(); - //expect(instance).to.be(); - }); - - it('should have the property sortOwnership (base name: "sortOwnership")', function() { - // uncomment below and update the code to test the property sortOwnership - //var instance = new vrchatapi.ConfigDynamicWorldRows(); - //expect(instance).to.be(); - }); - - it('should have the property tag (base name: "tag")', function() { - // uncomment below and update the code to test the property tag - //var instance = new vrchatapi.ConfigDynamicWorldRows(); - //expect(instance).to.be(); - }); - - }); - -})); diff --git a/test/model/ConfigEvents.spec.js b/test/model/ConfigEvents.spec.js deleted file mode 100644 index ef7f3d2..0000000 --- a/test/model/ConfigEvents.spec.js +++ /dev/null @@ -1,119 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -(function(root, factory) { - if (typeof define === 'function' && define.amd) { - // AMD. - define(['expect.js', process.cwd()+'/src/index'], factory); - } else if (typeof module === 'object' && module.exports) { - // CommonJS-like environments that support module.exports, like Node. - factory(require('expect.js'), require(process.cwd()+'/src/index')); - } else { - // Browser globals (root is window) - factory(root.expect, root.vrchatapi); - } -}(this, function(expect, vrchatapi) { - 'use strict'; - - var instance; - - beforeEach(function() { - instance = new vrchatapi.ConfigEvents(); - }); - - var getProperty = function(object, getter, property) { - // Use getter method if present; otherwise, get the property directly. - if (typeof object[getter] === 'function') - return object[getter](); - else - return object[property]; - } - - var setProperty = function(object, setter, property, value) { - // Use setter method if present; otherwise, set the property directly. - if (typeof object[setter] === 'function') - object[setter](value); - else - object[property] = value; - } - - describe('ConfigEvents', function() { - it('should create an instance of ConfigEvents', function() { - // uncomment below and update the code to test ConfigEvents - //var instane = new vrchatapi.ConfigEvents(); - //expect(instance).to.be.a(vrchatapi.ConfigEvents); - }); - - it('should have the property distanceClose (base name: "distanceClose")', function() { - // uncomment below and update the code to test the property distanceClose - //var instance = new vrchatapi.ConfigEvents(); - //expect(instance).to.be(); - }); - - it('should have the property distanceFactor (base name: "distanceFactor")', function() { - // uncomment below and update the code to test the property distanceFactor - //var instance = new vrchatapi.ConfigEvents(); - //expect(instance).to.be(); - }); - - it('should have the property distanceFar (base name: "distanceFar")', function() { - // uncomment below and update the code to test the property distanceFar - //var instance = new vrchatapi.ConfigEvents(); - //expect(instance).to.be(); - }); - - it('should have the property groupDistance (base name: "groupDistance")', function() { - // uncomment below and update the code to test the property groupDistance - //var instance = new vrchatapi.ConfigEvents(); - //expect(instance).to.be(); - }); - - it('should have the property maximumBunchSize (base name: "maximumBunchSize")', function() { - // uncomment below and update the code to test the property maximumBunchSize - //var instance = new vrchatapi.ConfigEvents(); - //expect(instance).to.be(); - }); - - it('should have the property notVisibleFactor (base name: "notVisibleFactor")', function() { - // uncomment below and update the code to test the property notVisibleFactor - //var instance = new vrchatapi.ConfigEvents(); - //expect(instance).to.be(); - }); - - it('should have the property playerOrderBucketSize (base name: "playerOrderBucketSize")', function() { - // uncomment below and update the code to test the property playerOrderBucketSize - //var instance = new vrchatapi.ConfigEvents(); - //expect(instance).to.be(); - }); - - it('should have the property playerOrderFactor (base name: "playerOrderFactor")', function() { - // uncomment below and update the code to test the property playerOrderFactor - //var instance = new vrchatapi.ConfigEvents(); - //expect(instance).to.be(); - }); - - it('should have the property slowUpdateFactorThreshold (base name: "slowUpdateFactorThreshold")', function() { - // uncomment below and update the code to test the property slowUpdateFactorThreshold - //var instance = new vrchatapi.ConfigEvents(); - //expect(instance).to.be(); - }); - - it('should have the property viewSegmentLength (base name: "viewSegmentLength")', function() { - // uncomment below and update the code to test the property viewSegmentLength - //var instance = new vrchatapi.ConfigEvents(); - //expect(instance).to.be(); - }); - - }); - -})); diff --git a/test/model/CurrentUser.spec.js b/test/model/CurrentUser.spec.js deleted file mode 100644 index a2b2883..0000000 --- a/test/model/CurrentUser.spec.js +++ /dev/null @@ -1,335 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -(function(root, factory) { - if (typeof define === 'function' && define.amd) { - // AMD. - define(['expect.js', process.cwd()+'/src/index'], factory); - } else if (typeof module === 'object' && module.exports) { - // CommonJS-like environments that support module.exports, like Node. - factory(require('expect.js'), require(process.cwd()+'/src/index')); - } else { - // Browser globals (root is window) - factory(root.expect, root.vrchatapi); - } -}(this, function(expect, vrchatapi) { - 'use strict'; - - var instance; - - beforeEach(function() { - instance = new vrchatapi.CurrentUser(); - }); - - var getProperty = function(object, getter, property) { - // Use getter method if present; otherwise, get the property directly. - if (typeof object[getter] === 'function') - return object[getter](); - else - return object[property]; - } - - var setProperty = function(object, setter, property, value) { - // Use setter method if present; otherwise, set the property directly. - if (typeof object[setter] === 'function') - object[setter](value); - else - object[property] = value; - } - - describe('CurrentUser', function() { - it('should create an instance of CurrentUser', function() { - // uncomment below and update the code to test CurrentUser - //var instane = new vrchatapi.CurrentUser(); - //expect(instance).to.be.a(vrchatapi.CurrentUser); - }); - - it('should have the property id (base name: "id")', function() { - // uncomment below and update the code to test the property id - //var instance = new vrchatapi.CurrentUser(); - //expect(instance).to.be(); - }); - - it('should have the property username (base name: "username")', function() { - // uncomment below and update the code to test the property username - //var instance = new vrchatapi.CurrentUser(); - //expect(instance).to.be(); - }); - - it('should have the property displayName (base name: "displayName")', function() { - // uncomment below and update the code to test the property displayName - //var instance = new vrchatapi.CurrentUser(); - //expect(instance).to.be(); - }); - - it('should have the property userIcon (base name: "userIcon")', function() { - // uncomment below and update the code to test the property userIcon - //var instance = new vrchatapi.CurrentUser(); - //expect(instance).to.be(); - }); - - it('should have the property bio (base name: "bio")', function() { - // uncomment below and update the code to test the property bio - //var instance = new vrchatapi.CurrentUser(); - //expect(instance).to.be(); - }); - - it('should have the property bioLinks (base name: "bioLinks")', function() { - // uncomment below and update the code to test the property bioLinks - //var instance = new vrchatapi.CurrentUser(); - //expect(instance).to.be(); - }); - - it('should have the property profilePicOverride (base name: "profilePicOverride")', function() { - // uncomment below and update the code to test the property profilePicOverride - //var instance = new vrchatapi.CurrentUser(); - //expect(instance).to.be(); - }); - - it('should have the property statusDescription (base name: "statusDescription")', function() { - // uncomment below and update the code to test the property statusDescription - //var instance = new vrchatapi.CurrentUser(); - //expect(instance).to.be(); - }); - - it('should have the property pastDisplayNames (base name: "pastDisplayNames")', function() { - // uncomment below and update the code to test the property pastDisplayNames - //var instance = new vrchatapi.CurrentUser(); - //expect(instance).to.be(); - }); - - it('should have the property hasEmail (base name: "hasEmail")', function() { - // uncomment below and update the code to test the property hasEmail - //var instance = new vrchatapi.CurrentUser(); - //expect(instance).to.be(); - }); - - it('should have the property hasPendingEmail (base name: "hasPendingEmail")', function() { - // uncomment below and update the code to test the property hasPendingEmail - //var instance = new vrchatapi.CurrentUser(); - //expect(instance).to.be(); - }); - - it('should have the property obfuscatedEmail (base name: "obfuscatedEmail")', function() { - // uncomment below and update the code to test the property obfuscatedEmail - //var instance = new vrchatapi.CurrentUser(); - //expect(instance).to.be(); - }); - - it('should have the property obfuscatedPendingEmail (base name: "obfuscatedPendingEmail")', function() { - // uncomment below and update the code to test the property obfuscatedPendingEmail - //var instance = new vrchatapi.CurrentUser(); - //expect(instance).to.be(); - }); - - it('should have the property emailVerified (base name: "emailVerified")', function() { - // uncomment below and update the code to test the property emailVerified - //var instance = new vrchatapi.CurrentUser(); - //expect(instance).to.be(); - }); - - it('should have the property hasBirthday (base name: "hasBirthday")', function() { - // uncomment below and update the code to test the property hasBirthday - //var instance = new vrchatapi.CurrentUser(); - //expect(instance).to.be(); - }); - - it('should have the property unsubscribe (base name: "unsubscribe")', function() { - // uncomment below and update the code to test the property unsubscribe - //var instance = new vrchatapi.CurrentUser(); - //expect(instance).to.be(); - }); - - it('should have the property statusHistory (base name: "statusHistory")', function() { - // uncomment below and update the code to test the property statusHistory - //var instance = new vrchatapi.CurrentUser(); - //expect(instance).to.be(); - }); - - it('should have the property statusFirstTime (base name: "statusFirstTime")', function() { - // uncomment below and update the code to test the property statusFirstTime - //var instance = new vrchatapi.CurrentUser(); - //expect(instance).to.be(); - }); - - it('should have the property friends (base name: "friends")', function() { - // uncomment below and update the code to test the property friends - //var instance = new vrchatapi.CurrentUser(); - //expect(instance).to.be(); - }); - - it('should have the property friendGroupNames (base name: "friendGroupNames")', function() { - // uncomment below and update the code to test the property friendGroupNames - //var instance = new vrchatapi.CurrentUser(); - //expect(instance).to.be(); - }); - - it('should have the property currentAvatarImageUrl (base name: "currentAvatarImageUrl")', function() { - // uncomment below and update the code to test the property currentAvatarImageUrl - //var instance = new vrchatapi.CurrentUser(); - //expect(instance).to.be(); - }); - - it('should have the property currentAvatarThumbnailImageUrl (base name: "currentAvatarThumbnailImageUrl")', function() { - // uncomment below and update the code to test the property currentAvatarThumbnailImageUrl - //var instance = new vrchatapi.CurrentUser(); - //expect(instance).to.be(); - }); - - it('should have the property fallbackAvatar (base name: "fallbackAvatar")', function() { - // uncomment below and update the code to test the property fallbackAvatar - //var instance = new vrchatapi.CurrentUser(); - //expect(instance).to.be(); - }); - - it('should have the property currentAvatar (base name: "currentAvatar")', function() { - // uncomment below and update the code to test the property currentAvatar - //var instance = new vrchatapi.CurrentUser(); - //expect(instance).to.be(); - }); - - it('should have the property currentAvatarAssetUrl (base name: "currentAvatarAssetUrl")', function() { - // uncomment below and update the code to test the property currentAvatarAssetUrl - //var instance = new vrchatapi.CurrentUser(); - //expect(instance).to.be(); - }); - - it('should have the property accountDeletionDate (base name: "accountDeletionDate")', function() { - // uncomment below and update the code to test the property accountDeletionDate - //var instance = new vrchatapi.CurrentUser(); - //expect(instance).to.be(); - }); - - it('should have the property acceptedTOSVersion (base name: "acceptedTOSVersion")', function() { - // uncomment below and update the code to test the property acceptedTOSVersion - //var instance = new vrchatapi.CurrentUser(); - //expect(instance).to.be(); - }); - - it('should have the property steamId (base name: "steamId")', function() { - // uncomment below and update the code to test the property steamId - //var instance = new vrchatapi.CurrentUser(); - //expect(instance).to.be(); - }); - - it('should have the property steamDetails (base name: "steamDetails")', function() { - // uncomment below and update the code to test the property steamDetails - //var instance = new vrchatapi.CurrentUser(); - //expect(instance).to.be(); - }); - - it('should have the property oculusId (base name: "oculusId")', function() { - // uncomment below and update the code to test the property oculusId - //var instance = new vrchatapi.CurrentUser(); - //expect(instance).to.be(); - }); - - it('should have the property hasLoggedInFromClient (base name: "hasLoggedInFromClient")', function() { - // uncomment below and update the code to test the property hasLoggedInFromClient - //var instance = new vrchatapi.CurrentUser(); - //expect(instance).to.be(); - }); - - it('should have the property homeLocation (base name: "homeLocation")', function() { - // uncomment below and update the code to test the property homeLocation - //var instance = new vrchatapi.CurrentUser(); - //expect(instance).to.be(); - }); - - it('should have the property twoFactorAuthEnabled (base name: "twoFactorAuthEnabled")', function() { - // uncomment below and update the code to test the property twoFactorAuthEnabled - //var instance = new vrchatapi.CurrentUser(); - //expect(instance).to.be(); - }); - - it('should have the property state (base name: "state")', function() { - // uncomment below and update the code to test the property state - //var instance = new vrchatapi.CurrentUser(); - //expect(instance).to.be(); - }); - - it('should have the property tags (base name: "tags")', function() { - // uncomment below and update the code to test the property tags - //var instance = new vrchatapi.CurrentUser(); - //expect(instance).to.be(); - }); - - it('should have the property developerType (base name: "developerType")', function() { - // uncomment below and update the code to test the property developerType - //var instance = new vrchatapi.CurrentUser(); - //expect(instance).to.be(); - }); - - it('should have the property lastLogin (base name: "last_login")', function() { - // uncomment below and update the code to test the property lastLogin - //var instance = new vrchatapi.CurrentUser(); - //expect(instance).to.be(); - }); - - it('should have the property lastPlatform (base name: "last_platform")', function() { - // uncomment below and update the code to test the property lastPlatform - //var instance = new vrchatapi.CurrentUser(); - //expect(instance).to.be(); - }); - - it('should have the property allowAvatarCopying (base name: "allowAvatarCopying")', function() { - // uncomment below and update the code to test the property allowAvatarCopying - //var instance = new vrchatapi.CurrentUser(); - //expect(instance).to.be(); - }); - - it('should have the property status (base name: "status")', function() { - // uncomment below and update the code to test the property status - //var instance = new vrchatapi.CurrentUser(); - //expect(instance).to.be(); - }); - - it('should have the property dateJoined (base name: "date_joined")', function() { - // uncomment below and update the code to test the property dateJoined - //var instance = new vrchatapi.CurrentUser(); - //expect(instance).to.be(); - }); - - it('should have the property isFriend (base name: "isFriend")', function() { - // uncomment below and update the code to test the property isFriend - //var instance = new vrchatapi.CurrentUser(); - //expect(instance).to.be(); - }); - - it('should have the property friendKey (base name: "friendKey")', function() { - // uncomment below and update the code to test the property friendKey - //var instance = new vrchatapi.CurrentUser(); - //expect(instance).to.be(); - }); - - it('should have the property onlineFriends (base name: "onlineFriends")', function() { - // uncomment below and update the code to test the property onlineFriends - //var instance = new vrchatapi.CurrentUser(); - //expect(instance).to.be(); - }); - - it('should have the property activeFriends (base name: "activeFriends")', function() { - // uncomment below and update the code to test the property activeFriends - //var instance = new vrchatapi.CurrentUser(); - //expect(instance).to.be(); - }); - - it('should have the property offlineFriends (base name: "offlineFriends")', function() { - // uncomment below and update the code to test the property offlineFriends - //var instance = new vrchatapi.CurrentUser(); - //expect(instance).to.be(); - }); - - }); - -})); diff --git a/test/model/DeploymentGroup.spec.js b/test/model/DeploymentGroup.spec.js deleted file mode 100644 index 30b4c3e..0000000 --- a/test/model/DeploymentGroup.spec.js +++ /dev/null @@ -1,58 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -(function(root, factory) { - if (typeof define === 'function' && define.amd) { - // AMD. - define(['expect.js', process.cwd()+'/src/index'], factory); - } else if (typeof module === 'object' && module.exports) { - // CommonJS-like environments that support module.exports, like Node. - factory(require('expect.js'), require(process.cwd()+'/src/index')); - } else { - // Browser globals (root is window) - factory(root.expect, root.vrchatapi); - } -}(this, function(expect, vrchatapi) { - 'use strict'; - - var instance; - - beforeEach(function() { - }); - - var getProperty = function(object, getter, property) { - // Use getter method if present; otherwise, get the property directly. - if (typeof object[getter] === 'function') - return object[getter](); - else - return object[property]; - } - - var setProperty = function(object, setter, property, value) { - // Use setter method if present; otherwise, set the property directly. - if (typeof object[setter] === 'function') - object[setter](value); - else - object[property] = value; - } - - describe('DeploymentGroup', function() { - it('should create an instance of DeploymentGroup', function() { - // uncomment below and update the code to test DeploymentGroup - //var instane = new vrchatapi.DeploymentGroup(); - //expect(instance).to.be.a(vrchatapi.DeploymentGroup); - }); - - }); - -})); diff --git a/test/model/DeveloperType.spec.js b/test/model/DeveloperType.spec.js deleted file mode 100644 index ffcbf33..0000000 --- a/test/model/DeveloperType.spec.js +++ /dev/null @@ -1,58 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -(function(root, factory) { - if (typeof define === 'function' && define.amd) { - // AMD. - define(['expect.js', process.cwd()+'/src/index'], factory); - } else if (typeof module === 'object' && module.exports) { - // CommonJS-like environments that support module.exports, like Node. - factory(require('expect.js'), require(process.cwd()+'/src/index')); - } else { - // Browser globals (root is window) - factory(root.expect, root.vrchatapi); - } -}(this, function(expect, vrchatapi) { - 'use strict'; - - var instance; - - beforeEach(function() { - }); - - var getProperty = function(object, getter, property) { - // Use getter method if present; otherwise, get the property directly. - if (typeof object[getter] === 'function') - return object[getter](); - else - return object[property]; - } - - var setProperty = function(object, setter, property, value) { - // Use setter method if present; otherwise, set the property directly. - if (typeof object[setter] === 'function') - object[setter](value); - else - object[property] = value; - } - - describe('DeveloperType', function() { - it('should create an instance of DeveloperType', function() { - // uncomment below and update the code to test DeveloperType - //var instane = new vrchatapi.DeveloperType(); - //expect(instance).to.be.a(vrchatapi.DeveloperType); - }); - - }); - -})); diff --git a/test/model/Error.spec.js b/test/model/Error.spec.js deleted file mode 100644 index f709e01..0000000 --- a/test/model/Error.spec.js +++ /dev/null @@ -1,65 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -(function(root, factory) { - if (typeof define === 'function' && define.amd) { - // AMD. - define(['expect.js', process.cwd()+'/src/index'], factory); - } else if (typeof module === 'object' && module.exports) { - // CommonJS-like environments that support module.exports, like Node. - factory(require('expect.js'), require(process.cwd()+'/src/index')); - } else { - // Browser globals (root is window) - factory(root.expect, root.vrchatapi); - } -}(this, function(expect, vrchatapi) { - 'use strict'; - - var instance; - - beforeEach(function() { - instance = new vrchatapi.Error(); - }); - - var getProperty = function(object, getter, property) { - // Use getter method if present; otherwise, get the property directly. - if (typeof object[getter] === 'function') - return object[getter](); - else - return object[property]; - } - - var setProperty = function(object, setter, property, value) { - // Use setter method if present; otherwise, set the property directly. - if (typeof object[setter] === 'function') - object[setter](value); - else - object[property] = value; - } - - describe('Error', function() { - it('should create an instance of Error', function() { - // uncomment below and update the code to test Error - //var instane = new vrchatapi.Error(); - //expect(instance).to.be.a(vrchatapi.Error); - }); - - it('should have the property error (base name: "error")', function() { - // uncomment below and update the code to test the property error - //var instance = new vrchatapi.Error(); - //expect(instance).to.be(); - }); - - }); - -})); diff --git a/test/model/File.spec.js b/test/model/File.spec.js deleted file mode 100644 index 05a01fe..0000000 --- a/test/model/File.spec.js +++ /dev/null @@ -1,101 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -(function(root, factory) { - if (typeof define === 'function' && define.amd) { - // AMD. - define(['expect.js', process.cwd()+'/src/index'], factory); - } else if (typeof module === 'object' && module.exports) { - // CommonJS-like environments that support module.exports, like Node. - factory(require('expect.js'), require(process.cwd()+'/src/index')); - } else { - // Browser globals (root is window) - factory(root.expect, root.vrchatapi); - } -}(this, function(expect, vrchatapi) { - 'use strict'; - - var instance; - - beforeEach(function() { - instance = new vrchatapi.File(); - }); - - var getProperty = function(object, getter, property) { - // Use getter method if present; otherwise, get the property directly. - if (typeof object[getter] === 'function') - return object[getter](); - else - return object[property]; - } - - var setProperty = function(object, setter, property, value) { - // Use setter method if present; otherwise, set the property directly. - if (typeof object[setter] === 'function') - object[setter](value); - else - object[property] = value; - } - - describe('File', function() { - it('should create an instance of File', function() { - // uncomment below and update the code to test File - //var instane = new vrchatapi.File(); - //expect(instance).to.be.a(vrchatapi.File); - }); - - it('should have the property id (base name: "id")', function() { - // uncomment below and update the code to test the property id - //var instance = new vrchatapi.File(); - //expect(instance).to.be(); - }); - - it('should have the property name (base name: "name")', function() { - // uncomment below and update the code to test the property name - //var instance = new vrchatapi.File(); - //expect(instance).to.be(); - }); - - it('should have the property ownerId (base name: "ownerId")', function() { - // uncomment below and update the code to test the property ownerId - //var instance = new vrchatapi.File(); - //expect(instance).to.be(); - }); - - it('should have the property mimeType (base name: "mimeType")', function() { - // uncomment below and update the code to test the property mimeType - //var instance = new vrchatapi.File(); - //expect(instance).to.be(); - }); - - it('should have the property extension (base name: "extension")', function() { - // uncomment below and update the code to test the property extension - //var instance = new vrchatapi.File(); - //expect(instance).to.be(); - }); - - it('should have the property tags (base name: "tags")', function() { - // uncomment below and update the code to test the property tags - //var instance = new vrchatapi.File(); - //expect(instance).to.be(); - }); - - it('should have the property versions (base name: "versions")', function() { - // uncomment below and update the code to test the property versions - //var instance = new vrchatapi.File(); - //expect(instance).to.be(); - }); - - }); - -})); diff --git a/test/model/FileData.spec.js b/test/model/FileData.spec.js deleted file mode 100644 index f133dfa..0000000 --- a/test/model/FileData.spec.js +++ /dev/null @@ -1,101 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -(function(root, factory) { - if (typeof define === 'function' && define.amd) { - // AMD. - define(['expect.js', process.cwd()+'/src/index'], factory); - } else if (typeof module === 'object' && module.exports) { - // CommonJS-like environments that support module.exports, like Node. - factory(require('expect.js'), require(process.cwd()+'/src/index')); - } else { - // Browser globals (root is window) - factory(root.expect, root.vrchatapi); - } -}(this, function(expect, vrchatapi) { - 'use strict'; - - var instance; - - beforeEach(function() { - instance = new vrchatapi.FileData(); - }); - - var getProperty = function(object, getter, property) { - // Use getter method if present; otherwise, get the property directly. - if (typeof object[getter] === 'function') - return object[getter](); - else - return object[property]; - } - - var setProperty = function(object, setter, property, value) { - // Use setter method if present; otherwise, set the property directly. - if (typeof object[setter] === 'function') - object[setter](value); - else - object[property] = value; - } - - describe('FileData', function() { - it('should create an instance of FileData', function() { - // uncomment below and update the code to test FileData - //var instane = new vrchatapi.FileData(); - //expect(instance).to.be.a(vrchatapi.FileData); - }); - - it('should have the property fileName (base name: "fileName")', function() { - // uncomment below and update the code to test the property fileName - //var instance = new vrchatapi.FileData(); - //expect(instance).to.be(); - }); - - it('should have the property url (base name: "url")', function() { - // uncomment below and update the code to test the property url - //var instance = new vrchatapi.FileData(); - //expect(instance).to.be(); - }); - - it('should have the property md5 (base name: "md5")', function() { - // uncomment below and update the code to test the property md5 - //var instance = new vrchatapi.FileData(); - //expect(instance).to.be(); - }); - - it('should have the property sizeInBytes (base name: "sizeInBytes")', function() { - // uncomment below and update the code to test the property sizeInBytes - //var instance = new vrchatapi.FileData(); - //expect(instance).to.be(); - }); - - it('should have the property status (base name: "status")', function() { - // uncomment below and update the code to test the property status - //var instance = new vrchatapi.FileData(); - //expect(instance).to.be(); - }); - - it('should have the property category (base name: "category")', function() { - // uncomment below and update the code to test the property category - //var instance = new vrchatapi.FileData(); - //expect(instance).to.be(); - }); - - it('should have the property uploadId (base name: "uploadId")', function() { - // uncomment below and update the code to test the property uploadId - //var instance = new vrchatapi.FileData(); - //expect(instance).to.be(); - }); - - }); - -})); diff --git a/test/model/FileStatus.spec.js b/test/model/FileStatus.spec.js deleted file mode 100644 index f668d4f..0000000 --- a/test/model/FileStatus.spec.js +++ /dev/null @@ -1,58 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -(function(root, factory) { - if (typeof define === 'function' && define.amd) { - // AMD. - define(['expect.js', process.cwd()+'/src/index'], factory); - } else if (typeof module === 'object' && module.exports) { - // CommonJS-like environments that support module.exports, like Node. - factory(require('expect.js'), require(process.cwd()+'/src/index')); - } else { - // Browser globals (root is window) - factory(root.expect, root.vrchatapi); - } -}(this, function(expect, vrchatapi) { - 'use strict'; - - var instance; - - beforeEach(function() { - }); - - var getProperty = function(object, getter, property) { - // Use getter method if present; otherwise, get the property directly. - if (typeof object[getter] === 'function') - return object[getter](); - else - return object[property]; - } - - var setProperty = function(object, setter, property, value) { - // Use setter method if present; otherwise, set the property directly. - if (typeof object[setter] === 'function') - object[setter](value); - else - object[property] = value; - } - - describe('FileStatus', function() { - it('should create an instance of FileStatus', function() { - // uncomment below and update the code to test FileStatus - //var instane = new vrchatapi.FileStatus(); - //expect(instance).to.be.a(vrchatapi.FileStatus); - }); - - }); - -})); diff --git a/test/model/FileVersion.spec.js b/test/model/FileVersion.spec.js deleted file mode 100644 index 98c1ece..0000000 --- a/test/model/FileVersion.spec.js +++ /dev/null @@ -1,101 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -(function(root, factory) { - if (typeof define === 'function' && define.amd) { - // AMD. - define(['expect.js', process.cwd()+'/src/index'], factory); - } else if (typeof module === 'object' && module.exports) { - // CommonJS-like environments that support module.exports, like Node. - factory(require('expect.js'), require(process.cwd()+'/src/index')); - } else { - // Browser globals (root is window) - factory(root.expect, root.vrchatapi); - } -}(this, function(expect, vrchatapi) { - 'use strict'; - - var instance; - - beforeEach(function() { - instance = new vrchatapi.FileVersion(); - }); - - var getProperty = function(object, getter, property) { - // Use getter method if present; otherwise, get the property directly. - if (typeof object[getter] === 'function') - return object[getter](); - else - return object[property]; - } - - var setProperty = function(object, setter, property, value) { - // Use setter method if present; otherwise, set the property directly. - if (typeof object[setter] === 'function') - object[setter](value); - else - object[property] = value; - } - - describe('FileVersion', function() { - it('should create an instance of FileVersion', function() { - // uncomment below and update the code to test FileVersion - //var instane = new vrchatapi.FileVersion(); - //expect(instance).to.be.a(vrchatapi.FileVersion); - }); - - it('should have the property version (base name: "version")', function() { - // uncomment below and update the code to test the property version - //var instance = new vrchatapi.FileVersion(); - //expect(instance).to.be(); - }); - - it('should have the property status (base name: "status")', function() { - // uncomment below and update the code to test the property status - //var instance = new vrchatapi.FileVersion(); - //expect(instance).to.be(); - }); - - it('should have the property createdAt (base name: "created_at")', function() { - // uncomment below and update the code to test the property createdAt - //var instance = new vrchatapi.FileVersion(); - //expect(instance).to.be(); - }); - - it('should have the property file (base name: "file")', function() { - // uncomment below and update the code to test the property file - //var instance = new vrchatapi.FileVersion(); - //expect(instance).to.be(); - }); - - it('should have the property delta (base name: "delta")', function() { - // uncomment below and update the code to test the property delta - //var instance = new vrchatapi.FileVersion(); - //expect(instance).to.be(); - }); - - it('should have the property signature (base name: "signature")', function() { - // uncomment below and update the code to test the property signature - //var instance = new vrchatapi.FileVersion(); - //expect(instance).to.be(); - }); - - it('should have the property deleted (base name: "deleted")', function() { - // uncomment below and update the code to test the property deleted - //var instance = new vrchatapi.FileVersion(); - //expect(instance).to.be(); - }); - - }); - -})); diff --git a/test/model/InlineObject.spec.js b/test/model/InlineObject.spec.js deleted file mode 100644 index 24f32eb..0000000 --- a/test/model/InlineObject.spec.js +++ /dev/null @@ -1,65 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -(function(root, factory) { - if (typeof define === 'function' && define.amd) { - // AMD. - define(['expect.js', process.cwd()+'/src/index'], factory); - } else if (typeof module === 'object' && module.exports) { - // CommonJS-like environments that support module.exports, like Node. - factory(require('expect.js'), require(process.cwd()+'/src/index')); - } else { - // Browser globals (root is window) - factory(root.expect, root.vrchatapi); - } -}(this, function(expect, vrchatapi) { - 'use strict'; - - var instance; - - beforeEach(function() { - instance = new vrchatapi.InlineObject(); - }); - - var getProperty = function(object, getter, property) { - // Use getter method if present; otherwise, get the property directly. - if (typeof object[getter] === 'function') - return object[getter](); - else - return object[property]; - } - - var setProperty = function(object, setter, property, value) { - // Use setter method if present; otherwise, set the property directly. - if (typeof object[setter] === 'function') - object[setter](value); - else - object[property] = value; - } - - describe('InlineObject', function() { - it('should create an instance of InlineObject', function() { - // uncomment below and update the code to test InlineObject - //var instane = new vrchatapi.InlineObject(); - //expect(instance).to.be.a(vrchatapi.InlineObject); - }); - - it('should have the property code (base name: "code")', function() { - // uncomment below and update the code to test the property code - //var instance = new vrchatapi.InlineObject(); - //expect(instance).to.be(); - }); - - }); - -})); diff --git a/test/model/InlineObject1.spec.js b/test/model/InlineObject1.spec.js deleted file mode 100644 index 6094b44..0000000 --- a/test/model/InlineObject1.spec.js +++ /dev/null @@ -1,65 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -(function(root, factory) { - if (typeof define === 'function' && define.amd) { - // AMD. - define(['expect.js', process.cwd()+'/src/index'], factory); - } else if (typeof module === 'object' && module.exports) { - // CommonJS-like environments that support module.exports, like Node. - factory(require('expect.js'), require(process.cwd()+'/src/index')); - } else { - // Browser globals (root is window) - factory(root.expect, root.vrchatapi); - } -}(this, function(expect, vrchatapi) { - 'use strict'; - - var instance; - - beforeEach(function() { - instance = new vrchatapi.InlineObject1(); - }); - - var getProperty = function(object, getter, property) { - // Use getter method if present; otherwise, get the property directly. - if (typeof object[getter] === 'function') - return object[getter](); - else - return object[property]; - } - - var setProperty = function(object, setter, property, value) { - // Use setter method if present; otherwise, set the property directly. - if (typeof object[setter] === 'function') - object[setter](value); - else - object[property] = value; - } - - describe('InlineObject1', function() { - it('should create an instance of InlineObject1', function() { - // uncomment below and update the code to test InlineObject1 - //var instane = new vrchatapi.InlineObject1(); - //expect(instance).to.be.a(vrchatapi.InlineObject1); - }); - - it('should have the property code (base name: "code")', function() { - // uncomment below and update the code to test the property code - //var instance = new vrchatapi.InlineObject1(); - //expect(instance).to.be(); - }); - - }); - -})); diff --git a/test/model/InlineObject2.spec.js b/test/model/InlineObject2.spec.js deleted file mode 100644 index db4da73..0000000 --- a/test/model/InlineObject2.spec.js +++ /dev/null @@ -1,113 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -(function(root, factory) { - if (typeof define === 'function' && define.amd) { - // AMD. - define(['expect.js', process.cwd()+'/src/index'], factory); - } else if (typeof module === 'object' && module.exports) { - // CommonJS-like environments that support module.exports, like Node. - factory(require('expect.js'), require(process.cwd()+'/src/index')); - } else { - // Browser globals (root is window) - factory(root.expect, root.vrchatapi); - } -}(this, function(expect, vrchatapi) { - 'use strict'; - - var instance; - - beforeEach(function() { - instance = new vrchatapi.InlineObject2(); - }); - - var getProperty = function(object, getter, property) { - // Use getter method if present; otherwise, get the property directly. - if (typeof object[getter] === 'function') - return object[getter](); - else - return object[property]; - } - - var setProperty = function(object, setter, property, value) { - // Use setter method if present; otherwise, set the property directly. - if (typeof object[setter] === 'function') - object[setter](value); - else - object[property] = value; - } - - describe('InlineObject2', function() { - it('should create an instance of InlineObject2', function() { - // uncomment below and update the code to test InlineObject2 - //var instane = new vrchatapi.InlineObject2(); - //expect(instance).to.be.a(vrchatapi.InlineObject2); - }); - - it('should have the property email (base name: "email")', function() { - // uncomment below and update the code to test the property email - //var instance = new vrchatapi.InlineObject2(); - //expect(instance).to.be(); - }); - - it('should have the property birthday (base name: "birthday")', function() { - // uncomment below and update the code to test the property birthday - //var instance = new vrchatapi.InlineObject2(); - //expect(instance).to.be(); - }); - - it('should have the property acceptedTOSVersion (base name: "acceptedTOSVersion")', function() { - // uncomment below and update the code to test the property acceptedTOSVersion - //var instance = new vrchatapi.InlineObject2(); - //expect(instance).to.be(); - }); - - it('should have the property tags (base name: "tags")', function() { - // uncomment below and update the code to test the property tags - //var instance = new vrchatapi.InlineObject2(); - //expect(instance).to.be(); - }); - - it('should have the property status (base name: "status")', function() { - // uncomment below and update the code to test the property status - //var instance = new vrchatapi.InlineObject2(); - //expect(instance).to.be(); - }); - - it('should have the property statusDescription (base name: "statusDescription")', function() { - // uncomment below and update the code to test the property statusDescription - //var instance = new vrchatapi.InlineObject2(); - //expect(instance).to.be(); - }); - - it('should have the property bio (base name: "bio")', function() { - // uncomment below and update the code to test the property bio - //var instance = new vrchatapi.InlineObject2(); - //expect(instance).to.be(); - }); - - it('should have the property bioLinks (base name: "bioLinks")', function() { - // uncomment below and update the code to test the property bioLinks - //var instance = new vrchatapi.InlineObject2(); - //expect(instance).to.be(); - }); - - it('should have the property userIcon (base name: "userIcon")', function() { - // uncomment below and update the code to test the property userIcon - //var instance = new vrchatapi.InlineObject2(); - //expect(instance).to.be(); - }); - - }); - -})); diff --git a/test/model/InlineObject3.spec.js b/test/model/InlineObject3.spec.js deleted file mode 100644 index cdee9bb..0000000 --- a/test/model/InlineObject3.spec.js +++ /dev/null @@ -1,83 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -(function(root, factory) { - if (typeof define === 'function' && define.amd) { - // AMD. - define(['expect.js', process.cwd()+'/src/index'], factory); - } else if (typeof module === 'object' && module.exports) { - // CommonJS-like environments that support module.exports, like Node. - factory(require('expect.js'), require(process.cwd()+'/src/index')); - } else { - // Browser globals (root is window) - factory(root.expect, root.vrchatapi); - } -}(this, function(expect, vrchatapi) { - 'use strict'; - - var instance; - - beforeEach(function() { - instance = new vrchatapi.InlineObject3(); - }); - - var getProperty = function(object, getter, property) { - // Use getter method if present; otherwise, get the property directly. - if (typeof object[getter] === 'function') - return object[getter](); - else - return object[property]; - } - - var setProperty = function(object, setter, property, value) { - // Use setter method if present; otherwise, set the property directly. - if (typeof object[setter] === 'function') - object[setter](value); - else - object[property] = value; - } - - describe('InlineObject3', function() { - it('should create an instance of InlineObject3', function() { - // uncomment below and update the code to test InlineObject3 - //var instane = new vrchatapi.InlineObject3(); - //expect(instance).to.be.a(vrchatapi.InlineObject3); - }); - - it('should have the property name (base name: "name")', function() { - // uncomment below and update the code to test the property name - //var instance = new vrchatapi.InlineObject3(); - //expect(instance).to.be(); - }); - - it('should have the property mimeType (base name: "mimeType")', function() { - // uncomment below and update the code to test the property mimeType - //var instance = new vrchatapi.InlineObject3(); - //expect(instance).to.be(); - }); - - it('should have the property extension (base name: "extension")', function() { - // uncomment below and update the code to test the property extension - //var instance = new vrchatapi.InlineObject3(); - //expect(instance).to.be(); - }); - - it('should have the property tags (base name: "tags")', function() { - // uncomment below and update the code to test the property tags - //var instance = new vrchatapi.InlineObject3(); - //expect(instance).to.be(); - }); - - }); - -})); diff --git a/test/model/InlineObject4.spec.js b/test/model/InlineObject4.spec.js deleted file mode 100644 index c5eedee..0000000 --- a/test/model/InlineObject4.spec.js +++ /dev/null @@ -1,77 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -(function(root, factory) { - if (typeof define === 'function' && define.amd) { - // AMD. - define(['expect.js', process.cwd()+'/src/index'], factory); - } else if (typeof module === 'object' && module.exports) { - // CommonJS-like environments that support module.exports, like Node. - factory(require('expect.js'), require(process.cwd()+'/src/index')); - } else { - // Browser globals (root is window) - factory(root.expect, root.vrchatapi); - } -}(this, function(expect, vrchatapi) { - 'use strict'; - - var instance; - - beforeEach(function() { - instance = new vrchatapi.InlineObject4(); - }); - - var getProperty = function(object, getter, property) { - // Use getter method if present; otherwise, get the property directly. - if (typeof object[getter] === 'function') - return object[getter](); - else - return object[property]; - } - - var setProperty = function(object, setter, property, value) { - // Use setter method if present; otherwise, set the property directly. - if (typeof object[setter] === 'function') - object[setter](value); - else - object[property] = value; - } - - describe('InlineObject4', function() { - it('should create an instance of InlineObject4', function() { - // uncomment below and update the code to test InlineObject4 - //var instane = new vrchatapi.InlineObject4(); - //expect(instance).to.be.a(vrchatapi.InlineObject4); - }); - - it('should have the property etags (base name: "etags")', function() { - // uncomment below and update the code to test the property etags - //var instance = new vrchatapi.InlineObject4(); - //expect(instance).to.be(); - }); - - it('should have the property nextPartNumber (base name: "nextPartNumber")', function() { - // uncomment below and update the code to test the property nextPartNumber - //var instance = new vrchatapi.InlineObject4(); - //expect(instance).to.be(); - }); - - it('should have the property maxParts (base name: "maxParts")', function() { - // uncomment below and update the code to test the property maxParts - //var instance = new vrchatapi.InlineObject4(); - //expect(instance).to.be(); - }); - - }); - -})); diff --git a/test/model/InlineResponse200.spec.js b/test/model/InlineResponse200.spec.js deleted file mode 100644 index 4f6138c..0000000 --- a/test/model/InlineResponse200.spec.js +++ /dev/null @@ -1,71 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -(function(root, factory) { - if (typeof define === 'function' && define.amd) { - // AMD. - define(['expect.js', process.cwd()+'/src/index'], factory); - } else if (typeof module === 'object' && module.exports) { - // CommonJS-like environments that support module.exports, like Node. - factory(require('expect.js'), require(process.cwd()+'/src/index')); - } else { - // Browser globals (root is window) - factory(root.expect, root.vrchatapi); - } -}(this, function(expect, vrchatapi) { - 'use strict'; - - var instance; - - beforeEach(function() { - instance = new vrchatapi.InlineResponse200(); - }); - - var getProperty = function(object, getter, property) { - // Use getter method if present; otherwise, get the property directly. - if (typeof object[getter] === 'function') - return object[getter](); - else - return object[property]; - } - - var setProperty = function(object, setter, property, value) { - // Use setter method if present; otherwise, set the property directly. - if (typeof object[setter] === 'function') - object[setter](value); - else - object[property] = value; - } - - describe('InlineResponse200', function() { - it('should create an instance of InlineResponse200', function() { - // uncomment below and update the code to test InlineResponse200 - //var instane = new vrchatapi.InlineResponse200(); - //expect(instance).to.be.a(vrchatapi.InlineResponse200); - }); - - it('should have the property ok (base name: "ok")', function() { - // uncomment below and update the code to test the property ok - //var instance = new vrchatapi.InlineResponse200(); - //expect(instance).to.be(); - }); - - it('should have the property token (base name: "token")', function() { - // uncomment below and update the code to test the property token - //var instance = new vrchatapi.InlineResponse200(); - //expect(instance).to.be(); - }); - - }); - -})); diff --git a/test/model/InlineResponse2001.spec.js b/test/model/InlineResponse2001.spec.js deleted file mode 100644 index ae05402..0000000 --- a/test/model/InlineResponse2001.spec.js +++ /dev/null @@ -1,65 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -(function(root, factory) { - if (typeof define === 'function' && define.amd) { - // AMD. - define(['expect.js', process.cwd()+'/src/index'], factory); - } else if (typeof module === 'object' && module.exports) { - // CommonJS-like environments that support module.exports, like Node. - factory(require('expect.js'), require(process.cwd()+'/src/index')); - } else { - // Browser globals (root is window) - factory(root.expect, root.vrchatapi); - } -}(this, function(expect, vrchatapi) { - 'use strict'; - - var instance; - - beforeEach(function() { - instance = new vrchatapi.InlineResponse2001(); - }); - - var getProperty = function(object, getter, property) { - // Use getter method if present; otherwise, get the property directly. - if (typeof object[getter] === 'function') - return object[getter](); - else - return object[property]; - } - - var setProperty = function(object, setter, property, value) { - // Use setter method if present; otherwise, set the property directly. - if (typeof object[setter] === 'function') - object[setter](value); - else - object[property] = value; - } - - describe('InlineResponse2001', function() { - it('should create an instance of InlineResponse2001', function() { - // uncomment below and update the code to test InlineResponse2001 - //var instane = new vrchatapi.InlineResponse2001(); - //expect(instance).to.be.a(vrchatapi.InlineResponse2001); - }); - - it('should have the property verified (base name: "verified")', function() { - // uncomment below and update the code to test the property verified - //var instance = new vrchatapi.InlineResponse2001(); - //expect(instance).to.be(); - }); - - }); - -})); diff --git a/test/model/InlineResponse2002.spec.js b/test/model/InlineResponse2002.spec.js deleted file mode 100644 index 0b64afb..0000000 --- a/test/model/InlineResponse2002.spec.js +++ /dev/null @@ -1,77 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -(function(root, factory) { - if (typeof define === 'function' && define.amd) { - // AMD. - define(['expect.js', process.cwd()+'/src/index'], factory); - } else if (typeof module === 'object' && module.exports) { - // CommonJS-like environments that support module.exports, like Node. - factory(require('expect.js'), require(process.cwd()+'/src/index')); - } else { - // Browser globals (root is window) - factory(root.expect, root.vrchatapi); - } -}(this, function(expect, vrchatapi) { - 'use strict'; - - var instance; - - beforeEach(function() { - instance = new vrchatapi.InlineResponse2002(); - }); - - var getProperty = function(object, getter, property) { - // Use getter method if present; otherwise, get the property directly. - if (typeof object[getter] === 'function') - return object[getter](); - else - return object[property]; - } - - var setProperty = function(object, setter, property, value) { - // Use setter method if present; otherwise, set the property directly. - if (typeof object[setter] === 'function') - object[setter](value); - else - object[property] = value; - } - - describe('InlineResponse2002', function() { - it('should create an instance of InlineResponse2002', function() { - // uncomment below and update the code to test InlineResponse2002 - //var instane = new vrchatapi.InlineResponse2002(); - //expect(instance).to.be.a(vrchatapi.InlineResponse2002); - }); - - it('should have the property ok (base name: "ok")', function() { - // uncomment below and update the code to test the property ok - //var instance = new vrchatapi.InlineResponse2002(); - //expect(instance).to.be(); - }); - - it('should have the property serverName (base name: "serverName")', function() { - // uncomment below and update the code to test the property serverName - //var instance = new vrchatapi.InlineResponse2002(); - //expect(instance).to.be(); - }); - - it('should have the property buildVersionTag (base name: "buildVersionTag")', function() { - // uncomment below and update the code to test the property buildVersionTag - //var instance = new vrchatapi.InlineResponse2002(); - //expect(instance).to.be(); - }); - - }); - -})); diff --git a/test/model/InlineResponse2003.spec.js b/test/model/InlineResponse2003.spec.js deleted file mode 100644 index 466c003..0000000 --- a/test/model/InlineResponse2003.spec.js +++ /dev/null @@ -1,77 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -(function(root, factory) { - if (typeof define === 'function' && define.amd) { - // AMD. - define(['expect.js', process.cwd()+'/src/index'], factory); - } else if (typeof module === 'object' && module.exports) { - // CommonJS-like environments that support module.exports, like Node. - factory(require('expect.js'), require(process.cwd()+'/src/index')); - } else { - // Browser globals (root is window) - factory(root.expect, root.vrchatapi); - } -}(this, function(expect, vrchatapi) { - 'use strict'; - - var instance; - - beforeEach(function() { - instance = new vrchatapi.InlineResponse2003(); - }); - - var getProperty = function(object, getter, property) { - // Use getter method if present; otherwise, get the property directly. - if (typeof object[getter] === 'function') - return object[getter](); - else - return object[property]; - } - - var setProperty = function(object, setter, property, value) { - // Use setter method if present; otherwise, set the property directly. - if (typeof object[setter] === 'function') - object[setter](value); - else - object[property] = value; - } - - describe('InlineResponse2003', function() { - it('should create an instance of InlineResponse2003', function() { - // uncomment below and update the code to test InlineResponse2003 - //var instane = new vrchatapi.InlineResponse2003(); - //expect(instance).to.be.a(vrchatapi.InlineResponse2003); - }); - - it('should have the property isFriend (base name: "isFriend")', function() { - // uncomment below and update the code to test the property isFriend - //var instance = new vrchatapi.InlineResponse2003(); - //expect(instance).to.be(); - }); - - it('should have the property outgoingRequest (base name: "outgoingRequest")', function() { - // uncomment below and update the code to test the property outgoingRequest - //var instance = new vrchatapi.InlineResponse2003(); - //expect(instance).to.be(); - }); - - it('should have the property incomingRequest (base name: "incomingRequest")', function() { - // uncomment below and update the code to test the property incomingRequest - //var instance = new vrchatapi.InlineResponse2003(); - //expect(instance).to.be(); - }); - - }); - -})); diff --git a/test/model/InlineResponse2004.spec.js b/test/model/InlineResponse2004.spec.js deleted file mode 100644 index 9832a4b..0000000 --- a/test/model/InlineResponse2004.spec.js +++ /dev/null @@ -1,95 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -(function(root, factory) { - if (typeof define === 'function' && define.amd) { - // AMD. - define(['expect.js', process.cwd()+'/src/index'], factory); - } else if (typeof module === 'object' && module.exports) { - // CommonJS-like environments that support module.exports, like Node. - factory(require('expect.js'), require(process.cwd()+'/src/index')); - } else { - // Browser globals (root is window) - factory(root.expect, root.vrchatapi); - } -}(this, function(expect, vrchatapi) { - 'use strict'; - - var instance; - - beforeEach(function() { - instance = new vrchatapi.InlineResponse2004(); - }); - - var getProperty = function(object, getter, property) { - // Use getter method if present; otherwise, get the property directly. - if (typeof object[getter] === 'function') - return object[getter](); - else - return object[property]; - } - - var setProperty = function(object, setter, property, value) { - // Use setter method if present; otherwise, set the property directly. - if (typeof object[setter] === 'function') - object[setter](value); - else - object[property] = value; - } - - describe('InlineResponse2004', function() { - it('should create an instance of InlineResponse2004', function() { - // uncomment below and update the code to test InlineResponse2004 - //var instane = new vrchatapi.InlineResponse2004(); - //expect(instance).to.be.a(vrchatapi.InlineResponse2004); - }); - - it('should have the property uploadId (base name: "uploadId")', function() { - // uncomment below and update the code to test the property uploadId - //var instance = new vrchatapi.InlineResponse2004(); - //expect(instance).to.be(); - }); - - it('should have the property fileName (base name: "fileName")', function() { - // uncomment below and update the code to test the property fileName - //var instance = new vrchatapi.InlineResponse2004(); - //expect(instance).to.be(); - }); - - it('should have the property nextPartNumber (base name: "nextPartNumber")', function() { - // uncomment below and update the code to test the property nextPartNumber - //var instance = new vrchatapi.InlineResponse2004(); - //expect(instance).to.be(); - }); - - it('should have the property maxParts (base name: "maxParts")', function() { - // uncomment below and update the code to test the property maxParts - //var instance = new vrchatapi.InlineResponse2004(); - //expect(instance).to.be(); - }); - - it('should have the property parts (base name: "parts")', function() { - // uncomment below and update the code to test the property parts - //var instance = new vrchatapi.InlineResponse2004(); - //expect(instance).to.be(); - }); - - it('should have the property etags (base name: "etags")', function() { - // uncomment below and update the code to test the property etags - //var instance = new vrchatapi.InlineResponse2004(); - //expect(instance).to.be(); - }); - - }); - -})); diff --git a/test/model/InlineResponse2005.spec.js b/test/model/InlineResponse2005.spec.js deleted file mode 100644 index 3fc4521..0000000 --- a/test/model/InlineResponse2005.spec.js +++ /dev/null @@ -1,65 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -(function(root, factory) { - if (typeof define === 'function' && define.amd) { - // AMD. - define(['expect.js', process.cwd()+'/src/index'], factory); - } else if (typeof module === 'object' && module.exports) { - // CommonJS-like environments that support module.exports, like Node. - factory(require('expect.js'), require(process.cwd()+'/src/index')); - } else { - // Browser globals (root is window) - factory(root.expect, root.vrchatapi); - } -}(this, function(expect, vrchatapi) { - 'use strict'; - - var instance; - - beforeEach(function() { - instance = new vrchatapi.InlineResponse2005(); - }); - - var getProperty = function(object, getter, property) { - // Use getter method if present; otherwise, get the property directly. - if (typeof object[getter] === 'function') - return object[getter](); - else - return object[property]; - } - - var setProperty = function(object, setter, property, value) { - // Use setter method if present; otherwise, set the property directly. - if (typeof object[setter] === 'function') - object[setter](value); - else - object[property] = value; - } - - describe('InlineResponse2005', function() { - it('should create an instance of InlineResponse2005', function() { - // uncomment below and update the code to test InlineResponse2005 - //var instane = new vrchatapi.InlineResponse2005(); - //expect(instance).to.be.a(vrchatapi.InlineResponse2005); - }); - - it('should have the property url (base name: "url")', function() { - // uncomment below and update the code to test the property url - //var instance = new vrchatapi.InlineResponse2005(); - //expect(instance).to.be(); - }); - - }); - -})); diff --git a/test/model/InlineResponse401.spec.js b/test/model/InlineResponse401.spec.js deleted file mode 100644 index 21083ee..0000000 --- a/test/model/InlineResponse401.spec.js +++ /dev/null @@ -1,65 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -(function(root, factory) { - if (typeof define === 'function' && define.amd) { - // AMD. - define(['expect.js', process.cwd()+'/src/index'], factory); - } else if (typeof module === 'object' && module.exports) { - // CommonJS-like environments that support module.exports, like Node. - factory(require('expect.js'), require(process.cwd()+'/src/index')); - } else { - // Browser globals (root is window) - factory(root.expect, root.vrchatapi); - } -}(this, function(expect, vrchatapi) { - 'use strict'; - - var instance; - - beforeEach(function() { - instance = new vrchatapi.InlineResponse401(); - }); - - var getProperty = function(object, getter, property) { - // Use getter method if present; otherwise, get the property directly. - if (typeof object[getter] === 'function') - return object[getter](); - else - return object[property]; - } - - var setProperty = function(object, setter, property, value) { - // Use setter method if present; otherwise, set the property directly. - if (typeof object[setter] === 'function') - object[setter](value); - else - object[property] = value; - } - - describe('InlineResponse401', function() { - it('should create an instance of InlineResponse401', function() { - // uncomment below and update the code to test InlineResponse401 - //var instane = new vrchatapi.InlineResponse401(); - //expect(instance).to.be.a(vrchatapi.InlineResponse401); - }); - - it('should have the property error (base name: "error")', function() { - // uncomment below and update the code to test the property error - //var instance = new vrchatapi.InlineResponse401(); - //expect(instance).to.be(); - }); - - }); - -})); diff --git a/test/model/LimitedUser.spec.js b/test/model/LimitedUser.spec.js deleted file mode 100644 index 63cd38d..0000000 --- a/test/model/LimitedUser.spec.js +++ /dev/null @@ -1,155 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -(function(root, factory) { - if (typeof define === 'function' && define.amd) { - // AMD. - define(['expect.js', process.cwd()+'/src/index'], factory); - } else if (typeof module === 'object' && module.exports) { - // CommonJS-like environments that support module.exports, like Node. - factory(require('expect.js'), require(process.cwd()+'/src/index')); - } else { - // Browser globals (root is window) - factory(root.expect, root.vrchatapi); - } -}(this, function(expect, vrchatapi) { - 'use strict'; - - var instance; - - beforeEach(function() { - instance = new vrchatapi.LimitedUser(); - }); - - var getProperty = function(object, getter, property) { - // Use getter method if present; otherwise, get the property directly. - if (typeof object[getter] === 'function') - return object[getter](); - else - return object[property]; - } - - var setProperty = function(object, setter, property, value) { - // Use setter method if present; otherwise, set the property directly. - if (typeof object[setter] === 'function') - object[setter](value); - else - object[property] = value; - } - - describe('LimitedUser', function() { - it('should create an instance of LimitedUser', function() { - // uncomment below and update the code to test LimitedUser - //var instane = new vrchatapi.LimitedUser(); - //expect(instance).to.be.a(vrchatapi.LimitedUser); - }); - - it('should have the property id (base name: "id")', function() { - // uncomment below and update the code to test the property id - //var instance = new vrchatapi.LimitedUser(); - //expect(instance).to.be(); - }); - - it('should have the property username (base name: "username")', function() { - // uncomment below and update the code to test the property username - //var instance = new vrchatapi.LimitedUser(); - //expect(instance).to.be(); - }); - - it('should have the property displayName (base name: "displayName")', function() { - // uncomment below and update the code to test the property displayName - //var instance = new vrchatapi.LimitedUser(); - //expect(instance).to.be(); - }); - - it('should have the property bio (base name: "bio")', function() { - // uncomment below and update the code to test the property bio - //var instance = new vrchatapi.LimitedUser(); - //expect(instance).to.be(); - }); - - it('should have the property userIcon (base name: "userIcon")', function() { - // uncomment below and update the code to test the property userIcon - //var instance = new vrchatapi.LimitedUser(); - //expect(instance).to.be(); - }); - - it('should have the property profilePicOverride (base name: "profilePicOverride")', function() { - // uncomment below and update the code to test the property profilePicOverride - //var instance = new vrchatapi.LimitedUser(); - //expect(instance).to.be(); - }); - - it('should have the property statusDescription (base name: "statusDescription")', function() { - // uncomment below and update the code to test the property statusDescription - //var instance = new vrchatapi.LimitedUser(); - //expect(instance).to.be(); - }); - - it('should have the property currentAvatarImageUrl (base name: "currentAvatarImageUrl")', function() { - // uncomment below and update the code to test the property currentAvatarImageUrl - //var instance = new vrchatapi.LimitedUser(); - //expect(instance).to.be(); - }); - - it('should have the property currentAvatarThumbnailImageUrl (base name: "currentAvatarThumbnailImageUrl")', function() { - // uncomment below and update the code to test the property currentAvatarThumbnailImageUrl - //var instance = new vrchatapi.LimitedUser(); - //expect(instance).to.be(); - }); - - it('should have the property fallbackAvatar (base name: "fallbackAvatar")', function() { - // uncomment below and update the code to test the property fallbackAvatar - //var instance = new vrchatapi.LimitedUser(); - //expect(instance).to.be(); - }); - - it('should have the property developerType (base name: "developerType")', function() { - // uncomment below and update the code to test the property developerType - //var instance = new vrchatapi.LimitedUser(); - //expect(instance).to.be(); - }); - - it('should have the property lastPlatform (base name: "last_platform")', function() { - // uncomment below and update the code to test the property lastPlatform - //var instance = new vrchatapi.LimitedUser(); - //expect(instance).to.be(); - }); - - it('should have the property status (base name: "status")', function() { - // uncomment below and update the code to test the property status - //var instance = new vrchatapi.LimitedUser(); - //expect(instance).to.be(); - }); - - it('should have the property isFriend (base name: "isFriend")', function() { - // uncomment below and update the code to test the property isFriend - //var instance = new vrchatapi.LimitedUser(); - //expect(instance).to.be(); - }); - - it('should have the property location (base name: "location")', function() { - // uncomment below and update the code to test the property location - //var instance = new vrchatapi.LimitedUser(); - //expect(instance).to.be(); - }); - - it('should have the property tags (base name: "tags")', function() { - // uncomment below and update the code to test the property tags - //var instance = new vrchatapi.LimitedUser(); - //expect(instance).to.be(); - }); - - }); - -})); diff --git a/test/model/LimitedWorld.spec.js b/test/model/LimitedWorld.spec.js deleted file mode 100644 index 7892bb4..0000000 --- a/test/model/LimitedWorld.spec.js +++ /dev/null @@ -1,173 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -(function(root, factory) { - if (typeof define === 'function' && define.amd) { - // AMD. - define(['expect.js', process.cwd()+'/src/index'], factory); - } else if (typeof module === 'object' && module.exports) { - // CommonJS-like environments that support module.exports, like Node. - factory(require('expect.js'), require(process.cwd()+'/src/index')); - } else { - // Browser globals (root is window) - factory(root.expect, root.vrchatapi); - } -}(this, function(expect, vrchatapi) { - 'use strict'; - - var instance; - - beforeEach(function() { - instance = new vrchatapi.LimitedWorld(); - }); - - var getProperty = function(object, getter, property) { - // Use getter method if present; otherwise, get the property directly. - if (typeof object[getter] === 'function') - return object[getter](); - else - return object[property]; - } - - var setProperty = function(object, setter, property, value) { - // Use setter method if present; otherwise, set the property directly. - if (typeof object[setter] === 'function') - object[setter](value); - else - object[property] = value; - } - - describe('LimitedWorld', function() { - it('should create an instance of LimitedWorld', function() { - // uncomment below and update the code to test LimitedWorld - //var instane = new vrchatapi.LimitedWorld(); - //expect(instance).to.be.a(vrchatapi.LimitedWorld); - }); - - it('should have the property authorId (base name: "authorId")', function() { - // uncomment below and update the code to test the property authorId - //var instance = new vrchatapi.LimitedWorld(); - //expect(instance).to.be(); - }); - - it('should have the property authorName (base name: "authorName")', function() { - // uncomment below and update the code to test the property authorName - //var instance = new vrchatapi.LimitedWorld(); - //expect(instance).to.be(); - }); - - it('should have the property capacity (base name: "capacity")', function() { - // uncomment below and update the code to test the property capacity - //var instance = new vrchatapi.LimitedWorld(); - //expect(instance).to.be(); - }); - - it('should have the property createdAt (base name: "created_at")', function() { - // uncomment below and update the code to test the property createdAt - //var instance = new vrchatapi.LimitedWorld(); - //expect(instance).to.be(); - }); - - it('should have the property favorites (base name: "favorites")', function() { - // uncomment below and update the code to test the property favorites - //var instance = new vrchatapi.LimitedWorld(); - //expect(instance).to.be(); - }); - - it('should have the property heat (base name: "heat")', function() { - // uncomment below and update the code to test the property heat - //var instance = new vrchatapi.LimitedWorld(); - //expect(instance).to.be(); - }); - - it('should have the property id (base name: "id")', function() { - // uncomment below and update the code to test the property id - //var instance = new vrchatapi.LimitedWorld(); - //expect(instance).to.be(); - }); - - it('should have the property imageUrl (base name: "imageUrl")', function() { - // uncomment below and update the code to test the property imageUrl - //var instance = new vrchatapi.LimitedWorld(); - //expect(instance).to.be(); - }); - - it('should have the property labsPublicationDate (base name: "labsPublicationDate")', function() { - // uncomment below and update the code to test the property labsPublicationDate - //var instance = new vrchatapi.LimitedWorld(); - //expect(instance).to.be(); - }); - - it('should have the property name (base name: "name")', function() { - // uncomment below and update the code to test the property name - //var instance = new vrchatapi.LimitedWorld(); - //expect(instance).to.be(); - }); - - it('should have the property occupants (base name: "occupants")', function() { - // uncomment below and update the code to test the property occupants - //var instance = new vrchatapi.LimitedWorld(); - //expect(instance).to.be(); - }); - - it('should have the property organization (base name: "organization")', function() { - // uncomment below and update the code to test the property organization - //var instance = new vrchatapi.LimitedWorld(); - //expect(instance).to.be(); - }); - - it('should have the property popularity (base name: "popularity")', function() { - // uncomment below and update the code to test the property popularity - //var instance = new vrchatapi.LimitedWorld(); - //expect(instance).to.be(); - }); - - it('should have the property publicationDate (base name: "publicationDate")', function() { - // uncomment below and update the code to test the property publicationDate - //var instance = new vrchatapi.LimitedWorld(); - //expect(instance).to.be(); - }); - - it('should have the property releaseStatus (base name: "releaseStatus")', function() { - // uncomment below and update the code to test the property releaseStatus - //var instance = new vrchatapi.LimitedWorld(); - //expect(instance).to.be(); - }); - - it('should have the property tags (base name: "tags")', function() { - // uncomment below and update the code to test the property tags - //var instance = new vrchatapi.LimitedWorld(); - //expect(instance).to.be(); - }); - - it('should have the property thumbnailImageUrl (base name: "thumbnailImageUrl")', function() { - // uncomment below and update the code to test the property thumbnailImageUrl - //var instance = new vrchatapi.LimitedWorld(); - //expect(instance).to.be(); - }); - - it('should have the property unityPackages (base name: "unityPackages")', function() { - // uncomment below and update the code to test the property unityPackages - //var instance = new vrchatapi.LimitedWorld(); - //expect(instance).to.be(); - }); - - it('should have the property updatedAt (base name: "updated_at")', function() { - // uncomment below and update the code to test the property updatedAt - //var instance = new vrchatapi.LimitedWorld(); - //expect(instance).to.be(); - }); - - }); - -})); diff --git a/test/model/MIMEType.spec.js b/test/model/MIMEType.spec.js deleted file mode 100644 index 757f617..0000000 --- a/test/model/MIMEType.spec.js +++ /dev/null @@ -1,58 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -(function(root, factory) { - if (typeof define === 'function' && define.amd) { - // AMD. - define(['expect.js', process.cwd()+'/src/index'], factory); - } else if (typeof module === 'object' && module.exports) { - // CommonJS-like environments that support module.exports, like Node. - factory(require('expect.js'), require(process.cwd()+'/src/index')); - } else { - // Browser globals (root is window) - factory(root.expect, root.vrchatapi); - } -}(this, function(expect, vrchatapi) { - 'use strict'; - - var instance; - - beforeEach(function() { - }); - - var getProperty = function(object, getter, property) { - // Use getter method if present; otherwise, get the property directly. - if (typeof object[getter] === 'function') - return object[getter](); - else - return object[property]; - } - - var setProperty = function(object, setter, property, value) { - // Use setter method if present; otherwise, set the property directly. - if (typeof object[setter] === 'function') - object[setter](value); - else - object[property] = value; - } - - describe('MIMEType', function() { - it('should create an instance of MIMEType', function() { - // uncomment below and update the code to test MIMEType - //var instane = new vrchatapi.MIMEType(); - //expect(instance).to.be.a(vrchatapi.MIMEType); - }); - - }); - -})); diff --git a/test/model/Notification.spec.js b/test/model/Notification.spec.js deleted file mode 100644 index 2fcf21b..0000000 --- a/test/model/Notification.spec.js +++ /dev/null @@ -1,107 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -(function(root, factory) { - if (typeof define === 'function' && define.amd) { - // AMD. - define(['expect.js', process.cwd()+'/src/index'], factory); - } else if (typeof module === 'object' && module.exports) { - // CommonJS-like environments that support module.exports, like Node. - factory(require('expect.js'), require(process.cwd()+'/src/index')); - } else { - // Browser globals (root is window) - factory(root.expect, root.vrchatapi); - } -}(this, function(expect, vrchatapi) { - 'use strict'; - - var instance; - - beforeEach(function() { - instance = new vrchatapi.Notification(); - }); - - var getProperty = function(object, getter, property) { - // Use getter method if present; otherwise, get the property directly. - if (typeof object[getter] === 'function') - return object[getter](); - else - return object[property]; - } - - var setProperty = function(object, setter, property, value) { - // Use setter method if present; otherwise, set the property directly. - if (typeof object[setter] === 'function') - object[setter](value); - else - object[property] = value; - } - - describe('Notification', function() { - it('should create an instance of Notification', function() { - // uncomment below and update the code to test Notification - //var instane = new vrchatapi.Notification(); - //expect(instance).to.be.a(vrchatapi.Notification); - }); - - it('should have the property id (base name: "id")', function() { - // uncomment below and update the code to test the property id - //var instance = new vrchatapi.Notification(); - //expect(instance).to.be(); - }); - - it('should have the property senderUserId (base name: "senderUserId")', function() { - // uncomment below and update the code to test the property senderUserId - //var instance = new vrchatapi.Notification(); - //expect(instance).to.be(); - }); - - it('should have the property senderUsername (base name: "senderUsername")', function() { - // uncomment below and update the code to test the property senderUsername - //var instance = new vrchatapi.Notification(); - //expect(instance).to.be(); - }); - - it('should have the property type (base name: "type")', function() { - // uncomment below and update the code to test the property type - //var instance = new vrchatapi.Notification(); - //expect(instance).to.be(); - }); - - it('should have the property message (base name: "message")', function() { - // uncomment below and update the code to test the property message - //var instance = new vrchatapi.Notification(); - //expect(instance).to.be(); - }); - - it('should have the property details (base name: "details")', function() { - // uncomment below and update the code to test the property details - //var instance = new vrchatapi.Notification(); - //expect(instance).to.be(); - }); - - it('should have the property seen (base name: "seen")', function() { - // uncomment below and update the code to test the property seen - //var instance = new vrchatapi.Notification(); - //expect(instance).to.be(); - }); - - it('should have the property createdAt (base name: "created_at")', function() { - // uncomment below and update the code to test the property createdAt - //var instance = new vrchatapi.Notification(); - //expect(instance).to.be(); - }); - - }); - -})); diff --git a/test/model/NotificationType.spec.js b/test/model/NotificationType.spec.js deleted file mode 100644 index e9eed26..0000000 --- a/test/model/NotificationType.spec.js +++ /dev/null @@ -1,58 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -(function(root, factory) { - if (typeof define === 'function' && define.amd) { - // AMD. - define(['expect.js', process.cwd()+'/src/index'], factory); - } else if (typeof module === 'object' && module.exports) { - // CommonJS-like environments that support module.exports, like Node. - factory(require('expect.js'), require(process.cwd()+'/src/index')); - } else { - // Browser globals (root is window) - factory(root.expect, root.vrchatapi); - } -}(this, function(expect, vrchatapi) { - 'use strict'; - - var instance; - - beforeEach(function() { - }); - - var getProperty = function(object, getter, property) { - // Use getter method if present; otherwise, get the property directly. - if (typeof object[getter] === 'function') - return object[getter](); - else - return object[property]; - } - - var setProperty = function(object, setter, property, value) { - // Use setter method if present; otherwise, set the property directly. - if (typeof object[setter] === 'function') - object[setter](value); - else - object[property] = value; - } - - describe('NotificationType', function() { - it('should create an instance of NotificationType', function() { - // uncomment below and update the code to test NotificationType - //var instane = new vrchatapi.NotificationType(); - //expect(instance).to.be.a(vrchatapi.NotificationType); - }); - - }); - -})); diff --git a/test/model/ReleaseStatus.spec.js b/test/model/ReleaseStatus.spec.js deleted file mode 100644 index 263150e..0000000 --- a/test/model/ReleaseStatus.spec.js +++ /dev/null @@ -1,58 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -(function(root, factory) { - if (typeof define === 'function' && define.amd) { - // AMD. - define(['expect.js', process.cwd()+'/src/index'], factory); - } else if (typeof module === 'object' && module.exports) { - // CommonJS-like environments that support module.exports, like Node. - factory(require('expect.js'), require(process.cwd()+'/src/index')); - } else { - // Browser globals (root is window) - factory(root.expect, root.vrchatapi); - } -}(this, function(expect, vrchatapi) { - 'use strict'; - - var instance; - - beforeEach(function() { - }); - - var getProperty = function(object, getter, property) { - // Use getter method if present; otherwise, get the property directly. - if (typeof object[getter] === 'function') - return object[getter](); - else - return object[property]; - } - - var setProperty = function(object, setter, property, value) { - // Use setter method if present; otherwise, set the property directly. - if (typeof object[setter] === 'function') - object[setter](value); - else - object[property] = value; - } - - describe('ReleaseStatus', function() { - it('should create an instance of ReleaseStatus', function() { - // uncomment below and update the code to test ReleaseStatus - //var instane = new vrchatapi.ReleaseStatus(); - //expect(instance).to.be.a(vrchatapi.ReleaseStatus); - }); - - }); - -})); diff --git a/test/model/Response.spec.js b/test/model/Response.spec.js deleted file mode 100644 index 063fa62..0000000 --- a/test/model/Response.spec.js +++ /dev/null @@ -1,71 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -(function(root, factory) { - if (typeof define === 'function' && define.amd) { - // AMD. - define(['expect.js', process.cwd()+'/src/index'], factory); - } else if (typeof module === 'object' && module.exports) { - // CommonJS-like environments that support module.exports, like Node. - factory(require('expect.js'), require(process.cwd()+'/src/index')); - } else { - // Browser globals (root is window) - factory(root.expect, root.vrchatapi); - } -}(this, function(expect, vrchatapi) { - 'use strict'; - - var instance; - - beforeEach(function() { - instance = new vrchatapi.Response(); - }); - - var getProperty = function(object, getter, property) { - // Use getter method if present; otherwise, get the property directly. - if (typeof object[getter] === 'function') - return object[getter](); - else - return object[property]; - } - - var setProperty = function(object, setter, property, value) { - // Use setter method if present; otherwise, set the property directly. - if (typeof object[setter] === 'function') - object[setter](value); - else - object[property] = value; - } - - describe('Response', function() { - it('should create an instance of Response', function() { - // uncomment below and update the code to test Response - //var instane = new vrchatapi.Response(); - //expect(instance).to.be.a(vrchatapi.Response); - }); - - it('should have the property message (base name: "message")', function() { - // uncomment below and update the code to test the property message - //var instance = new vrchatapi.Response(); - //expect(instance).to.be(); - }); - - it('should have the property statusCode (base name: "status_code")', function() { - // uncomment below and update the code to test the property statusCode - //var instance = new vrchatapi.Response(); - //expect(instance).to.be(); - }); - - }); - -})); diff --git a/test/model/Success.spec.js b/test/model/Success.spec.js deleted file mode 100644 index fbab21d..0000000 --- a/test/model/Success.spec.js +++ /dev/null @@ -1,65 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -(function(root, factory) { - if (typeof define === 'function' && define.amd) { - // AMD. - define(['expect.js', process.cwd()+'/src/index'], factory); - } else if (typeof module === 'object' && module.exports) { - // CommonJS-like environments that support module.exports, like Node. - factory(require('expect.js'), require(process.cwd()+'/src/index')); - } else { - // Browser globals (root is window) - factory(root.expect, root.vrchatapi); - } -}(this, function(expect, vrchatapi) { - 'use strict'; - - var instance; - - beforeEach(function() { - instance = new vrchatapi.Success(); - }); - - var getProperty = function(object, getter, property) { - // Use getter method if present; otherwise, get the property directly. - if (typeof object[getter] === 'function') - return object[getter](); - else - return object[property]; - } - - var setProperty = function(object, setter, property, value) { - // Use setter method if present; otherwise, set the property directly. - if (typeof object[setter] === 'function') - object[setter](value); - else - object[property] = value; - } - - describe('Success', function() { - it('should create an instance of Success', function() { - // uncomment below and update the code to test Success - //var instane = new vrchatapi.Success(); - //expect(instance).to.be.a(vrchatapi.Success); - }); - - it('should have the property success (base name: "success")', function() { - // uncomment below and update the code to test the property success - //var instance = new vrchatapi.Success(); - //expect(instance).to.be(); - }); - - }); - -})); diff --git a/test/model/User.spec.js b/test/model/User.spec.js deleted file mode 100644 index 1f0c66f..0000000 --- a/test/model/User.spec.js +++ /dev/null @@ -1,203 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -(function(root, factory) { - if (typeof define === 'function' && define.amd) { - // AMD. - define(['expect.js', process.cwd()+'/src/index'], factory); - } else if (typeof module === 'object' && module.exports) { - // CommonJS-like environments that support module.exports, like Node. - factory(require('expect.js'), require(process.cwd()+'/src/index')); - } else { - // Browser globals (root is window) - factory(root.expect, root.vrchatapi); - } -}(this, function(expect, vrchatapi) { - 'use strict'; - - var instance; - - beforeEach(function() { - instance = new vrchatapi.User(); - }); - - var getProperty = function(object, getter, property) { - // Use getter method if present; otherwise, get the property directly. - if (typeof object[getter] === 'function') - return object[getter](); - else - return object[property]; - } - - var setProperty = function(object, setter, property, value) { - // Use setter method if present; otherwise, set the property directly. - if (typeof object[setter] === 'function') - object[setter](value); - else - object[property] = value; - } - - describe('User', function() { - it('should create an instance of User', function() { - // uncomment below and update the code to test User - //var instane = new vrchatapi.User(); - //expect(instance).to.be.a(vrchatapi.User); - }); - - it('should have the property id (base name: "id")', function() { - // uncomment below and update the code to test the property id - //var instance = new vrchatapi.User(); - //expect(instance).to.be(); - }); - - it('should have the property username (base name: "username")', function() { - // uncomment below and update the code to test the property username - //var instance = new vrchatapi.User(); - //expect(instance).to.be(); - }); - - it('should have the property displayName (base name: "displayName")', function() { - // uncomment below and update the code to test the property displayName - //var instance = new vrchatapi.User(); - //expect(instance).to.be(); - }); - - it('should have the property userIcon (base name: "userIcon")', function() { - // uncomment below and update the code to test the property userIcon - //var instance = new vrchatapi.User(); - //expect(instance).to.be(); - }); - - it('should have the property bio (base name: "bio")', function() { - // uncomment below and update the code to test the property bio - //var instance = new vrchatapi.User(); - //expect(instance).to.be(); - }); - - it('should have the property bioLinks (base name: "bioLinks")', function() { - // uncomment below and update the code to test the property bioLinks - //var instance = new vrchatapi.User(); - //expect(instance).to.be(); - }); - - it('should have the property profilePicOverride (base name: "profilePicOverride")', function() { - // uncomment below and update the code to test the property profilePicOverride - //var instance = new vrchatapi.User(); - //expect(instance).to.be(); - }); - - it('should have the property statusDescription (base name: "statusDescription")', function() { - // uncomment below and update the code to test the property statusDescription - //var instance = new vrchatapi.User(); - //expect(instance).to.be(); - }); - - it('should have the property currentAvatarImageUrl (base name: "currentAvatarImageUrl")', function() { - // uncomment below and update the code to test the property currentAvatarImageUrl - //var instance = new vrchatapi.User(); - //expect(instance).to.be(); - }); - - it('should have the property currentAvatarThumbnailImageUrl (base name: "currentAvatarThumbnailImageUrl")', function() { - // uncomment below and update the code to test the property currentAvatarThumbnailImageUrl - //var instance = new vrchatapi.User(); - //expect(instance).to.be(); - }); - - it('should have the property fallbackAvatar (base name: "fallbackAvatar")', function() { - // uncomment below and update the code to test the property fallbackAvatar - //var instance = new vrchatapi.User(); - //expect(instance).to.be(); - }); - - it('should have the property state (base name: "state")', function() { - // uncomment below and update the code to test the property state - //var instance = new vrchatapi.User(); - //expect(instance).to.be(); - }); - - it('should have the property tags (base name: "tags")', function() { - // uncomment below and update the code to test the property tags - //var instance = new vrchatapi.User(); - //expect(instance).to.be(); - }); - - it('should have the property developerType (base name: "developerType")', function() { - // uncomment below and update the code to test the property developerType - //var instance = new vrchatapi.User(); - //expect(instance).to.be(); - }); - - it('should have the property lastLogin (base name: "last_login")', function() { - // uncomment below and update the code to test the property lastLogin - //var instance = new vrchatapi.User(); - //expect(instance).to.be(); - }); - - it('should have the property lastPlatform (base name: "last_platform")', function() { - // uncomment below and update the code to test the property lastPlatform - //var instance = new vrchatapi.User(); - //expect(instance).to.be(); - }); - - it('should have the property allowAvatarCopying (base name: "allowAvatarCopying")', function() { - // uncomment below and update the code to test the property allowAvatarCopying - //var instance = new vrchatapi.User(); - //expect(instance).to.be(); - }); - - it('should have the property status (base name: "status")', function() { - // uncomment below and update the code to test the property status - //var instance = new vrchatapi.User(); - //expect(instance).to.be(); - }); - - it('should have the property dateJoined (base name: "date_joined")', function() { - // uncomment below and update the code to test the property dateJoined - //var instance = new vrchatapi.User(); - //expect(instance).to.be(); - }); - - it('should have the property isFriend (base name: "isFriend")', function() { - // uncomment below and update the code to test the property isFriend - //var instance = new vrchatapi.User(); - //expect(instance).to.be(); - }); - - it('should have the property friendKey (base name: "friendKey")', function() { - // uncomment below and update the code to test the property friendKey - //var instance = new vrchatapi.User(); - //expect(instance).to.be(); - }); - - it('should have the property worldId (base name: "worldId")', function() { - // uncomment below and update the code to test the property worldId - //var instance = new vrchatapi.User(); - //expect(instance).to.be(); - }); - - it('should have the property instanceId (base name: "instanceId")', function() { - // uncomment below and update the code to test the property instanceId - //var instance = new vrchatapi.User(); - //expect(instance).to.be(); - }); - - it('should have the property location (base name: "location")', function() { - // uncomment below and update the code to test the property location - //var instance = new vrchatapi.User(); - //expect(instance).to.be(); - }); - - }); - -})); diff --git a/test/model/UserState.spec.js b/test/model/UserState.spec.js deleted file mode 100644 index ea74aa6..0000000 --- a/test/model/UserState.spec.js +++ /dev/null @@ -1,58 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -(function(root, factory) { - if (typeof define === 'function' && define.amd) { - // AMD. - define(['expect.js', process.cwd()+'/src/index'], factory); - } else if (typeof module === 'object' && module.exports) { - // CommonJS-like environments that support module.exports, like Node. - factory(require('expect.js'), require(process.cwd()+'/src/index')); - } else { - // Browser globals (root is window) - factory(root.expect, root.vrchatapi); - } -}(this, function(expect, vrchatapi) { - 'use strict'; - - var instance; - - beforeEach(function() { - }); - - var getProperty = function(object, getter, property) { - // Use getter method if present; otherwise, get the property directly. - if (typeof object[getter] === 'function') - return object[getter](); - else - return object[property]; - } - - var setProperty = function(object, setter, property, value) { - // Use setter method if present; otherwise, set the property directly. - if (typeof object[setter] === 'function') - object[setter](value); - else - object[property] = value; - } - - describe('UserState', function() { - it('should create an instance of UserState', function() { - // uncomment below and update the code to test UserState - //var instane = new vrchatapi.UserState(); - //expect(instance).to.be.a(vrchatapi.UserState); - }); - - }); - -})); diff --git a/test/model/UserStatus.spec.js b/test/model/UserStatus.spec.js deleted file mode 100644 index 9283c9a..0000000 --- a/test/model/UserStatus.spec.js +++ /dev/null @@ -1,58 +0,0 @@ -/** - * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) - * - * The version of the OpenAPI document: 1.0.0 - * Contact: me@ruby.js.org - * - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - * - */ - -(function(root, factory) { - if (typeof define === 'function' && define.amd) { - // AMD. - define(['expect.js', process.cwd()+'/src/index'], factory); - } else if (typeof module === 'object' && module.exports) { - // CommonJS-like environments that support module.exports, like Node. - factory(require('expect.js'), require(process.cwd()+'/src/index')); - } else { - // Browser globals (root is window) - factory(root.expect, root.vrchatapi); - } -}(this, function(expect, vrchatapi) { - 'use strict'; - - var instance; - - beforeEach(function() { - }); - - var getProperty = function(object, getter, property) { - // Use getter method if present; otherwise, get the property directly. - if (typeof object[getter] === 'function') - return object[getter](); - else - return object[property]; - } - - var setProperty = function(object, setter, property, value) { - // Use setter method if present; otherwise, set the property directly. - if (typeof object[setter] === 'function') - object[setter](value); - else - object[property] = value; - } - - describe('UserStatus', function() { - it('should create an instance of UserStatus', function() { - // uncomment below and update the code to test UserStatus - //var instane = new vrchatapi.UserStatus(); - //expect(instance).to.be.a(vrchatapi.UserStatus); - }); - - }); - -})); diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 0000000..2f27acb --- /dev/null +++ b/tsconfig.json @@ -0,0 +1,21 @@ +{ + "compilerOptions": { + "declaration": true, + "target": "es5", + "module": "commonjs", + "noImplicitAny": true, + "outDir": "dist", + "rootDir": ".", + "lib": [ + "es6", + "dom" + ], + "typeRoots": [ + "node_modules/@types" + ] + }, + "exclude": [ + "dist", + "node_modules" + ] +} From 33d64c22d8ddc0e31a05386a6aeb9a5fa7c9bd74 Mon Sep 17 00:00:00 2001 From: Foorack Date: Sat, 7 Aug 2021 00:01:57 +0200 Subject: [PATCH 010/130] chore: remove temporary test file --- foorack.js | 9 --------- 1 file changed, 9 deletions(-) delete mode 100644 foorack.js diff --git a/foorack.js b/foorack.js deleted file mode 100644 index 330cee5..0000000 --- a/foorack.js +++ /dev/null @@ -1,9 +0,0 @@ -const { SystemApi } = require("./dist"); -const system = new SystemApi(); - -system.getHealth().then(r => { - console.log(r.data); -}); -system.getCurrentOnlineUsers().then(r => { - console.log(`Current online users: ${r.data}`); -}); From 9c8d8369070a24e5d6b0776180ae47a5203e3304 Mon Sep 17 00:00:00 2001 From: Foorack Date: Sat, 7 Aug 2021 00:02:11 +0200 Subject: [PATCH 011/130] fix: state correct license --- generate.sh | 20 ++++++-------------- package.json | 2 +- 2 files changed, 7 insertions(+), 15 deletions(-) diff --git a/generate.sh b/generate.sh index b73a1b1..869dc96 100644 --- a/generate.sh +++ b/generate.sh @@ -1,16 +1,5 @@ #!/bin/bash -# Generate Client -#rm src docs test -rf -#openapi-generator-cli generate \ -#-g javascript \ -#--additional-properties=projectName=vrchatapi,usePromises=true,moduleName=vrchatapi \ -#--git-user-id=vrchatapi \ -#--git-repo-id=vrchatapi-node \ -#-o . \ -#-i ../specification/openapi.yaml \ -#--http-user-agent="vrchatapi-node" - rm src docs test -rf openapi-generator-cli generate \ -g typescript-axios \ @@ -21,6 +10,9 @@ openapi-generator-cli generate \ -i ../specification/openapi.yaml \ --http-user-agent="vrchatapi-node" +# Modify package.json +sed -i 's/Unlicense/MIT/g' ./package.json + # Remove unwanted lines from README #sed -i '/Uncomment the following line to set a prefix/d' ./README.md #sed -i '/apiKeyPrefix/d' ./README.md @@ -28,7 +20,7 @@ openapi-generator-cli generate \ #sed -i '/apiKeyPrefix/d' ./docs/*.md #sed -i 's/api.deleteUserById/api.getUser/g' ./README.md -#sed -i 's/@default false/@default true/g' ./src/ApiClient.js -#sed -i 's/enableCookies = false/enableCookies = true/g' ./src/ApiClient.js +#sed -i '/Uncomment the following line to set a prefix/d' ./README.md -#npm run build \ No newline at end of file +npm install +npm run build \ No newline at end of file diff --git a/package.json b/package.json index 9b4b232..f15d0d3 100644 --- a/package.json +++ b/package.json @@ -10,7 +10,7 @@ "openapi-generator", "vrchatapi" ], - "license": "Unlicense", + "license": "MIT", "main": "./dist/index.js", "typings": "./dist/index.d.ts", "scripts": { From 6617b6a4b52643f3ec94e04bf1f4430948096b03 Mon Sep 17 00:00:00 2001 From: Foorack Date: Sat, 7 Aug 2021 01:31:32 +0200 Subject: [PATCH 012/130] chore: update license owners --- LICENSE | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/LICENSE b/LICENSE index ad4b3c7..204dec1 100644 --- a/LICENSE +++ b/LICENSE @@ -1,6 +1,6 @@ The MIT License (MIT) -Copyright (c) 2021 Rubybb and individual contributors. +Copyright (c) 2021 Owners of GitHub organisation "vrchatapi" and individual contributors. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal From 6e3edd73d3bec7e80f8503d96345fa53910d9d91 Mon Sep 17 00:00:00 2001 From: Foorack Date: Sat, 7 Aug 2021 20:58:19 +0200 Subject: [PATCH 013/130] feature: generate based on worlds branch --- api.ts | 1838 ++++++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 1804 insertions(+), 34 deletions(-) diff --git a/api.ts b/api.ts index 9247420..b7d7afa 100644 --- a/api.ts +++ b/api.ts @@ -882,10 +882,10 @@ export interface CurrentUser { last_login: string; /** * - * @type {string} + * @type {Platform} * @memberof CurrentUser */ - last_platform: string; + last_platform: Platform; /** * * @type {boolean} @@ -1243,6 +1243,188 @@ export enum InlineObject4MaxPartsEnum { _0 = '0' } +/** + * + * @export + * @interface InlineObject5 + */ +export interface InlineObject5 { + /** + * + * @type {string} + * @memberof InlineObject5 + */ + assetUrl: string; + /** + * + * @type {string} + * @memberof InlineObject5 + */ + assetVersion?: string; + /** + * + * @type {string} + * @memberof InlineObject5 + */ + authorId?: string; + /** + * + * @type {string} + * @memberof InlineObject5 + */ + authorName?: string; + /** + * + * @type {number} + * @memberof InlineObject5 + */ + capacity?: number; + /** + * + * @type {string} + * @memberof InlineObject5 + */ + description?: string; + /** + * + * @type {string} + * @memberof InlineObject5 + */ + id?: string; + /** + * + * @type {string} + * @memberof InlineObject5 + */ + imageUrl: string; + /** + * + * @type {string} + * @memberof InlineObject5 + */ + name: string; + /** + * + * @type {Platform} + * @memberof InlineObject5 + */ + platform?: Platform; + /** + * + * @type {ReleaseStatus} + * @memberof InlineObject5 + */ + releaseStatus?: ReleaseStatus; + /** + * + * @type {Array} + * @memberof InlineObject5 + */ + tags?: Array; + /** + * + * @type {string} + * @memberof InlineObject5 + */ + unityPackageUrl?: string; + /** + * + * @type {string} + * @memberof InlineObject5 + */ + unityVersion?: string; +} +/** + * + * @export + * @interface InlineObject6 + */ +export interface InlineObject6 { + /** + * + * @type {string} + * @memberof InlineObject6 + */ + assetUrl?: string; + /** + * + * @type {string} + * @memberof InlineObject6 + */ + assetVersion?: string; + /** + * + * @type {string} + * @memberof InlineObject6 + */ + authorId?: string; + /** + * + * @type {string} + * @memberof InlineObject6 + */ + authorName?: string; + /** + * + * @type {number} + * @memberof InlineObject6 + */ + capacity?: number; + /** + * + * @type {string} + * @memberof InlineObject6 + */ + description?: string; + /** + * + * @type {string} + * @memberof InlineObject6 + */ + id?: string; + /** + * + * @type {string} + * @memberof InlineObject6 + */ + imageUrl?: string; + /** + * + * @type {string} + * @memberof InlineObject6 + */ + name?: string; + /** + * + * @type {Platform} + * @memberof InlineObject6 + */ + platform?: Platform; + /** + * + * @type {ReleaseStatus} + * @memberof InlineObject6 + */ + releaseStatus?: ReleaseStatus; + /** + * + * @type {Array} + * @memberof InlineObject6 + */ + tags?: Array; + /** + * + * @type {string} + * @memberof InlineObject6 + */ + unityPackageUrl?: string; + /** + * + * @type {string} + * @memberof InlineObject6 + */ + unityVersion?: string; +} /** * * @export @@ -1381,6 +1563,38 @@ export interface InlineResponse2005 { */ url: string; } +/** + * + * @export + * @interface InlineResponse2006 + */ +export interface InlineResponse2006 { + /** + * + * @type {string} + * @memberof InlineResponse2006 + */ + id: string; + /** + * + * @type {object} + * @memberof InlineResponse2006 + */ + metadata: object; +} +/** + * + * @export + * @interface InlineResponse2007 + */ +export interface InlineResponse2007 { + /** + * + * @type {boolean} + * @memberof InlineResponse2007 + */ + canPubilsh: boolean; +} /** * * @export @@ -1394,6 +1608,25 @@ export interface InlineResponse401 { */ error: Error; } +/** + * + * @export + * @interface LimitedUnityPackage + */ +export interface LimitedUnityPackage { + /** + * + * @type {Platform} + * @memberof LimitedUnityPackage + */ + platform: Platform; + /** + * + * @type {string} + * @memberof LimitedUnityPackage + */ + unityVersion: string; +} /** * * @export @@ -1468,10 +1701,10 @@ export interface LimitedUser { developerType: DeveloperType; /** * - * @type {string} + * @type {Platform} * @memberof LimitedUser */ - last_platform: string; + last_platform: Platform; /** * * @type {UserStatus} @@ -1497,6 +1730,127 @@ export interface LimitedUser { */ tags: Array; } +/** + * + * @export + * @interface LimitedWorld + */ +export interface LimitedWorld { + /** + * + * @type {string} + * @memberof LimitedWorld + */ + id: string; + /** + * + * @type {string} + * @memberof LimitedWorld + */ + name: string; + /** + * + * @type {string} + * @memberof LimitedWorld + */ + authorId: string; + /** + * + * @type {string} + * @memberof LimitedWorld + */ + authorName: string; + /** + * + * @type {number} + * @memberof LimitedWorld + */ + capacity: number; + /** + * + * @type {string} + * @memberof LimitedWorld + */ + imageUrl: string; + /** + * + * @type {string} + * @memberof LimitedWorld + */ + thumbnailImageUrl: string; + /** + * + * @type {string} + * @memberof LimitedWorld + */ + releaseStatus: string; + /** + * + * @type {string} + * @memberof LimitedWorld + */ + organization: string; + /** + * + * @type {Array} + * @memberof LimitedWorld + */ + tags: Array; + /** + * + * @type {number} + * @memberof LimitedWorld + */ + favorites: number; + /** + * + * @type {string} + * @memberof LimitedWorld + */ + created_at: string; + /** + * + * @type {string} + * @memberof LimitedWorld + */ + updated_at: string; + /** + * + * @type {string} + * @memberof LimitedWorld + */ + publicationDate: string; + /** + * + * @type {string} + * @memberof LimitedWorld + */ + labsPublicationDate: string; + /** + * + * @type {Set} + * @memberof LimitedWorld + */ + unityPackages: Set; + /** + * + * @type {number} + * @memberof LimitedWorld + */ + popularity: number; + /** + * + * @type {number} + * @memberof LimitedWorld + */ + heat: number; + /** + * + * @type {number} + * @memberof LimitedWorld + */ + occupants: number; +} /** * * @export @@ -1504,17 +1858,17 @@ export interface LimitedUser { */ export enum MIMEType { - Imagejpeg = 'image⁄jpeg', - Imagejpg = 'image⁄jpg', - Imagepng = 'image⁄png', - Imagewebp = 'image⁄webp', - Imagegif = 'image⁄gif', - Imagebmp = 'image⁄bmp', - Imagesvgxml = 'image⁄svg+xml', - Imagetiff = 'image⁄tiff', - ApplicationxAvatar = 'application⁄x-avatar', - ApplicationxWorld = 'application⁄x-world', - Applicationgzip = 'application⁄gzip', + ImageJpeg = 'image/jpeg', + ImageJpg = 'image/jpg', + ImagePng = 'image/png', + ImageWebp = 'image/webp', + ImageGif = 'image/gif', + ImageBmp = 'image/bmp', + ImageSvgxml = 'image/svg+xml', + ImageTiff = 'image/tiff', + ApplicationXAvatar = 'application/x-avatar', + ApplicationXWorld = 'application/x-world', + ApplicationGzip = 'application/gzip', ApplicationXRsyncSignature = 'application/x-rsync-signature', ApplicationXRsyncDelta = 'application/x-rsync-delta', ApplicationOctetStream = 'application/octet-stream' @@ -1656,21 +2010,44 @@ export enum NotificationType { /** * * @export - * @interface Response + * @enum {string} */ -export interface Response { - /** - * - * @type {string} - * @memberof Response - */ - message: string; - /** - * - * @type {number} - * @memberof Response - */ - status_code: number; + +export enum Platform { + Standalonewindows = 'standalonewindows', + Android = 'android' +} + +/** + * + * @export + * @enum {string} + */ + +export enum ReleaseStatus { + Public = 'public', + Private = 'private', + Hidden = 'hidden' +} + +/** + * + * @export + * @interface Response + */ +export interface Response { + /** + * + * @type {string} + * @memberof Response + */ + message: string; + /** + * + * @type {number} + * @memberof Response + */ + status_code: number; } /** * @@ -1685,6 +2062,73 @@ export interface Success { */ success?: Response; } +/** + * + * @export + * @interface UnityPackage + */ +export interface UnityPackage { + /** + * + * @type {string} + * @memberof UnityPackage + */ + id: string; + /** + * + * @type {string} + * @memberof UnityPackage + */ + assetUrl: string; + /** + * + * @type {object} + * @memberof UnityPackage + */ + assetUrlObject: object; + /** + * + * @type {string} + * @memberof UnityPackage + */ + pluginUrl: string; + /** + * + * @type {object} + * @memberof UnityPackage + */ + pluginUrlObject: object; + /** + * + * @type {string} + * @memberof UnityPackage + */ + unityVersion: string; + /** + * + * @type {number} + * @memberof UnityPackage + */ + unitySortNumber: number; + /** + * + * @type {number} + * @memberof UnityPackage + */ + assetVersion: number; + /** + * + * @type {Platform} + * @memberof UnityPackage + */ + platform: Platform; + /** + * + * @type {string} + * @memberof UnityPackage + */ + created_at: string; +} /** * * @export @@ -1783,10 +2227,10 @@ export interface User { last_login: string; /** * - * @type {string} + * @type {Platform} * @memberof User */ - last_platform: string; + last_platform: Platform; /** * * @type {boolean} @@ -1822,19 +2266,19 @@ export interface User { * @type {string} * @memberof User */ - worldId: string; + worldId?: string; /** * * @type {string} * @memberof User */ - instanceId: string; + instanceId?: string; /** * * @type {string} * @memberof User */ - location: string; + location?: string; } /** * * \"online\" User is online in VRChat * \"active\" User is online, but not in VRChat * \"offline\" User is offline @@ -1862,6 +2306,205 @@ export enum UserStatus { Offline = 'offline' } +/** + * + * @export + * @interface World + */ +export interface World { + /** + * + * @type {string} + * @memberof World + */ + assetUrl: string; + /** + * + * @type {object} + * @memberof World + */ + assetUrlObject: object; + /** + * + * @type {string} + * @memberof World + */ + authorId: string; + /** + * + * @type {string} + * @memberof World + */ + authorName: string; + /** + * + * @type {number} + * @memberof World + */ + capacity: number; + /** + * + * @type {string} + * @memberof World + */ + created_at: string; + /** + * + * @type {string} + * @memberof World + */ + description: string; + /** + * + * @type {number} + * @memberof World + */ + favorites?: number; + /** + * + * @type {boolean} + * @memberof World + */ + featured: boolean; + /** + * + * @type {number} + * @memberof World + */ + heat: number; + /** + * + * @type {string} + * @memberof World + */ + id: string; + /** + * + * @type {string} + * @memberof World + */ + imageUrl: string; + /** + * + * @type {Array} + * @memberof World + */ + instances?: Array; + /** + * + * @type {string} + * @memberof World + */ + labsPublicationDate: string; + /** + * + * @type {string} + * @memberof World + */ + name: string; + /** + * + * @type {string} + * @memberof World + */ + namespace: string; + /** + * + * @type {number} + * @memberof World + */ + occupants?: number; + /** + * + * @type {string} + * @memberof World + */ + organization: string; + /** + * + * @type {object} + * @memberof World + */ + pluginUrlObject: object; + /** + * + * @type {number} + * @memberof World + */ + popularity: number; + /** + * + * @type {string} + * @memberof World + */ + previewYoutubeId?: string; + /** + * + * @type {number} + * @memberof World + */ + privateOccupants?: number; + /** + * + * @type {number} + * @memberof World + */ + publicOccupants?: number; + /** + * + * @type {string} + * @memberof World + */ + publicationDate: string; + /** + * + * @type {ReleaseStatus} + * @memberof World + */ + releaseStatus: ReleaseStatus; + /** + * + * @type {Array} + * @memberof World + */ + tags: Array; + /** + * + * @type {string} + * @memberof World + */ + thumbnailImageUrl: string; + /** + * + * @type {object} + * @memberof World + */ + unityPackageUrlObject: object; + /** + * + * @type {Set} + * @memberof World + */ + unityPackages: Set; + /** + * + * @type {string} + * @memberof World + */ + updated_at: string; + /** + * + * @type {number} + * @memberof World + */ + version: number; + /** + * + * @type {number} + * @memberof World + */ + visits: number; +} /** * AuthenticationApi - axios parameter creator @@ -4723,3 +5366,1130 @@ export class UsersApi extends BaseAPI { } +/** + * WorldsApi - axios parameter creator + * @export + */ +export const WorldsApiAxiosParamCreator = function (configuration?: Configuration) { + return { + /** + * Create a new world. This endpoint requires `assetUrl` to be a valid File object with `.vrcw` file extension, and `imageUrl` to be a valid File object with an image file extension. + * @summary Create World + * @param {InlineObject5} [inlineObject5] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + createWorld: async (inlineObject5?: InlineObject5, options: any = {}): Promise => { + const localVarPath = `/worlds`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(inlineObject5, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Delete a world. Notice a world is never fully \"deleted\", only its ReleaseStatus is set to \"hidden\" and the linked Files are deleted. The WorldID is permanently reserved. + * @summary Delete World + * @param {string} worldId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + deleteWorld: async (worldId: string, options: any = {}): Promise => { + // verify required parameter 'worldId' is not null or undefined + assertParamExists('deleteWorld', 'worldId', worldId) + const localVarPath = `/worlds/{worldId}` + .replace(`{${"worldId"}}`, encodeURIComponent(String(worldId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Search and list currently Active worlds by query filters. + * @summary List Active Worlds + * @param {string} [featured] Filters on featured results. + * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] + * @param {number} [n] The number of objects to return. + * @param {'ascending' | 'descending'} [order] + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [search] Filters by world name. + * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [notag] Tags to exclude (comma-separated). + * @param {'public' | 'private' | 'hidden'} [releaseStatus] Filter by ReleaseStatus. + * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. + * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. + * @param {string} [platform] The platform the asset supports. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getActiveWorlds: async (featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options: any = {}): Promise => { + const localVarPath = `/worlds/active`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + if (featured !== undefined) { + localVarQueryParameter['featured'] = featured; + } + + if (sort !== undefined) { + localVarQueryParameter['sort'] = sort; + } + + if (n !== undefined) { + localVarQueryParameter['n'] = n; + } + + if (order !== undefined) { + localVarQueryParameter['order'] = order; + } + + if (offset !== undefined) { + localVarQueryParameter['offset'] = offset; + } + + if (search !== undefined) { + localVarQueryParameter['search'] = search; + } + + if (tag !== undefined) { + localVarQueryParameter['tag'] = tag; + } + + if (notag !== undefined) { + localVarQueryParameter['notag'] = notag; + } + + if (releaseStatus !== undefined) { + localVarQueryParameter['releaseStatus'] = releaseStatus; + } + + if (maxUnityVersion !== undefined) { + localVarQueryParameter['maxUnityVersion'] = maxUnityVersion; + } + + if (minUnityVersion !== undefined) { + localVarQueryParameter['minUnityVersion'] = minUnityVersion; + } + + if (platform !== undefined) { + localVarQueryParameter['platform'] = platform; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Search and list favorited worlds by query filters. + * @summary List Favorited Worlds + * @param {string} [featured] Filters on featured results. + * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] + * @param {number} [n] The number of objects to return. + * @param {'ascending' | 'descending'} [order] + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [search] Filters by world name. + * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [notag] Tags to exclude (comma-separated). + * @param {'public' | 'private' | 'hidden'} [releaseStatus] Filter by ReleaseStatus. + * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. + * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. + * @param {string} [platform] The platform the asset supports. + * @param {string} [userId] Target user to see information on, admin-only. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFavoritedWorlds: async (featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options: any = {}): Promise => { + const localVarPath = `/worlds/favorites`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + if (featured !== undefined) { + localVarQueryParameter['featured'] = featured; + } + + if (sort !== undefined) { + localVarQueryParameter['sort'] = sort; + } + + if (n !== undefined) { + localVarQueryParameter['n'] = n; + } + + if (order !== undefined) { + localVarQueryParameter['order'] = order; + } + + if (offset !== undefined) { + localVarQueryParameter['offset'] = offset; + } + + if (search !== undefined) { + localVarQueryParameter['search'] = search; + } + + if (tag !== undefined) { + localVarQueryParameter['tag'] = tag; + } + + if (notag !== undefined) { + localVarQueryParameter['notag'] = notag; + } + + if (releaseStatus !== undefined) { + localVarQueryParameter['releaseStatus'] = releaseStatus; + } + + if (maxUnityVersion !== undefined) { + localVarQueryParameter['maxUnityVersion'] = maxUnityVersion; + } + + if (minUnityVersion !== undefined) { + localVarQueryParameter['minUnityVersion'] = minUnityVersion; + } + + if (platform !== undefined) { + localVarQueryParameter['platform'] = platform; + } + + if (userId !== undefined) { + localVarQueryParameter['userId'] = userId; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Search and list recently visited worlds by query filters. + * @summary List Recent Worlds + * @param {string} [featured] Filters on featured results. + * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] + * @param {number} [n] The number of objects to return. + * @param {'ascending' | 'descending'} [order] + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [search] Filters by world name. + * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [notag] Tags to exclude (comma-separated). + * @param {'public' | 'private' | 'hidden'} [releaseStatus] Filter by ReleaseStatus. + * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. + * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. + * @param {string} [platform] The platform the asset supports. + * @param {string} [userId] Target user to see information on, admin-only. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getRecentWorlds: async (featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options: any = {}): Promise => { + const localVarPath = `/worlds/recent`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + if (featured !== undefined) { + localVarQueryParameter['featured'] = featured; + } + + if (sort !== undefined) { + localVarQueryParameter['sort'] = sort; + } + + if (n !== undefined) { + localVarQueryParameter['n'] = n; + } + + if (order !== undefined) { + localVarQueryParameter['order'] = order; + } + + if (offset !== undefined) { + localVarQueryParameter['offset'] = offset; + } + + if (search !== undefined) { + localVarQueryParameter['search'] = search; + } + + if (tag !== undefined) { + localVarQueryParameter['tag'] = tag; + } + + if (notag !== undefined) { + localVarQueryParameter['notag'] = notag; + } + + if (releaseStatus !== undefined) { + localVarQueryParameter['releaseStatus'] = releaseStatus; + } + + if (maxUnityVersion !== undefined) { + localVarQueryParameter['maxUnityVersion'] = maxUnityVersion; + } + + if (minUnityVersion !== undefined) { + localVarQueryParameter['minUnityVersion'] = minUnityVersion; + } + + if (platform !== undefined) { + localVarQueryParameter['platform'] = platform; + } + + if (userId !== undefined) { + localVarQueryParameter['userId'] = userId; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get information about a specific World. + * @summary Get World by ID + * @param {string} worldId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getWorld: async (worldId: string, options: any = {}): Promise => { + // verify required parameter 'worldId' is not null or undefined + assertParamExists('getWorld', 'worldId', worldId) + const localVarPath = `/worlds/{worldId}` + .replace(`{${"worldId"}}`, encodeURIComponent(String(worldId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Returns a worlds custom metadata. This is currently believed to be unused. Metadata can be set with `updateWorld` and can be any arbitrary object. + * @summary Get World Metadata + * @param {string} worldId + * @param {*} [options] Override http request option. + * @deprecated + * @throws {RequiredError} + */ + getWorldMetadata: async (worldId: string, options: any = {}): Promise => { + // verify required parameter 'worldId' is not null or undefined + assertParamExists('getWorldMetadata', 'worldId', worldId) + const localVarPath = `/worlds/{worldId}/metadata` + .replace(`{${"worldId"}}`, encodeURIComponent(String(worldId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Returns a worlds publish status. This is currently believed to be unused. + * @summary Get World Publish Status + * @param {string} worldId + * @param {*} [options] Override http request option. + * @deprecated + * @throws {RequiredError} + */ + getWorldPublish: async (worldId: string, options: any = {}): Promise => { + // verify required parameter 'worldId' is not null or undefined + assertParamExists('getWorldPublish', 'worldId', worldId) + const localVarPath = `/worlds/{worldId}/publish` + .replace(`{${"worldId"}}`, encodeURIComponent(String(worldId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Search and list any worlds by query filters. + * @summary Search All Worlds + * @param {string} [featured] Filters on featured results. + * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] + * @param {'me'} [user] Set to `me` for searching own worlds. + * @param {string} [userId] Filter by author UserID + * @param {number} [n] The number of objects to return. + * @param {'ascending' | 'descending'} [order] + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [search] Filters by world name. + * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [notag] Tags to exclude (comma-separated). + * @param {'public' | 'private' | 'hidden'} [releaseStatus] Filter by ReleaseStatus. + * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. + * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. + * @param {string} [platform] The platform the asset supports. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + searchWorlds: async (featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options: any = {}): Promise => { + const localVarPath = `/worlds`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + if (featured !== undefined) { + localVarQueryParameter['featured'] = featured; + } + + if (sort !== undefined) { + localVarQueryParameter['sort'] = sort; + } + + if (user !== undefined) { + localVarQueryParameter['user'] = user; + } + + if (userId !== undefined) { + localVarQueryParameter['userId'] = userId; + } + + if (n !== undefined) { + localVarQueryParameter['n'] = n; + } + + if (order !== undefined) { + localVarQueryParameter['order'] = order; + } + + if (offset !== undefined) { + localVarQueryParameter['offset'] = offset; + } + + if (search !== undefined) { + localVarQueryParameter['search'] = search; + } + + if (tag !== undefined) { + localVarQueryParameter['tag'] = tag; + } + + if (notag !== undefined) { + localVarQueryParameter['notag'] = notag; + } + + if (releaseStatus !== undefined) { + localVarQueryParameter['releaseStatus'] = releaseStatus; + } + + if (maxUnityVersion !== undefined) { + localVarQueryParameter['maxUnityVersion'] = maxUnityVersion; + } + + if (minUnityVersion !== undefined) { + localVarQueryParameter['minUnityVersion'] = minUnityVersion; + } + + if (platform !== undefined) { + localVarQueryParameter['platform'] = platform; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Update information about a specific World. + * @summary Update World + * @param {string} worldId + * @param {InlineObject6} [inlineObject6] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + updateWorld: async (worldId: string, inlineObject6?: InlineObject6, options: any = {}): Promise => { + // verify required parameter 'worldId' is not null or undefined + assertParamExists('updateWorld', 'worldId', worldId) + const localVarPath = `/worlds/{worldId}` + .replace(`{${"worldId"}}`, encodeURIComponent(String(worldId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(inlineObject6, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + } +}; + +/** + * WorldsApi - functional programming interface + * @export + */ +export const WorldsApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = WorldsApiAxiosParamCreator(configuration) + return { + /** + * Create a new world. This endpoint requires `assetUrl` to be a valid File object with `.vrcw` file extension, and `imageUrl` to be a valid File object with an image file extension. + * @summary Create World + * @param {InlineObject5} [inlineObject5] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async createWorld(inlineObject5?: InlineObject5, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.createWorld(inlineObject5, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Delete a world. Notice a world is never fully \"deleted\", only its ReleaseStatus is set to \"hidden\" and the linked Files are deleted. The WorldID is permanently reserved. + * @summary Delete World + * @param {string} worldId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async deleteWorld(worldId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.deleteWorld(worldId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Search and list currently Active worlds by query filters. + * @summary List Active Worlds + * @param {string} [featured] Filters on featured results. + * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] + * @param {number} [n] The number of objects to return. + * @param {'ascending' | 'descending'} [order] + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [search] Filters by world name. + * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [notag] Tags to exclude (comma-separated). + * @param {'public' | 'private' | 'hidden'} [releaseStatus] Filter by ReleaseStatus. + * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. + * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. + * @param {string} [platform] The platform the asset supports. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getActiveWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getActiveWorlds(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Search and list favorited worlds by query filters. + * @summary List Favorited Worlds + * @param {string} [featured] Filters on featured results. + * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] + * @param {number} [n] The number of objects to return. + * @param {'ascending' | 'descending'} [order] + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [search] Filters by world name. + * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [notag] Tags to exclude (comma-separated). + * @param {'public' | 'private' | 'hidden'} [releaseStatus] Filter by ReleaseStatus. + * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. + * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. + * @param {string} [platform] The platform the asset supports. + * @param {string} [userId] Target user to see information on, admin-only. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getFavoritedWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getFavoritedWorlds(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Search and list recently visited worlds by query filters. + * @summary List Recent Worlds + * @param {string} [featured] Filters on featured results. + * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] + * @param {number} [n] The number of objects to return. + * @param {'ascending' | 'descending'} [order] + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [search] Filters by world name. + * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [notag] Tags to exclude (comma-separated). + * @param {'public' | 'private' | 'hidden'} [releaseStatus] Filter by ReleaseStatus. + * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. + * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. + * @param {string} [platform] The platform the asset supports. + * @param {string} [userId] Target user to see information on, admin-only. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getRecentWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getRecentWorlds(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Get information about a specific World. + * @summary Get World by ID + * @param {string} worldId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getWorld(worldId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getWorld(worldId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Returns a worlds custom metadata. This is currently believed to be unused. Metadata can be set with `updateWorld` and can be any arbitrary object. + * @summary Get World Metadata + * @param {string} worldId + * @param {*} [options] Override http request option. + * @deprecated + * @throws {RequiredError} + */ + async getWorldMetadata(worldId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getWorldMetadata(worldId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Returns a worlds publish status. This is currently believed to be unused. + * @summary Get World Publish Status + * @param {string} worldId + * @param {*} [options] Override http request option. + * @deprecated + * @throws {RequiredError} + */ + async getWorldPublish(worldId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getWorldPublish(worldId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Search and list any worlds by query filters. + * @summary Search All Worlds + * @param {string} [featured] Filters on featured results. + * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] + * @param {'me'} [user] Set to `me` for searching own worlds. + * @param {string} [userId] Filter by author UserID + * @param {number} [n] The number of objects to return. + * @param {'ascending' | 'descending'} [order] + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [search] Filters by world name. + * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [notag] Tags to exclude (comma-separated). + * @param {'public' | 'private' | 'hidden'} [releaseStatus] Filter by ReleaseStatus. + * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. + * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. + * @param {string} [platform] The platform the asset supports. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async searchWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.searchWorlds(featured, sort, user, userId, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Update information about a specific World. + * @summary Update World + * @param {string} worldId + * @param {InlineObject6} [inlineObject6] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async updateWorld(worldId: string, inlineObject6?: InlineObject6, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.updateWorld(worldId, inlineObject6, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + } +}; + +/** + * WorldsApi - factory interface + * @export + */ +export const WorldsApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = WorldsApiFp(configuration) + return { + /** + * Create a new world. This endpoint requires `assetUrl` to be a valid File object with `.vrcw` file extension, and `imageUrl` to be a valid File object with an image file extension. + * @summary Create World + * @param {InlineObject5} [inlineObject5] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + createWorld(inlineObject5?: InlineObject5, options?: any): AxiosPromise { + return localVarFp.createWorld(inlineObject5, options).then((request) => request(axios, basePath)); + }, + /** + * Delete a world. Notice a world is never fully \"deleted\", only its ReleaseStatus is set to \"hidden\" and the linked Files are deleted. The WorldID is permanently reserved. + * @summary Delete World + * @param {string} worldId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + deleteWorld(worldId: string, options?: any): AxiosPromise { + return localVarFp.deleteWorld(worldId, options).then((request) => request(axios, basePath)); + }, + /** + * Search and list currently Active worlds by query filters. + * @summary List Active Worlds + * @param {string} [featured] Filters on featured results. + * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] + * @param {number} [n] The number of objects to return. + * @param {'ascending' | 'descending'} [order] + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [search] Filters by world name. + * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [notag] Tags to exclude (comma-separated). + * @param {'public' | 'private' | 'hidden'} [releaseStatus] Filter by ReleaseStatus. + * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. + * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. + * @param {string} [platform] The platform the asset supports. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getActiveWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: any): AxiosPromise> { + return localVarFp.getActiveWorlds(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options).then((request) => request(axios, basePath)); + }, + /** + * Search and list favorited worlds by query filters. + * @summary List Favorited Worlds + * @param {string} [featured] Filters on featured results. + * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] + * @param {number} [n] The number of objects to return. + * @param {'ascending' | 'descending'} [order] + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [search] Filters by world name. + * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [notag] Tags to exclude (comma-separated). + * @param {'public' | 'private' | 'hidden'} [releaseStatus] Filter by ReleaseStatus. + * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. + * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. + * @param {string} [platform] The platform the asset supports. + * @param {string} [userId] Target user to see information on, admin-only. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFavoritedWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any): AxiosPromise> { + return localVarFp.getFavoritedWorlds(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options).then((request) => request(axios, basePath)); + }, + /** + * Search and list recently visited worlds by query filters. + * @summary List Recent Worlds + * @param {string} [featured] Filters on featured results. + * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] + * @param {number} [n] The number of objects to return. + * @param {'ascending' | 'descending'} [order] + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [search] Filters by world name. + * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [notag] Tags to exclude (comma-separated). + * @param {'public' | 'private' | 'hidden'} [releaseStatus] Filter by ReleaseStatus. + * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. + * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. + * @param {string} [platform] The platform the asset supports. + * @param {string} [userId] Target user to see information on, admin-only. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getRecentWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any): AxiosPromise> { + return localVarFp.getRecentWorlds(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options).then((request) => request(axios, basePath)); + }, + /** + * Get information about a specific World. + * @summary Get World by ID + * @param {string} worldId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getWorld(worldId: string, options?: any): AxiosPromise { + return localVarFp.getWorld(worldId, options).then((request) => request(axios, basePath)); + }, + /** + * Returns a worlds custom metadata. This is currently believed to be unused. Metadata can be set with `updateWorld` and can be any arbitrary object. + * @summary Get World Metadata + * @param {string} worldId + * @param {*} [options] Override http request option. + * @deprecated + * @throws {RequiredError} + */ + getWorldMetadata(worldId: string, options?: any): AxiosPromise { + return localVarFp.getWorldMetadata(worldId, options).then((request) => request(axios, basePath)); + }, + /** + * Returns a worlds publish status. This is currently believed to be unused. + * @summary Get World Publish Status + * @param {string} worldId + * @param {*} [options] Override http request option. + * @deprecated + * @throws {RequiredError} + */ + getWorldPublish(worldId: string, options?: any): AxiosPromise { + return localVarFp.getWorldPublish(worldId, options).then((request) => request(axios, basePath)); + }, + /** + * Search and list any worlds by query filters. + * @summary Search All Worlds + * @param {string} [featured] Filters on featured results. + * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] + * @param {'me'} [user] Set to `me` for searching own worlds. + * @param {string} [userId] Filter by author UserID + * @param {number} [n] The number of objects to return. + * @param {'ascending' | 'descending'} [order] + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [search] Filters by world name. + * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [notag] Tags to exclude (comma-separated). + * @param {'public' | 'private' | 'hidden'} [releaseStatus] Filter by ReleaseStatus. + * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. + * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. + * @param {string} [platform] The platform the asset supports. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + searchWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: any): AxiosPromise> { + return localVarFp.searchWorlds(featured, sort, user, userId, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options).then((request) => request(axios, basePath)); + }, + /** + * Update information about a specific World. + * @summary Update World + * @param {string} worldId + * @param {InlineObject6} [inlineObject6] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + updateWorld(worldId: string, inlineObject6?: InlineObject6, options?: any): AxiosPromise { + return localVarFp.updateWorld(worldId, inlineObject6, options).then((request) => request(axios, basePath)); + }, + }; +}; + +/** + * WorldsApi - object-oriented interface + * @export + * @class WorldsApi + * @extends {BaseAPI} + */ +export class WorldsApi extends BaseAPI { + /** + * Create a new world. This endpoint requires `assetUrl` to be a valid File object with `.vrcw` file extension, and `imageUrl` to be a valid File object with an image file extension. + * @summary Create World + * @param {InlineObject5} [inlineObject5] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof WorldsApi + */ + public createWorld(inlineObject5?: InlineObject5, options?: any) { + return WorldsApiFp(this.configuration).createWorld(inlineObject5, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Delete a world. Notice a world is never fully \"deleted\", only its ReleaseStatus is set to \"hidden\" and the linked Files are deleted. The WorldID is permanently reserved. + * @summary Delete World + * @param {string} worldId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof WorldsApi + */ + public deleteWorld(worldId: string, options?: any) { + return WorldsApiFp(this.configuration).deleteWorld(worldId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Search and list currently Active worlds by query filters. + * @summary List Active Worlds + * @param {string} [featured] Filters on featured results. + * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] + * @param {number} [n] The number of objects to return. + * @param {'ascending' | 'descending'} [order] + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [search] Filters by world name. + * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [notag] Tags to exclude (comma-separated). + * @param {'public' | 'private' | 'hidden'} [releaseStatus] Filter by ReleaseStatus. + * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. + * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. + * @param {string} [platform] The platform the asset supports. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof WorldsApi + */ + public getActiveWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: any) { + return WorldsApiFp(this.configuration).getActiveWorlds(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Search and list favorited worlds by query filters. + * @summary List Favorited Worlds + * @param {string} [featured] Filters on featured results. + * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] + * @param {number} [n] The number of objects to return. + * @param {'ascending' | 'descending'} [order] + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [search] Filters by world name. + * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [notag] Tags to exclude (comma-separated). + * @param {'public' | 'private' | 'hidden'} [releaseStatus] Filter by ReleaseStatus. + * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. + * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. + * @param {string} [platform] The platform the asset supports. + * @param {string} [userId] Target user to see information on, admin-only. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof WorldsApi + */ + public getFavoritedWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any) { + return WorldsApiFp(this.configuration).getFavoritedWorlds(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Search and list recently visited worlds by query filters. + * @summary List Recent Worlds + * @param {string} [featured] Filters on featured results. + * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] + * @param {number} [n] The number of objects to return. + * @param {'ascending' | 'descending'} [order] + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [search] Filters by world name. + * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [notag] Tags to exclude (comma-separated). + * @param {'public' | 'private' | 'hidden'} [releaseStatus] Filter by ReleaseStatus. + * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. + * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. + * @param {string} [platform] The platform the asset supports. + * @param {string} [userId] Target user to see information on, admin-only. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof WorldsApi + */ + public getRecentWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any) { + return WorldsApiFp(this.configuration).getRecentWorlds(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Get information about a specific World. + * @summary Get World by ID + * @param {string} worldId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof WorldsApi + */ + public getWorld(worldId: string, options?: any) { + return WorldsApiFp(this.configuration).getWorld(worldId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Returns a worlds custom metadata. This is currently believed to be unused. Metadata can be set with `updateWorld` and can be any arbitrary object. + * @summary Get World Metadata + * @param {string} worldId + * @param {*} [options] Override http request option. + * @deprecated + * @throws {RequiredError} + * @memberof WorldsApi + */ + public getWorldMetadata(worldId: string, options?: any) { + return WorldsApiFp(this.configuration).getWorldMetadata(worldId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Returns a worlds publish status. This is currently believed to be unused. + * @summary Get World Publish Status + * @param {string} worldId + * @param {*} [options] Override http request option. + * @deprecated + * @throws {RequiredError} + * @memberof WorldsApi + */ + public getWorldPublish(worldId: string, options?: any) { + return WorldsApiFp(this.configuration).getWorldPublish(worldId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Search and list any worlds by query filters. + * @summary Search All Worlds + * @param {string} [featured] Filters on featured results. + * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] + * @param {'me'} [user] Set to `me` for searching own worlds. + * @param {string} [userId] Filter by author UserID + * @param {number} [n] The number of objects to return. + * @param {'ascending' | 'descending'} [order] + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [search] Filters by world name. + * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [notag] Tags to exclude (comma-separated). + * @param {'public' | 'private' | 'hidden'} [releaseStatus] Filter by ReleaseStatus. + * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. + * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. + * @param {string} [platform] The platform the asset supports. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof WorldsApi + */ + public searchWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: any) { + return WorldsApiFp(this.configuration).searchWorlds(featured, sort, user, userId, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Update information about a specific World. + * @summary Update World + * @param {string} worldId + * @param {InlineObject6} [inlineObject6] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof WorldsApi + */ + public updateWorld(worldId: string, inlineObject6?: InlineObject6, options?: any) { + return WorldsApiFp(this.configuration).updateWorld(worldId, inlineObject6, options).then((request) => request(this.axios, this.basePath)); + } +} + + From cb5a399a6f9e4945e21de6cd4d2f33ce400f5b55 Mon Sep 17 00:00:00 2001 From: Foorack Date: Sat, 7 Aug 2021 21:09:49 +0200 Subject: [PATCH 014/130] feature: generate based on worlds branch publish and unpublish endpoints --- api.ts | 126 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 126 insertions(+) diff --git a/api.ts b/api.ts index b7d7afa..e76dba7 100644 --- a/api.ts +++ b/api.ts @@ -5827,6 +5827,39 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Publishes a world. You can only publish one world per week. + * @param {string} worldId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + publishWorld: async (worldId: string, options: any = {}): Promise => { + // verify required parameter 'worldId' is not null or undefined + assertParamExists('publishWorld', 'worldId', worldId) + const localVarPath = `/worlds/{worldId}/publish` + .replace(`{${"worldId"}}`, encodeURIComponent(String(worldId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -5931,6 +5964,39 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Unpublishes a world. + * @param {string} worldId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + unpublishWorld: async (worldId: string, options: any = {}): Promise => { + // verify required parameter 'worldId' is not null or undefined + assertParamExists('unpublishWorld', 'worldId', worldId) + const localVarPath = `/worlds/{worldId}/publish` + .replace(`{${"worldId"}}`, encodeURIComponent(String(worldId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -6113,6 +6179,16 @@ export const WorldsApiFp = function(configuration?: Configuration) { const localVarAxiosArgs = await localVarAxiosParamCreator.getWorldPublish(worldId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, + /** + * Publishes a world. You can only publish one world per week. + * @param {string} worldId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async publishWorld(worldId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.publishWorld(worldId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** * Search and list any worlds by query filters. * @summary Search All Worlds @@ -6137,6 +6213,16 @@ export const WorldsApiFp = function(configuration?: Configuration) { const localVarAxiosArgs = await localVarAxiosParamCreator.searchWorlds(featured, sort, user, userId, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, + /** + * Unpublishes a world. + * @param {string} worldId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async unpublishWorld(worldId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.unpublishWorld(worldId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** * Update information about a specific World. * @summary Update World @@ -6276,6 +6362,15 @@ export const WorldsApiFactory = function (configuration?: Configuration, basePat getWorldPublish(worldId: string, options?: any): AxiosPromise { return localVarFp.getWorldPublish(worldId, options).then((request) => request(axios, basePath)); }, + /** + * Publishes a world. You can only publish one world per week. + * @param {string} worldId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + publishWorld(worldId: string, options?: any): AxiosPromise { + return localVarFp.publishWorld(worldId, options).then((request) => request(axios, basePath)); + }, /** * Search and list any worlds by query filters. * @summary Search All Worlds @@ -6299,6 +6394,15 @@ export const WorldsApiFactory = function (configuration?: Configuration, basePat searchWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: any): AxiosPromise> { return localVarFp.searchWorlds(featured, sort, user, userId, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options).then((request) => request(axios, basePath)); }, + /** + * Unpublishes a world. + * @param {string} worldId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + unpublishWorld(worldId: string, options?: any): AxiosPromise { + return localVarFp.unpublishWorld(worldId, options).then((request) => request(axios, basePath)); + }, /** * Update information about a specific World. * @summary Update World @@ -6453,6 +6557,17 @@ export class WorldsApi extends BaseAPI { return WorldsApiFp(this.configuration).getWorldPublish(worldId, options).then((request) => request(this.axios, this.basePath)); } + /** + * Publishes a world. You can only publish one world per week. + * @param {string} worldId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof WorldsApi + */ + public publishWorld(worldId: string, options?: any) { + return WorldsApiFp(this.configuration).publishWorld(worldId, options).then((request) => request(this.axios, this.basePath)); + } + /** * Search and list any worlds by query filters. * @summary Search All Worlds @@ -6478,6 +6593,17 @@ export class WorldsApi extends BaseAPI { return WorldsApiFp(this.configuration).searchWorlds(featured, sort, user, userId, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options).then((request) => request(this.axios, this.basePath)); } + /** + * Unpublishes a world. + * @param {string} worldId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof WorldsApi + */ + public unpublishWorld(worldId: string, options?: any) { + return WorldsApiFp(this.configuration).unpublishWorld(worldId, options).then((request) => request(this.axios, this.basePath)); + } + /** * Update information about a specific World. * @summary Update World From 6c96a4066fa2169671aecd69d0a685a3f3791689 Mon Sep 17 00:00:00 2001 From: Foorack Date: Sat, 7 Aug 2021 22:03:53 +0200 Subject: [PATCH 015/130] docs: added own readme --- .openapi-generator-ignore | 1 + .openapi-generator/FILES | 1 - README.md | 50 +++++++++++++-------------------------- example.js | 6 +++++ 4 files changed, 23 insertions(+), 35 deletions(-) create mode 100644 example.js diff --git a/.openapi-generator-ignore b/.openapi-generator-ignore index 2b61424..2101329 100644 --- a/.openapi-generator-ignore +++ b/.openapi-generator-ignore @@ -25,3 +25,4 @@ # VRChatAPI: Do not modify .gitignore to avoid comitting "dist" .gitignore +README.md \ No newline at end of file diff --git a/.openapi-generator/FILES b/.openapi-generator/FILES index 9892094..35b5a98 100644 --- a/.openapi-generator/FILES +++ b/.openapi-generator/FILES @@ -1,5 +1,4 @@ .npmignore -README.md api.ts base.ts common.ts diff --git a/README.md b/README.md index a9e68a5..00f1ba3 100644 --- a/README.md +++ b/README.md @@ -1,45 +1,27 @@ -## vrchatapi@1.0.0 +![](https://github.com/vrchatapi/vrchatapi.github.io/blob/master/assets/img/lang/lang_rust_banner_1500x300.png?raw=true) -This generator creates TypeScript/JavaScript client that utilizes [axios](https://github.com/axios/axios). The generated Node module can be used in the following environments: +# vrchat-node -Environment -* Node.js -* Webpack -* Browserify +A NodeJS client to interact with the unofficial VRChat API. Supports all REST calls specified in https://github.com/vrchatapi/specification. -Language level -* ES5 - you must have a Promises/A+ library installed -* ES6 +## Disclaimer -Module system -* CommonJS -* ES6 module system +This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. -It can be used in both TypeScript and JavaScript. In TypeScript, the definition should be automatically resolved via `package.json`. ([Reference](http://www.typescriptlang.org/docs/handbook/typings-for-npm-packages.html)) +> Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind: +> * We do not provide documentation or support for the API. +> * Do not make queries to the API more than once per 60 seconds. +> * Abuse of the API may result in account termination. +> * Access to API endpoints may break at any given time, with no warning. -### Building +As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. -To build and compile the typescript sources to javascript use: -``` -npm install -npm run build -``` +## Getting Started -### Publishing +See the [example.js](https://github.com/vrchatapi/vrchatapi-node/blob/master/example.js) for getting started. -First build the package then run ```npm publish``` +## Contributing -### Consuming +Contributions are welcome, but do not add features that should be handled by the OpenAPI specification. -navigate to the folder of your consuming project and run one of the following commands. - -_published:_ - -``` -npm install vrchatapi@1.0.0 --save -``` - -_unPublished (not recommended):_ - -``` -npm install PATH_TO_GENERATED_PACKAGE --save +Join the [Discord server](https://discord.gg/Ge2APMhPfD) to get in touch with us. \ No newline at end of file diff --git a/example.js b/example.js new file mode 100644 index 0000000..9c9ebfd --- /dev/null +++ b/example.js @@ -0,0 +1,6 @@ +const VRChatApi = require("./dist"); +const SystemApi = new VRChatApi.SystemApi(); + +SystemApi.getCurrentOnlineUsers().then(resp => { + console.log(`Current Online Users: ${resp.data}`); +}); \ No newline at end of file From 4a468f09f64aa29d920f3b00da92ab1269bda5d3 Mon Sep 17 00:00:00 2001 From: Foorack Date: Sun, 8 Aug 2021 00:39:34 +0200 Subject: [PATCH 016/130] docs(readme): move vrchatapi-node to vrchatapi-javascript --- README.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 00f1ba3..fc13067 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,8 @@ -![](https://github.com/vrchatapi/vrchatapi.github.io/blob/master/assets/img/lang/lang_rust_banner_1500x300.png?raw=true) +![](https://github.com/vrchatapi/vrchatapi.github.io/blob/master/assets/img/lang/lang_javascript_banner_1500x300.png?raw=true) -# vrchat-node +# VRChat API Library for JavaScript/TypeScript -A NodeJS client to interact with the unofficial VRChat API. Supports all REST calls specified in https://github.com/vrchatapi/specification. +A JavaScript/TypeScript/NodeJS client to interact with the unofficial VRChat API. Supports all REST calls specified in https://github.com/vrchatapi/specification. ## Disclaimer @@ -18,7 +18,7 @@ As stated, this documentation was not created with the help of the official VRCh ## Getting Started -See the [example.js](https://github.com/vrchatapi/vrchatapi-node/blob/master/example.js) for getting started. +See the [example.js](https://github.com/vrchatapi/vrchatapi-javascript/blob/master/example.js) for getting started. ## Contributing From 747a1f3fd15d623c8acdbb27bd938916afdcf544 Mon Sep 17 00:00:00 2001 From: Foorack Date: Sun, 8 Aug 2021 16:21:19 +0200 Subject: [PATCH 017/130] fix: save cookies globally --- api.ts | 3 ++- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- example.js | 18 ++++++++++++++++- generate.sh | 16 +++++++-------- git_push.sh | 2 +- index.ts | 2 +- package-lock.json | 51 ++++++++++++++++++++++++++++++++++++++++++++++- package.json | 5 ++++- 10 files changed, 85 insertions(+), 18 deletions(-) diff --git a/api.ts b/api.ts index e76dba7..e784ba4 100644 --- a/api.ts +++ b/api.ts @@ -4,7 +4,7 @@ * VRChat API Documentation * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) * - * The version of the OpenAPI document: 1.0.0 + * The version of the OpenAPI document: 1.0.1 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -20,6 +20,7 @@ import globalAxios, { AxiosPromise, AxiosInstance } from 'axios'; import { DUMMY_BASE_URL, assertParamExists, setApiKeyToObject, setBasicAuthToObject, setBearerAuthToObject, setOAuthToObject, setSearchParams, serializeDataIfNeeded, toPathString, createRequestFunction } from './common'; // @ts-ignore import { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from './base'; +import axiosCookieJarSupport from "axios-cookiejar-support";axiosCookieJarSupport(globalAxios);import { CookieJar } from "tough-cookie";globalAxios.defaults.jar = new CookieJar();globalAxios.defaults.withCredentials = true; /** * diff --git a/base.ts b/base.ts index 3ea9935..2134c29 100644 --- a/base.ts +++ b/base.ts @@ -4,7 +4,7 @@ * VRChat API Documentation * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) * - * The version of the OpenAPI document: 1.0.0 + * The version of the OpenAPI document: 1.0.1 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index e98f85a..679e117 100644 --- a/common.ts +++ b/common.ts @@ -4,7 +4,7 @@ * VRChat API Documentation * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) * - * The version of the OpenAPI document: 1.0.0 + * The version of the OpenAPI document: 1.0.1 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index 5857fcd..861b5cf 100644 --- a/configuration.ts +++ b/configuration.ts @@ -4,7 +4,7 @@ * VRChat API Documentation * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) * - * The version of the OpenAPI document: 1.0.0 + * The version of the OpenAPI document: 1.0.1 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/example.js b/example.js index 9c9ebfd..5e0b0e5 100644 --- a/example.js +++ b/example.js @@ -1,6 +1,22 @@ const VRChatApi = require("./dist"); -const SystemApi = new VRChatApi.SystemApi(); +const configuration = new VRChatApi.Configuration({ + username: "username", + password: "password" +}); + +const AuthenticationApi = new VRChatApi.AuthenticationApi(configuration); +const UsersApi = new VRChatApi.UsersApi(configuration); +const SystemApi = new VRChatApi.SystemApi(configuration); SystemApi.getCurrentOnlineUsers().then(resp => { console.log(`Current Online Users: ${resp.data}`); + + // Calling getCurrentUser on Authentication API logs you in if the user isn't already logged in. + AuthenticationApi.getCurrentUser().then(resp => { + console.log(`Logged in as: ${resp.data.displayName}`); + + UsersApi.getUser("usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469").then(resp => { + console.log(resp.data.displayName); // Should print out "tupper" + }); + }); }); \ No newline at end of file diff --git a/generate.sh b/generate.sh index 869dc96..e8b2782 100644 --- a/generate.sh +++ b/generate.sh @@ -5,22 +5,20 @@ openapi-generator-cli generate \ -g typescript-axios \ --additional-properties=npmName=vrchatapi \ --git-user-id=vrchatapi \ ---git-repo-id=vrchatapi-node \ +--git-repo-id=vrchatapi-javascript \ -o . \ -i ../specification/openapi.yaml \ ---http-user-agent="vrchatapi-node" +--http-user-agent="vrchatapi-javascript" # Modify package.json sed -i 's/Unlicense/MIT/g' ./package.json -# Remove unwanted lines from README -#sed -i '/Uncomment the following line to set a prefix/d' ./README.md -#sed -i '/apiKeyPrefix/d' ./README.md -#sed -i '/Uncomment the following line to set a prefix/d' ./docs/*.md -#sed -i '/apiKeyPrefix/d' ./docs/*.md -#sed -i 's/api.deleteUserById/api.getUser/g' ./README.md +# Enable global cookies +sed -i '/^import { BASE_PATH/a import axiosCookieJarSupport from "axios-cookiejar-support";axiosCookieJarSupport(globalAxios);import { CookieJar } from "tough-cookie";globalAxios.defaults.jar = new CookieJar();globalAxios.defaults.withCredentials = true;' ./api.ts -#sed -i '/Uncomment the following line to set a prefix/d' ./README.md +sed -i '/"dependencies"/a "@types/tough-cookie": "^4.0.1",' ./package.json +sed -i '/"dependencies"/a "axios-cookiejar-support": "^1.0.1",' ./package.json +sed -i '/"dependencies"/a "tough-cookie": "^4.0.0",' ./package.json npm install npm run build \ No newline at end of file diff --git a/git_push.sh b/git_push.sh index a4189bd..814e51d 100644 --- a/git_push.sh +++ b/git_push.sh @@ -19,7 +19,7 @@ if [ "$git_user_id" = "" ]; then fi if [ "$git_repo_id" = "" ]; then - git_repo_id="vrchatapi-node" + git_repo_id="vrchatapi-javascript" echo "[INFO] No command line input provided. Set \$git_repo_id to $git_repo_id" fi diff --git a/index.ts b/index.ts index 1d5d02a..b4ff8db 100644 --- a/index.ts +++ b/index.ts @@ -4,7 +4,7 @@ * VRChat API Documentation * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) * - * The version of the OpenAPI document: 1.0.0 + * The version of the OpenAPI document: 1.0.1 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index 74739ca..ad2a9ac 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "vrchatapi", - "version": "1.0.0", + "version": "1.0.1", "lockfileVersion": 1, "requires": true, "dependencies": { @@ -10,6 +10,11 @@ "integrity": "sha512-niAuZrwrjKck4+XhoCw6AAVQBENHftpXw9F4ryk66fTgYaKQ53R4FI7c9vUGGw5vQis1HKBHDR1gcYI/Bq1xvw==", "dev": true }, + "@types/tough-cookie": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-4.0.1.tgz", + "integrity": "sha512-Y0K95ThC3esLEYD6ZuqNek29lNX2EM1qxV8y2FTLUB0ff5wWrk7az+mLrnNFUnaXcgKye22+sFBRXOgpPILZNg==" + }, "axios": { "version": "0.21.1", "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.1.tgz", @@ -18,16 +23,60 @@ "follow-redirects": "^1.10.0" } }, + "axios-cookiejar-support": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/axios-cookiejar-support/-/axios-cookiejar-support-1.0.1.tgz", + "integrity": "sha512-IZJxnAJ99XxiLqNeMOqrPbfR7fRyIfaoSLdPUf4AMQEGkH8URs0ghJK/xtqBsD+KsSr3pKl4DEQjCn834pHMig==", + "requires": { + "is-redirect": "^1.0.0", + "pify": "^5.0.0" + } + }, "follow-redirects": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.1.tgz", "integrity": "sha512-HWqDgT7ZEkqRzBvc2s64vSZ/hfOceEol3ac/7tKwzuvEyWx3/4UegXh5oBOIotkGsObyk3xznnSRVADBgWSQVg==" }, + "is-redirect": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-redirect/-/is-redirect-1.0.0.tgz", + "integrity": "sha1-HQPd7VO9jbDzDCbk+V02/HyH3CQ=" + }, + "pify": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-5.0.0.tgz", + "integrity": "sha512-eW/gHNMlxdSP6dmG6uJip6FXN0EQBwm2clYYd8Wul42Cwu/DK8HEftzsapcNdYe2MfLiIwZqsDk2RDEsTE79hA==" + }, + "psl": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", + "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==" + }, + "punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" + }, + "tough-cookie": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.0.0.tgz", + "integrity": "sha512-tHdtEpQCMrc1YLrMaqXXcj6AxhYi/xgit6mZu1+EDWUn+qhUf8wMQoFIy9NXuq23zAwtcB0t/MjACGR18pcRbg==", + "requires": { + "psl": "^1.1.33", + "punycode": "^2.1.1", + "universalify": "^0.1.2" + } + }, "typescript": { "version": "3.9.10", "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz", "integrity": "sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==", "dev": true + }, + "universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==" } } } diff --git a/package.json b/package.json index f15d0d3..6bf8b01 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchatapi", - "version": "1.0.0", + "version": "1.0.1", "description": "OpenAPI client for vrchatapi", "author": "OpenAPI-Generator Contributors", "keywords": [ @@ -18,6 +18,9 @@ "prepublishOnly": "npm run build" }, "dependencies": { + "tough-cookie": "^4.0.0", + "axios-cookiejar-support": "^1.0.1", + "@types/tough-cookie": "^4.0.1", "axios": "^0.21.1" }, "devDependencies": { From f821fbfedd7dab243edfcc7411ab2cf7fb19dd73 Mon Sep 17 00:00:00 2001 From: Foorack Date: Sun, 8 Aug 2021 16:58:31 +0200 Subject: [PATCH 018/130] docs(readme): improve getting started in readme --- README.md | 28 +++++++++++++++++++++++++++- example.js | 4 ++-- generate.sh | 2 +- 3 files changed, 30 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index fc13067..b65e306 100644 --- a/README.md +++ b/README.md @@ -18,7 +18,33 @@ As stated, this documentation was not created with the help of the official VRCh ## Getting Started -See the [example.js](https://github.com/vrchatapi/vrchatapi-javascript/blob/master/example.js) for getting started. +First add the package to to your project: +```bash +npm install vrchatapi # NOTE: We are not yet published on NPM +``` + +Below is an example on how to login to the API and fetch your own user information. + +```javascript +// Step 1. We begin with creating a Configuration, which contains the username and password for authentication. +const VRChatApi = require("vrchatapi"); +const configuration = new VRChatApi.Configuration({ + username: "username", + password: "password" +}); + +// Step 2. VRChat consists of several API's (WorldsApi, UsersApi, FilesApi, NotificationsApi, FriendsApi, etc...) +// Here we instantiate the Authentication API which is required for logging in. +const AuthenticationApi = new VRChatApi.AuthenticationApi(configuration); + +// Step 3. Calling getCurrentUser on Authentication API logs you in if the user isn't already logged in. +AuthenticationApi.getCurrentUser().then(resp => { + const currentUser = resp.data; + console.log(`Logged in as: ${currentUser.displayName}`); +}); +``` + +See [example.js](https://github.com/vrchatapi/vrchatapi-javascript/blob/master/example.js) for more example usage on getting started. ## Contributing diff --git a/example.js b/example.js index 5e0b0e5..9f4928c 100644 --- a/example.js +++ b/example.js @@ -1,7 +1,7 @@ const VRChatApi = require("./dist"); const configuration = new VRChatApi.Configuration({ - username: "username", - password: "password" + username: "FooVRCApiDocs", + password: "YAe8Yh9HMT64RGX" }); const AuthenticationApi = new VRChatApi.AuthenticationApi(configuration); diff --git a/generate.sh b/generate.sh index e8b2782..8ccf8ce 100644 --- a/generate.sh +++ b/generate.sh @@ -1,6 +1,6 @@ #!/bin/bash -rm src docs test -rf +rm *.ts -rf openapi-generator-cli generate \ -g typescript-axios \ --additional-properties=npmName=vrchatapi \ From 521895fcdfa74a7856670287426fed5631f104b8 Mon Sep 17 00:00:00 2001 From: Foorack Date: Sun, 8 Aug 2021 17:00:17 +0200 Subject: [PATCH 019/130] docs(example): fix login example --- example.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/example.js b/example.js index 9f4928c..5e0b0e5 100644 --- a/example.js +++ b/example.js @@ -1,7 +1,7 @@ const VRChatApi = require("./dist"); const configuration = new VRChatApi.Configuration({ - username: "FooVRCApiDocs", - password: "YAe8Yh9HMT64RGX" + username: "username", + password: "password" }); const AuthenticationApi = new VRChatApi.AuthenticationApi(configuration); From 329c86a8820c51aa9b12022e242ec0643dda22df Mon Sep 17 00:00:00 2001 From: Foorack Date: Tue, 10 Aug 2021 12:39:34 +0200 Subject: [PATCH 020/130] build: initial NPM release --- README.md | 8 +- api.ts | 276 +++++++++++++++++++++++++++++++++++++++++++--- base.ts | 4 +- common.ts | 4 +- configuration.ts | 4 +- example.js | 10 +- generate.sh | 6 +- index.ts | 4 +- package-lock.json | 4 +- package.json | 8 +- 10 files changed, 286 insertions(+), 42 deletions(-) diff --git a/README.md b/README.md index b65e306..8ae2e05 100644 --- a/README.md +++ b/README.md @@ -20,22 +20,22 @@ As stated, this documentation was not created with the help of the official VRCh First add the package to to your project: ```bash -npm install vrchatapi # NOTE: We are not yet published on NPM +npm install vrchat ``` Below is an example on how to login to the API and fetch your own user information. ```javascript // Step 1. We begin with creating a Configuration, which contains the username and password for authentication. -const VRChatApi = require("vrchatapi"); -const configuration = new VRChatApi.Configuration({ +const vrchat = require("vrchat"); +const configuration = new vrchat.Configuration({ username: "username", password: "password" }); // Step 2. VRChat consists of several API's (WorldsApi, UsersApi, FilesApi, NotificationsApi, FriendsApi, etc...) // Here we instantiate the Authentication API which is required for logging in. -const AuthenticationApi = new VRChatApi.AuthenticationApi(configuration); +const AuthenticationApi = new vrchat.AuthenticationApi(configuration); // Step 3. Calling getCurrentUser on Authentication API logs you in if the user isn't already logged in. AuthenticationApi.getCurrentUser().then(resp => { diff --git a/api.ts b/api.ts index e784ba4..7c4a7db 100644 --- a/api.ts +++ b/api.ts @@ -2,9 +2,9 @@ /* eslint-disable */ /** * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * ![VRChat API Banner](https://vrchatapi.github.io/assets/img/api_banner_1500x400.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) * - * The version of the OpenAPI document: 1.0.1 + * The version of the OpenAPI document: 1.0.0 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -814,7 +814,7 @@ export interface CurrentUser { * @type {string} * @memberof CurrentUser */ - accountDeletionDate?: string; + accountDeletionDate?: string | null; /** * * @type {number} @@ -922,19 +922,19 @@ export interface CurrentUser { * @type {Array} * @memberof CurrentUser */ - onlineFriends: Array; + onlineFriends?: Array; /** * * @type {Array} * @memberof CurrentUser */ - activeFriends: Array; + activeFriends?: Array; /** * * @type {Array} * @memberof CurrentUser */ - offlineFriends: Array; + offlineFriends?: Array; } /** * Used to identify which API deployment cluster is currently responding. `blue` and `green` are used by Production. `grape`and `cherry` are used during Development. [Blue Green Deployment by Martin Fowler](https://martinfowler.com/bliki/BlueGreenDeployment.html) @@ -1609,6 +1609,166 @@ export interface InlineResponse401 { */ error: Error; } +/** + * + * @export + * @interface Instance + */ +export interface Instance { + /** + * + * @type {boolean} + * @memberof Instance + */ + active: boolean; + /** + * + * @type {boolean} + * @memberof Instance + */ + canRequestInvite: boolean; + /** + * + * @type {number} + * @memberof Instance + */ + capacity: number; + /** + * + * @type {string} + * @memberof Instance + */ + clientNumber: string; + /** + * + * @type {boolean} + * @memberof Instance + */ + full: boolean; + /** + * + * @type {string} + * @memberof Instance + */ + id: string; + /** + * + * @type {string} + * @memberof Instance + */ + instanceId: string; + /** + * + * @type {string} + * @memberof Instance + */ + location: string; + /** + * + * @type {number} + * @memberof Instance + */ + n_users: number; + /** + * + * @type {string} + * @memberof Instance + */ + name: string; + /** + * + * @type {string} + * @memberof Instance + */ + nonce?: string; + /** + * + * @type {string} + * @memberof Instance + */ + ownerId: string; + /** + * + * @type {boolean} + * @memberof Instance + */ + permanent: boolean; + /** + * + * @type {string} + * @memberof Instance + */ + photonRegion: string; + /** + * + * @type {InstancePlatforms} + * @memberof Instance + */ + platforms: InstancePlatforms; + /** + * + * @type {string} + * @memberof Instance + */ + region: string; + /** + * + * @type {string} + * @memberof Instance + */ + shortName: string; + /** + * + * @type {Array} + * @memberof Instance + */ + tags: Array; + /** + * + * @type {string} + * @memberof Instance + */ + type: string; + /** + * Always empty on non-existing instances, and non-present on existing instances. + * @type {Array} + * @memberof Instance + * @deprecated + */ + users?: Array; + /** + * Only present on non-existing instances, and only contains a very small subject of World object. Use World API instead. + * @type {object} + * @memberof Instance + * @deprecated + */ + world?: object; + /** + * + * @type {string} + * @memberof Instance + */ + worldId: string; +} +/** + * + * @export + * @interface InstancePlatforms + */ +export interface InstancePlatforms { + /** + * + * @type {number} + * @memberof InstancePlatforms + */ + android: number; + /** + * + * @type {number} + * @memberof InstancePlatforms + */ + standalonewindows: number; +} /** * * @export @@ -1793,10 +1953,10 @@ export interface LimitedWorld { organization: string; /** * - * @type {Array} + * @type {Array} * @memberof LimitedWorld */ - tags: Array; + tags: Array; /** * * @type {number} @@ -1829,10 +1989,10 @@ export interface LimitedWorld { labsPublicationDate: string; /** * - * @type {Set} + * @type {Array} * @memberof LimitedWorld */ - unityPackages: Set; + unityPackages: Array; /** * * @type {number} @@ -2267,19 +2427,19 @@ export interface User { * @type {string} * @memberof User */ - worldId?: string; + worldId: string; /** * * @type {string} * @memberof User */ - instanceId?: string; + instanceId: string; /** * * @type {string} * @memberof User */ - location?: string; + location: string; } /** * * \"online\" User is online in VRChat * \"active\" User is online, but not in VRChat * \"offline\" User is offline @@ -2387,10 +2547,10 @@ export interface World { imageUrl: string; /** * - * @type {Array} + * @type {Array>} * @memberof World */ - instances?: Array; + instances?: Array>; /** * * @type {string} @@ -2483,10 +2643,10 @@ export interface World { unityPackageUrlObject: object; /** * - * @type {Set} + * @type {Array} * @memberof World */ - unityPackages: Set; + unityPackages: Array; /** * * @type {string} @@ -5758,6 +5918,44 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Returns a worlds instance. + * @summary Get World Instance + * @param {string} worldId + * @param {string} instanceId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getWorldInstance: async (worldId: string, instanceId: string, options: any = {}): Promise => { + // verify required parameter 'worldId' is not null or undefined + assertParamExists('getWorldInstance', 'worldId', worldId) + // verify required parameter 'instanceId' is not null or undefined + assertParamExists('getWorldInstance', 'instanceId', instanceId) + const localVarPath = `/worlds/{worldId}/{instanceId}` + .replace(`{${"worldId"}}`, encodeURIComponent(String(worldId))) + .replace(`{${"instanceId"}}`, encodeURIComponent(String(instanceId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -5839,6 +6037,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio }, /** * Publishes a world. You can only publish one world per week. + * @summary Publish World * @param {string} worldId * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -5976,6 +6175,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio }, /** * Unpublishes a world. + * @summary Unpublish World * @param {string} worldId * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -6156,6 +6356,18 @@ export const WorldsApiFp = function(configuration?: Configuration) { const localVarAxiosArgs = await localVarAxiosParamCreator.getWorld(worldId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, + /** + * Returns a worlds instance. + * @summary Get World Instance + * @param {string} worldId + * @param {string} instanceId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getWorldInstance(worldId: string, instanceId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getWorldInstance(worldId, instanceId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** * Returns a worlds custom metadata. This is currently believed to be unused. Metadata can be set with `updateWorld` and can be any arbitrary object. * @summary Get World Metadata @@ -6182,6 +6394,7 @@ export const WorldsApiFp = function(configuration?: Configuration) { }, /** * Publishes a world. You can only publish one world per week. + * @summary Publish World * @param {string} worldId * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -6216,6 +6429,7 @@ export const WorldsApiFp = function(configuration?: Configuration) { }, /** * Unpublishes a world. + * @summary Unpublish World * @param {string} worldId * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -6341,6 +6555,17 @@ export const WorldsApiFactory = function (configuration?: Configuration, basePat getWorld(worldId: string, options?: any): AxiosPromise { return localVarFp.getWorld(worldId, options).then((request) => request(axios, basePath)); }, + /** + * Returns a worlds instance. + * @summary Get World Instance + * @param {string} worldId + * @param {string} instanceId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getWorldInstance(worldId: string, instanceId: string, options?: any): AxiosPromise { + return localVarFp.getWorldInstance(worldId, instanceId, options).then((request) => request(axios, basePath)); + }, /** * Returns a worlds custom metadata. This is currently believed to be unused. Metadata can be set with `updateWorld` and can be any arbitrary object. * @summary Get World Metadata @@ -6365,6 +6590,7 @@ export const WorldsApiFactory = function (configuration?: Configuration, basePat }, /** * Publishes a world. You can only publish one world per week. + * @summary Publish World * @param {string} worldId * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -6397,6 +6623,7 @@ export const WorldsApiFactory = function (configuration?: Configuration, basePat }, /** * Unpublishes a world. + * @summary Unpublish World * @param {string} worldId * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -6532,6 +6759,19 @@ export class WorldsApi extends BaseAPI { return WorldsApiFp(this.configuration).getWorld(worldId, options).then((request) => request(this.axios, this.basePath)); } + /** + * Returns a worlds instance. + * @summary Get World Instance + * @param {string} worldId + * @param {string} instanceId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof WorldsApi + */ + public getWorldInstance(worldId: string, instanceId: string, options?: any) { + return WorldsApiFp(this.configuration).getWorldInstance(worldId, instanceId, options).then((request) => request(this.axios, this.basePath)); + } + /** * Returns a worlds custom metadata. This is currently believed to be unused. Metadata can be set with `updateWorld` and can be any arbitrary object. * @summary Get World Metadata @@ -6560,6 +6800,7 @@ export class WorldsApi extends BaseAPI { /** * Publishes a world. You can only publish one world per week. + * @summary Publish World * @param {string} worldId * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -6596,6 +6837,7 @@ export class WorldsApi extends BaseAPI { /** * Unpublishes a world. + * @summary Unpublish World * @param {string} worldId * @param {*} [options] Override http request option. * @throws {RequiredError} diff --git a/base.ts b/base.ts index 2134c29..d348f67 100644 --- a/base.ts +++ b/base.ts @@ -2,9 +2,9 @@ /* eslint-disable */ /** * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * ![VRChat API Banner](https://vrchatapi.github.io/assets/img/api_banner_1500x400.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) * - * The version of the OpenAPI document: 1.0.1 + * The version of the OpenAPI document: 1.0.0 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index 679e117..1704278 100644 --- a/common.ts +++ b/common.ts @@ -2,9 +2,9 @@ /* eslint-disable */ /** * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * ![VRChat API Banner](https://vrchatapi.github.io/assets/img/api_banner_1500x400.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) * - * The version of the OpenAPI document: 1.0.1 + * The version of the OpenAPI document: 1.0.0 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index 861b5cf..e5b17ff 100644 --- a/configuration.ts +++ b/configuration.ts @@ -2,9 +2,9 @@ /* eslint-disable */ /** * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * ![VRChat API Banner](https://vrchatapi.github.io/assets/img/api_banner_1500x400.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) * - * The version of the OpenAPI document: 1.0.1 + * The version of the OpenAPI document: 1.0.0 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/example.js b/example.js index 5e0b0e5..4f1506d 100644 --- a/example.js +++ b/example.js @@ -1,12 +1,12 @@ -const VRChatApi = require("./dist"); -const configuration = new VRChatApi.Configuration({ +const vrchat = require("vrchat"); +const configuration = new vrchat.Configuration({ username: "username", password: "password" }); -const AuthenticationApi = new VRChatApi.AuthenticationApi(configuration); -const UsersApi = new VRChatApi.UsersApi(configuration); -const SystemApi = new VRChatApi.SystemApi(configuration); +const AuthenticationApi = new vrchat.AuthenticationApi(configuration); +const UsersApi = new vrchat.UsersApi(configuration); +const SystemApi = new vrchat.SystemApi(configuration); SystemApi.getCurrentOnlineUsers().then(resp => { console.log(`Current Online Users: ${resp.data}`); diff --git a/generate.sh b/generate.sh index 8ccf8ce..4e553cc 100644 --- a/generate.sh +++ b/generate.sh @@ -1,13 +1,15 @@ #!/bin/bash +curl https://vrchatapi.github.io/specification/openapi.yaml > dist/openapi.yaml + rm *.ts -rf openapi-generator-cli generate \ -g typescript-axios \ ---additional-properties=npmName=vrchatapi \ +--additional-properties=npmName=vrchat \ --git-user-id=vrchatapi \ --git-repo-id=vrchatapi-javascript \ -o . \ --i ../specification/openapi.yaml \ +-i dist/openapi.yaml \ --http-user-agent="vrchatapi-javascript" # Modify package.json diff --git a/index.ts b/index.ts index b4ff8db..7f8e165 100644 --- a/index.ts +++ b/index.ts @@ -2,9 +2,9 @@ /* eslint-disable */ /** * VRChat API Documentation - * ![VRChat API Banner](https://raw.githubusercontent.com/vrchatapi/vrchatapi.github.io/master/assets/apibanner.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * ![VRChat API Banner](https://vrchatapi.github.io/assets/img/api_banner_1500x400.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) * - * The version of the OpenAPI document: 1.0.1 + * The version of the OpenAPI document: 1.0.0 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index ad2a9ac..da09f38 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { - "name": "vrchatapi", - "version": "1.0.1", + "name": "vrchat", + "version": "1.0.0", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/package.json b/package.json index 6bf8b01..09dfef6 100644 --- a/package.json +++ b/package.json @@ -1,14 +1,14 @@ { - "name": "vrchatapi", - "version": "1.0.1", - "description": "OpenAPI client for vrchatapi", + "name": "vrchat", + "version": "1.0.0", + "description": "OpenAPI client for vrchat", "author": "OpenAPI-Generator Contributors", "keywords": [ "axios", "typescript", "openapi-client", "openapi-generator", - "vrchatapi" + "vrchat" ], "license": "MIT", "main": "./dist/index.js", From 60ca06cede710fe185696cb9d0b816a03168fadd Mon Sep 17 00:00:00 2001 From: Foorack Date: Tue, 10 Aug 2021 12:42:48 +0200 Subject: [PATCH 021/130] build: update description --- generate.sh | 1 + package.json | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/generate.sh b/generate.sh index 4e553cc..faaf10c 100644 --- a/generate.sh +++ b/generate.sh @@ -13,6 +13,7 @@ openapi-generator-cli generate \ --http-user-agent="vrchatapi-javascript" # Modify package.json +sed -i 's/OpenAPI client for vrchat/🟡🔵 VRChat API Library for JavaScript and TypeScript/g' ./package.json sed -i 's/Unlicense/MIT/g' ./package.json # Enable global cookies diff --git a/package.json b/package.json index 09dfef6..db3dbfe 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "vrchat", "version": "1.0.0", - "description": "OpenAPI client for vrchat", + "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "keywords": [ "axios", From bf8c5ee46e5c82fd3682bce2fa5d177a1a687be1 Mon Sep 17 00:00:00 2001 From: Foorack Date: Sun, 22 Aug 2021 22:09:48 +0200 Subject: [PATCH 022/130] Upgrade to spec 1.0.1 --- README.md | 2 +- api.ts | 4329 +++++++++++++++++++++++++++++++++++---------- base.ts | 4 +- common.ts | 4 +- configuration.ts | 4 +- generate.sh | 4 +- index.ts | 4 +- package-lock.json | 2 +- package.json | 2 +- 9 files changed, 3407 insertions(+), 948 deletions(-) diff --git a/README.md b/README.md index 8ae2e05..376c66a 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -![](https://github.com/vrchatapi/vrchatapi.github.io/blob/master/assets/img/lang/lang_javascript_banner_1500x300.png?raw=true) +![](https://github.com/vrchatapi/vrchatapi.github.io/blob/master/assets/img/lang/lang_javascript_banner_1500x300.png?raw=true){:.img-fluid} # VRChat API Library for JavaScript/TypeScript diff --git a/api.ts b/api.ts index 7c4a7db..fd3aeb9 100644 --- a/api.ts +++ b/api.ts @@ -2,9 +2,9 @@ /* eslint-disable */ /** * VRChat API Documentation - * ![VRChat API Banner](https://vrchatapi.github.io/assets/img/api_banner_1500x400.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * ![VRChat API Banner](https://vrchatapi.github.io/assets/img/api_banner_1500x400.png) # Welcome to the VRChat API Before we begin, we would like to state this is a **COMMUNITY DRIVEN PROJECT**. This means that everything you read on here was written by the community itself and is **not** officially supported by VRChat. The documentation is provided \"AS IS\", and any action you take towards VRChat is completely your own responsibility. The documentation and additional libraries SHALL ONLY be used for applications interacting with VRChat\'s API in accordance with their [Terms of Service](https://github.com/VRChatAPI), and MUST NOT be used for modifying the client, \"avatar ripping\", or other illegal activities. Malicious usage or spamming the API may result in account termination. Certain parts of the API are also more sensitive than others, for example moderation, so please read tread extra carefully and read the warnings when present. ![Tupper Policy on API](https://i.imgur.com/yLlW7Ok.png) Finally, use of the API using applications other than the approved methods (website, VRChat application, Unity SDK) is not officially supported. VRChat provides no guarantee or support for external applications using the API. Access to API endpoints may break **at any time, without notice**. Therefore, please **do not ping** VRChat Staff in the VRChat Discord if you are having API problems, as they do not provide API support. We will make a best effort in keeping this documentation and associated language libraries up to date, but things might be outdated or missing. If you find that something is no longer valid, please contact us on Discord or [create an issue](https://github.com/vrchatapi/specification/issues) and tell us so we can fix it. # Getting Started The VRChat API can be used to programmatically retrieve or update information regarding your profile, friends, avatars, worlds and more. The API consists of two parts, \"Photon\" which is only used in-game, and the \"Web API\" which is used by both the game and the website. This documentation focuses only on the Web API. The API is designed around the REST ideology, providing semi-simple and usually predictable URIs to access and modify objects. Requests support standard HTTP methods like GET, PUT, POST, and DELETE and standard status codes. Response bodies are always UTF-8 encoded JSON objects, unless explicitly documented otherwise.
🛑 Warning! Do not touch Photon!
Photon is only used by the in-game client and should not be touched. Doing so may result in permanent account termination.
ℹ️ API Key and Authentication
The API Key has always been the same and is currently JlE5Jldo5Jibnk5O5hTx6XVqsJu4WJ26. Read Authentication for how to log in.
# Using the API For simply exploring what the API can do it is strongly recommended to download [Insomnia](https://insomnia.rest/download), a free and open-source API client that\'s great for sending requests to the API in an orderly fashion. Insomnia allows you to send data in the format that\'s required for VRChat\'s API. It is also possible to try out the API in your browser, by first logging in at [vrchat.com/home](https://vrchat.com/home/) and then going to [vrchat.com/api/1/auth/user](https://vrchat.com/api/1/auth/user), but the information will be much harder to work with. For more permanent operation such as software development it is instead recommended to use one of the existing language SDKs. This community project maintains API libraries in several languages, which allows you to interact with the API with simple function calls rather than having to implement the HTTP protocol yourself. Most of these libraries are automatically generated from the API specification, sometimes with additional helpful wrapper code to make usage easier. This allows them to be almost automatically updated and expanded upon as soon as a new feature is introduced in the specification itself. The libraries can be found on [GitHub](https://github.com/vrchatapi) or following: * [NodeJS (JavaScript)](https://www.npmjs.com/package/vrchat) * [Dart](https://pub.dev/packages/vrchat_dart) * [Rust](https://crates.io/crates/vrchatapi) * [C#](github.com/vrchatapi/vrchatapi-csharp) * [Python](https://github.com/vrchatapi/VRChatPython) # Pagination Most endpoints enforce pagination, meaning they will only return 10 entries by default, and never more than 100.
Using both the limit and offset parameters allows you to easily paginate through a large number of objects. | Query Parameter | Type | Description | | ----------|--|------- | | `limit` | integer | The number of objects to return. This value often defaults to 10. Highest limit is always 100.| | `offset` | integer | A zero-based offset from the default object sorting.| If a request returns fewer objects than the `limit` parameter, there are no more items available to return. # Contribution Do you want to get involved in the documentation effort? Do you want to help improve one of the language API libraries? This project is an [OPEN Open Source Project](https://openopensource.org)! This means that individuals making significant and valuable contributions are given commit-access to the project. It also means we are very open and welcoming of new people making contributions, unlike some more guarded open-source projects. [![Discord](https://img.shields.io/static/v1?label=vrchatapi&message=discord&color=blueviolet&style=for-the-badge)](https://discord.gg/qjZE9C9fkB) * - * The version of the OpenAPI document: 1.0.0 + * The version of the OpenAPI document: 1.0.1 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -22,6 +22,135 @@ import { DUMMY_BASE_URL, assertParamExists, setApiKeyToObject, setBasicAuthToObj import { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from './base'; import axiosCookieJarSupport from "axios-cookiejar-support";axiosCookieJarSupport(globalAxios);import { CookieJar } from "tough-cookie";globalAxios.defaults.jar = new CookieJar();globalAxios.defaults.withCredentials = true; +/** + * + * @export + * @interface Avatar + */ +export interface Avatar { + /** + * Not present from general serach `/avatars`, only on specific requests `/avatars/{avatarId}`. + * @type {string} + * @memberof Avatar + */ + assetUrl?: string; + /** + * Not present from general serach `/avatars`, only on specific requests `/avatars/{avatarId}`. **Deprecation:** `Object` has unknown usage/fields, and is always empty. Use normal `Url` field instead. + * @type {object} + * @memberof Avatar + */ + assetUrlObject?: object; + /** + * + * @type {string} + * @memberof Avatar + */ + authorId: string; + /** + * + * @type {string} + * @memberof Avatar + */ + authorName: string; + /** + * + * @type {string} + * @memberof Avatar + */ + created_at: string; + /** + * + * @type {string} + * @memberof Avatar + */ + description: string; + /** + * + * @type {boolean} + * @memberof Avatar + */ + featured: boolean; + /** + * + * @type {string} + * @memberof Avatar + */ + id: string; + /** + * + * @type {string} + * @memberof Avatar + */ + imageUrl: string; + /** + * + * @type {string} + * @memberof Avatar + */ + name: string; + /** + * + * @type {ReleaseStatus} + * @memberof Avatar + */ + releaseStatus: ReleaseStatus; + /** + * + * @type {Array} + * @memberof Avatar + */ + tags: Array; + /** + * + * @type {string} + * @memberof Avatar + */ + thumbnailImageUrl: string; + /** + * + * @type {Set} + * @memberof Avatar + */ + unityPackages: Set; + /** + * + * @type {string} + * @memberof Avatar + */ + unityPackageUrl: string; + /** + * + * @type {AvatarUnityPackageUrlObject} + * @memberof Avatar + * @deprecated + */ + unityPackageUrlObject: AvatarUnityPackageUrlObject; + /** + * + * @type {string} + * @memberof Avatar + */ + updated_at: string; + /** + * + * @type {number} + * @memberof Avatar + */ + version: number; +} +/** + * **Deprecation:** `Object` has unknown usage/fields, and is always empty. Use normal `Url` field instead. + * @export + * @interface AvatarUnityPackageUrlObject + */ +export interface AvatarUnityPackageUrlObject { + /** + * + * @type {string} + * @memberof AvatarUnityPackageUrlObject + */ + unityPackageUrl?: string; +} /** * * @export @@ -35,7 +164,7 @@ export interface Config { */ address: string; /** - * PSA, Public Announcements + * Public Announcements * @type {Set} * @memberof Config */ @@ -774,9 +903,10 @@ export interface CurrentUser { */ friends: Array; /** - * + * Always empty array. * @type {Array} * @memberof CurrentUser + * @deprecated */ friendGroupNames: Array; /** @@ -962,6 +1092,116 @@ export enum DeveloperType { Moderator = 'moderator' } +/** + * + * @export + * @interface Favorite + */ +export interface Favorite { + /** + * + * @type {string} + * @memberof Favorite + */ + id: string; + /** + * + * @type {FavoriteType} + * @memberof Favorite + */ + type: FavoriteType; + /** + * MUST be either AvatarID, UserID or WorldID. + * @type {string} + * @memberof Favorite + */ + favoriteId: string; + /** + * + * @type {Array} + * @memberof Favorite + */ + tags: Array; +} +/** + * + * @export + * @interface FavoriteGroup + */ +export interface FavoriteGroup { + /** + * + * @type {string} + * @memberof FavoriteGroup + */ + id: string; + /** + * + * @type {string} + * @memberof FavoriteGroup + */ + ownerId: string; + /** + * + * @type {string} + * @memberof FavoriteGroup + */ + ownerDisplayName: string; + /** + * + * @type {string} + * @memberof FavoriteGroup + */ + name: string; + /** + * + * @type {string} + * @memberof FavoriteGroup + */ + displayName: string; + /** + * + * @type {FavoriteType} + * @memberof FavoriteGroup + */ + type: FavoriteType; + /** + * + * @type {FavoriteGroupVisibility} + * @memberof FavoriteGroup + */ + visibility: FavoriteGroupVisibility; + /** + * + * @type {Array} + * @memberof FavoriteGroup + */ + tags: Array; +} +/** + * + * @export + * @enum {string} + */ + +export enum FavoriteGroupVisibility { + Private = 'private', + Friends = 'friends', + Public = 'public' +} + +/** + * + * @export + * @enum {string} + */ + +export enum FavoriteType { + World = 'world', + Friend = 'friend', + Avatar = 'avatar' +} + /** * * @export @@ -1112,320 +1352,545 @@ export interface InlineObject1 { /** * * @export - * @interface InlineObject2 + * @interface InlineObject10 */ -export interface InlineObject2 { +export interface InlineObject10 { /** * * @type {string} - * @memberof InlineObject2 + * @memberof InlineObject10 */ - email?: string; + assetUrl?: string; /** * * @type {string} - * @memberof InlineObject2 + * @memberof InlineObject10 */ - birthday?: string; + id?: string; /** * - * @type {number} - * @memberof InlineObject2 + * @type {string} + * @memberof InlineObject10 */ - acceptedTOSVersion?: number; + name: string; /** * - * @type {Array} - * @memberof InlineObject2 + * @type {string} + * @memberof InlineObject10 */ - tags?: Array; + description?: string; /** * - * @type {UserStatus} - * @memberof InlineObject2 + * @type {Array} + * @memberof InlineObject10 */ - status?: UserStatus; + tags?: Array; /** * * @type {string} - * @memberof InlineObject2 + * @memberof InlineObject10 */ - statusDescription?: string; + imageUrl: string; /** * - * @type {string} - * @memberof InlineObject2 + * @type {ReleaseStatus} + * @memberof InlineObject10 */ - bio?: string; + releaseStatus?: ReleaseStatus; /** * - * @type {Array} - * @memberof InlineObject2 + * @type {number} + * @memberof InlineObject10 */ - bioLinks?: Array; + version?: number; /** - * MUST be a valid VRChat /file/ url. + * * @type {string} - * @memberof InlineObject2 + * @memberof InlineObject10 */ - userIcon?: string; + unityPackageUrl?: string; } /** * * @export - * @interface InlineObject3 + * @interface InlineObject11 */ -export interface InlineObject3 { +export interface InlineObject11 { /** * * @type {string} - * @memberof InlineObject3 + * @memberof InlineObject11 */ - name: string; + assetUrl?: string; /** * - * @type {MIMEType} - * @memberof InlineObject3 + * @type {string} + * @memberof InlineObject11 */ - mimeType: MIMEType; + id?: string; /** * * @type {string} - * @memberof InlineObject3 + * @memberof InlineObject11 */ - extension: string; + name?: string; + /** + * + * @type {string} + * @memberof InlineObject11 + */ + description?: string; /** * * @type {Array} - * @memberof InlineObject3 + * @memberof InlineObject11 */ tags?: Array; + /** + * + * @type {string} + * @memberof InlineObject11 + */ + imageUrl?: string; + /** + * + * @type {ReleaseStatus} + * @memberof InlineObject11 + */ + releaseStatus?: ReleaseStatus; + /** + * + * @type {number} + * @memberof InlineObject11 + */ + version?: number; + /** + * + * @type {string} + * @memberof InlineObject11 + */ + unityPackageUrl?: string; } /** * * @export - * @interface InlineObject4 + * @interface InlineObject12 + */ +export interface InlineObject12 { + /** + * + * @type {string} + * @memberof InlineObject12 + */ + moderated: string; + /** + * + * @type {PlayerModerationType} + * @memberof InlineObject12 + */ + type: PlayerModerationType; +} +/** + * + * @export + * @interface InlineObject13 + */ +export interface InlineObject13 { + /** + * + * @type {string} + * @memberof InlineObject13 + */ + moderated?: string; + /** + * + * @type {PlayerModerationType} + * @memberof InlineObject13 + */ + type: PlayerModerationType; +} +/** + * + * @export + * @interface InlineObject2 + */ +export interface InlineObject2 { + /** + * + * @type {string} + * @memberof InlineObject2 + */ + email?: string; + /** + * + * @type {string} + * @memberof InlineObject2 + */ + birthday?: string; + /** + * + * @type {number} + * @memberof InlineObject2 + */ + acceptedTOSVersion?: number; + /** + * + * @type {Array} + * @memberof InlineObject2 + */ + tags?: Array; + /** + * + * @type {UserStatus} + * @memberof InlineObject2 + */ + status?: UserStatus; + /** + * + * @type {string} + * @memberof InlineObject2 + */ + statusDescription?: string; + /** + * + * @type {string} + * @memberof InlineObject2 + */ + bio?: string; + /** + * + * @type {Array} + * @memberof InlineObject2 + */ + bioLinks?: Array; + /** + * MUST be a valid VRChat /file/ url. + * @type {string} + * @memberof InlineObject2 + */ + userIcon?: string; +} +/** + * + * @export + * @interface InlineObject3 + */ +export interface InlineObject3 { + /** + * + * @type {string} + * @memberof InlineObject3 + */ + name: string; + /** + * + * @type {MIMEType} + * @memberof InlineObject3 + */ + mimeType: MIMEType; + /** + * + * @type {string} + * @memberof InlineObject3 + */ + extension: string; + /** + * + * @type {Array} + * @memberof InlineObject3 + */ + tags?: Array; +} +/** + * + * @export + * @interface InlineObject4 */ export interface InlineObject4 { + /** + * + * @type {string} + * @memberof InlineObject4 + */ + signatureMd5: string; + /** + * + * @type {number} + * @memberof InlineObject4 + */ + signatureSizeInBytes: number; + /** + * + * @type {string} + * @memberof InlineObject4 + */ + fileMd5?: string; + /** + * + * @type {number} + * @memberof InlineObject4 + */ + fileSizeInBytes?: number; +} +/** + * + * @export + * @interface InlineObject5 + */ +export interface InlineObject5 { /** * Array of ETags uploaded. * @type {Set} - * @memberof InlineObject4 + * @memberof InlineObject5 */ etags?: Set; /** * Always a zero in string form, despite how many parts uploaded. * @type {string} - * @memberof InlineObject4 + * @memberof InlineObject5 * @deprecated */ - nextPartNumber: InlineObject4NextPartNumberEnum; + nextPartNumber: string; /** * Always a zero in string form, despite how many parts uploaded. * @type {string} - * @memberof InlineObject4 + * @memberof InlineObject5 * @deprecated */ - maxParts: InlineObject4MaxPartsEnum; -} - -/** - * @export - * @enum {string} - */ -export enum InlineObject4NextPartNumberEnum { - _0 = '0' -} -/** - * @export - * @enum {string} - */ -export enum InlineObject4MaxPartsEnum { - _0 = '0' + maxParts: string; } - /** * * @export - * @interface InlineObject5 + * @interface InlineObject6 */ -export interface InlineObject5 { +export interface InlineObject6 { /** * * @type {string} - * @memberof InlineObject5 + * @memberof InlineObject6 */ assetUrl: string; /** * * @type {string} - * @memberof InlineObject5 + * @memberof InlineObject6 */ assetVersion?: string; /** * * @type {string} - * @memberof InlineObject5 + * @memberof InlineObject6 */ authorId?: string; /** * * @type {string} - * @memberof InlineObject5 + * @memberof InlineObject6 */ authorName?: string; /** * * @type {number} - * @memberof InlineObject5 + * @memberof InlineObject6 */ capacity?: number; /** * * @type {string} - * @memberof InlineObject5 + * @memberof InlineObject6 */ description?: string; /** * * @type {string} - * @memberof InlineObject5 + * @memberof InlineObject6 */ id?: string; /** * * @type {string} - * @memberof InlineObject5 + * @memberof InlineObject6 */ imageUrl: string; /** * * @type {string} - * @memberof InlineObject5 + * @memberof InlineObject6 */ name: string; /** * * @type {Platform} - * @memberof InlineObject5 + * @memberof InlineObject6 */ platform?: Platform; /** * * @type {ReleaseStatus} - * @memberof InlineObject5 + * @memberof InlineObject6 */ releaseStatus?: ReleaseStatus; /** * * @type {Array} - * @memberof InlineObject5 + * @memberof InlineObject6 */ tags?: Array; /** * * @type {string} - * @memberof InlineObject5 + * @memberof InlineObject6 */ unityPackageUrl?: string; /** * * @type {string} - * @memberof InlineObject5 + * @memberof InlineObject6 */ unityVersion?: string; } /** * * @export - * @interface InlineObject6 + * @interface InlineObject7 */ -export interface InlineObject6 { +export interface InlineObject7 { /** * * @type {string} - * @memberof InlineObject6 + * @memberof InlineObject7 */ assetUrl?: string; /** * * @type {string} - * @memberof InlineObject6 + * @memberof InlineObject7 */ assetVersion?: string; /** * * @type {string} - * @memberof InlineObject6 + * @memberof InlineObject7 */ authorId?: string; /** * * @type {string} - * @memberof InlineObject6 + * @memberof InlineObject7 */ authorName?: string; /** * * @type {number} - * @memberof InlineObject6 + * @memberof InlineObject7 */ capacity?: number; /** * * @type {string} - * @memberof InlineObject6 + * @memberof InlineObject7 */ description?: string; /** * * @type {string} - * @memberof InlineObject6 + * @memberof InlineObject7 */ id?: string; /** * * @type {string} - * @memberof InlineObject6 + * @memberof InlineObject7 */ imageUrl?: string; /** * * @type {string} - * @memberof InlineObject6 + * @memberof InlineObject7 */ name?: string; /** * * @type {Platform} - * @memberof InlineObject6 + * @memberof InlineObject7 */ platform?: Platform; /** * * @type {ReleaseStatus} - * @memberof InlineObject6 + * @memberof InlineObject7 */ releaseStatus?: ReleaseStatus; /** * * @type {Array} - * @memberof InlineObject6 + * @memberof InlineObject7 */ tags?: Array; /** * * @type {string} - * @memberof InlineObject6 + * @memberof InlineObject7 */ unityPackageUrl?: string; /** * * @type {string} - * @memberof InlineObject6 + * @memberof InlineObject7 */ unityVersion?: string; } +/** + * + * @export + * @interface InlineObject8 + */ +export interface InlineObject8 { + /** + * + * @type {FavoriteType} + * @memberof InlineObject8 + */ + type: FavoriteType; + /** + * Must be either AvatarID, WorldID or UserID. + * @type {string} + * @memberof InlineObject8 + */ + favoriteId: string; + /** + * Tags indicate which group this favorite belongs to. Adding multiple groups makes it show up in all. Removing it from one in that case removes it from all. + * @type {Array} + * @memberof InlineObject8 + */ + tags: Array; +} +/** + * + * @export + * @interface InlineObject9 + */ +export interface InlineObject9 { + /** + * + * @type {string} + * @memberof InlineObject9 + */ + displayName?: string; + /** + * + * @type {FavoriteGroupVisibility} + * @memberof InlineObject9 + */ + visibility?: FavoriteGroupVisibility; + /** + * Tags on FavoriteGroups are believed to do nothing. + * @type {Array} + * @memberof InlineObject9 + */ + tags?: Array; +} /** * * @export @@ -1885,7 +2350,7 @@ export interface LimitedUser { */ location: string; /** - * Always empty + * <- Always empty. * @type {Array} * @memberof LimitedUser */ @@ -2182,25 +2647,89 @@ export enum Platform { /** * * @export - * @enum {string} - */ - -export enum ReleaseStatus { - Public = 'public', - Private = 'private', - Hidden = 'hidden' -} - -/** - * - * @export - * @interface Response + * @interface PlayerModeration */ -export interface Response { +export interface PlayerModeration { /** * * @type {string} - * @memberof Response + * @memberof PlayerModeration + */ + id: string; + /** + * + * @type {PlayerModerationType} + * @memberof PlayerModeration + */ + type: PlayerModerationType; + /** + * + * @type {string} + * @memberof PlayerModeration + */ + sourceUserId: string; + /** + * + * @type {string} + * @memberof PlayerModeration + */ + sourceDisplayName: string; + /** + * + * @type {string} + * @memberof PlayerModeration + */ + targetUserId: string; + /** + * + * @type {string} + * @memberof PlayerModeration + */ + targetDisplayName: string; + /** + * + * @type {string} + * @memberof PlayerModeration + */ + created: string; +} +/** + * + * @export + * @enum {string} + */ + +export enum PlayerModerationType { + Mute = 'mute', + Unmute = 'unmute', + Block = 'block', + Unblock = 'unblock', + HideAvatar = 'hideAvatar', + ShowAvatar = 'showAvatar' +} + +/** + * + * @export + * @enum {string} + */ + +export enum ReleaseStatus { + Public = 'public', + Private = 'private', + Hidden = 'hidden' +} + +/** + * + * @export + * @interface Response + */ +export interface Response { + /** + * + * @type {string} + * @memberof Response */ message: string; /** @@ -2240,25 +2769,25 @@ export interface UnityPackage { * @type {string} * @memberof UnityPackage */ - assetUrl: string; + assetUrl?: string; /** * * @type {object} * @memberof UnityPackage */ - assetUrlObject: object; + assetUrlObject?: object; /** * * @type {string} * @memberof UnityPackage */ - pluginUrl: string; + pluginUrl?: string; /** * * @type {object} * @memberof UnityPackage */ - pluginUrlObject: object; + pluginUrlObject?: object; /** * * @type {string} @@ -2270,7 +2799,7 @@ export interface UnityPackage { * @type {number} * @memberof UnityPackage */ - unitySortNumber: number; + unitySortNumber?: number; /** * * @type {number} @@ -2288,7 +2817,7 @@ export interface UnityPackage { * @type {string} * @memberof UnityPackage */ - created_at: string; + created_at?: string; } /** * @@ -2442,7 +2971,7 @@ export interface User { location: string; } /** - * * \"online\" User is online in VRChat * \"active\" User is online, but not in VRChat * \"offline\" User is offline + * * \"online\" User is online in VRChat * \"active\" User is online, but not in VRChat * \"offline\" User is offline Always offline when returned through `getCurrentUser` (/auth/user). * @export * @enum {string} */ @@ -2547,10 +3076,10 @@ export interface World { imageUrl: string; /** * - * @type {Array>} + * @type {Array>} * @memberof World */ - instances?: Array>; + instances?: Array>; /** * * @type {string} @@ -3111,20 +3640,20 @@ export class AuthenticationApi extends BaseAPI { /** - * FilesApi - axios parameter creator + * AvatarsApi - axios parameter creator * @export */ -export const FilesApiAxiosParamCreator = function (configuration?: Configuration) { +export const AvatarsApiAxiosParamCreator = function (configuration?: Configuration) { return { /** - * Creates a new File object - * @summary Create File - * @param {InlineObject3} [inlineObject3] + * Create an avatar. It\'s possible to optionally specify a ID if you want a custom one. Attempting to create an Avatar with an already claimed ID will result in a DB error. + * @summary Create Avatar + * @param {InlineObject10} [inlineObject10] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - createFile: async (inlineObject3?: InlineObject3, options: any = {}): Promise => { - const localVarPath = `/file`; + createAvatar: async (inlineObject10?: InlineObject10, options: any = {}): Promise => { + const localVarPath = `/avatars`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -3147,7 +3676,7 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - localVarRequestOptions.data = serializeDataIfNeeded(inlineObject3, localVarRequestOptions, configuration) + localVarRequestOptions.data = serializeDataIfNeeded(inlineObject10, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), @@ -3155,17 +3684,17 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration }; }, /** - * Creates a new FileVersion. Once a Version has been created, proceed to the `/file/{fileId}/{versionId}/file/start` endpoint to start a file upload. - * @summary Create File Version - * @param {string} fileId + * Delete an avatar. Notice an avatar is never fully \"deleted\", only its ReleaseStatus is set to \"hidden\" and the linked Files are deleted. The AvatarID is permanently reserved. + * @summary Delete Avatar + * @param {string} avatarId * @param {*} [options] Override http request option. * @throws {RequiredError} */ - createFileVersion: async (fileId: string, options: any = {}): Promise => { - // verify required parameter 'fileId' is not null or undefined - assertParamExists('createFileVersion', 'fileId', fileId) - const localVarPath = `/file/{fileId}` - .replace(`{${"fileId"}}`, encodeURIComponent(String(fileId))); + deleteAvatar: async (avatarId: string, options: any = {}): Promise => { + // verify required parameter 'avatarId' is not null or undefined + assertParamExists('deleteAvatar', 'avatarId', avatarId) + const localVarPath = `/avatars/{avatarId}` + .replace(`{${"avatarId"}}`, encodeURIComponent(String(avatarId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -3173,7 +3702,7 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; @@ -3193,17 +3722,17 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration }; }, /** - * Deletes a File object. - * @summary Delete File - * @param {string} fileId + * Get information about a specific Avatar. + * @summary Get Avatar + * @param {string} avatarId * @param {*} [options] Override http request option. * @throws {RequiredError} */ - deleteFile: async (fileId: string, options: any = {}): Promise => { - // verify required parameter 'fileId' is not null or undefined - assertParamExists('deleteFile', 'fileId', fileId) - const localVarPath = `/file/{fileId}` - .replace(`{${"fileId"}}`, encodeURIComponent(String(fileId))); + getAvatar: async (avatarId: string, options: any = {}): Promise => { + // verify required parameter 'avatarId' is not null or undefined + assertParamExists('getAvatar', 'avatarId', avatarId) + const localVarPath = `/avatars/{avatarId}` + .replace(`{${"avatarId"}}`, encodeURIComponent(String(avatarId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -3211,7 +3740,7 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; @@ -3231,21 +3760,26 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration }; }, /** - * Delete a specific version of a file. You can only delete the latest version. - * @summary Delete File Version - * @param {string} fileId - * @param {number} versionId + * Search and list favorited avatars by query filters. + * @summary List Favorited Avatars + * @param {string} [featured] Filters on featured results. + * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] + * @param {number} [n] The number of objects to return. + * @param {'ascending' | 'descending'} [order] + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [search] Filters by world name. + * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [notag] Tags to exclude (comma-separated). + * @param {'public' | 'private' | 'hidden'} [releaseStatus] Filter by ReleaseStatus. + * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. + * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. + * @param {string} [platform] The platform the asset supports. + * @param {string} [userId] Target user to see information on, admin-only. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - deleteFileVersion: async (fileId: string, versionId: number, options: any = {}): Promise => { - // verify required parameter 'fileId' is not null or undefined - assertParamExists('deleteFileVersion', 'fileId', fileId) - // verify required parameter 'versionId' is not null or undefined - assertParamExists('deleteFileVersion', 'versionId', versionId) - const localVarPath = `/file/{fileId}/{versionId}` - .replace(`{${"fileId"}}`, encodeURIComponent(String(fileId))) - .replace(`{${"versionId"}}`, encodeURIComponent(String(versionId))); + getFavoritedAvatars: async (featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options: any = {}): Promise => { + const localVarPath = `/avatars/favorites`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -3253,7 +3787,7 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; @@ -3261,103 +3795,63 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration // authentication authCookie required + if (featured !== undefined) { + localVarQueryParameter['featured'] = featured; + } - - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); - let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; - localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + if (sort !== undefined) { + localVarQueryParameter['sort'] = sort; + } - return { - url: toPathString(localVarUrlObj), - options: localVarRequestOptions, - }; - }, - /** - * Downloads the file with the provided version number. **Version Note:** Version 0 is always when the file was created. The real data is usually always located in version 1 and up. **Extension Note:** Files are not guaranteed to have a file extensions. UnityPackage files tends to have it, images through this endpoint do not. You are responsible for appending file extension from the `extension` field when neccesary. - * @summary Download File Version - * @param {string} fileId - * @param {number} versionId - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - downloadFileVersion: async (fileId: string, versionId: number, options: any = {}): Promise => { - // verify required parameter 'fileId' is not null or undefined - assertParamExists('downloadFileVersion', 'fileId', fileId) - // verify required parameter 'versionId' is not null or undefined - assertParamExists('downloadFileVersion', 'versionId', versionId) - const localVarPath = `/file/{fileId}/{versionId}` - .replace(`{${"fileId"}}`, encodeURIComponent(String(fileId))) - .replace(`{${"versionId"}}`, encodeURIComponent(String(versionId))); - // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); - let baseOptions; - if (configuration) { - baseOptions = configuration.baseOptions; + if (n !== undefined) { + localVarQueryParameter['n'] = n; } - const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; - const localVarHeaderParameter = {} as any; - const localVarQueryParameter = {} as any; + if (order !== undefined) { + localVarQueryParameter['order'] = order; + } - // authentication apiKeyCookie required + if (offset !== undefined) { + localVarQueryParameter['offset'] = offset; + } - // authentication authCookie required + if (search !== undefined) { + localVarQueryParameter['search'] = search; + } + if (tag !== undefined) { + localVarQueryParameter['tag'] = tag; + } - - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); - let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; - localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + if (notag !== undefined) { + localVarQueryParameter['notag'] = notag; + } - return { - url: toPathString(localVarUrlObj), - options: localVarRequestOptions, - }; - }, - /** - * Finish an upload of a FileData. This will mark it as \"complete\". After uploading the `file` for Avatars and Worlds you then have to upload a `signature` file. - * @summary Finish FileData Upload - * @param {string} fileId - * @param {number} versionId - * @param {'file' | 'signature' | 'delta'} fileType - * @param {InlineObject4} [inlineObject4] - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - finishFileDataUpload: async (fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', inlineObject4?: InlineObject4, options: any = {}): Promise => { - // verify required parameter 'fileId' is not null or undefined - assertParamExists('finishFileDataUpload', 'fileId', fileId) - // verify required parameter 'versionId' is not null or undefined - assertParamExists('finishFileDataUpload', 'versionId', versionId) - // verify required parameter 'fileType' is not null or undefined - assertParamExists('finishFileDataUpload', 'fileType', fileType) - const localVarPath = `/file/{fileId}/{versionId}/{fileType}/finish` - .replace(`{${"fileId"}}`, encodeURIComponent(String(fileId))) - .replace(`{${"versionId"}}`, encodeURIComponent(String(versionId))) - .replace(`{${"fileType"}}`, encodeURIComponent(String(fileType))); - // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); - let baseOptions; - if (configuration) { - baseOptions = configuration.baseOptions; + if (releaseStatus !== undefined) { + localVarQueryParameter['releaseStatus'] = releaseStatus; } - const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; - const localVarHeaderParameter = {} as any; - const localVarQueryParameter = {} as any; + if (maxUnityVersion !== undefined) { + localVarQueryParameter['maxUnityVersion'] = maxUnityVersion; + } - // authentication apiKeyCookie required + if (minUnityVersion !== undefined) { + localVarQueryParameter['minUnityVersion'] = minUnityVersion; + } - // authentication authCookie required + if (platform !== undefined) { + localVarQueryParameter['platform'] = platform; + } + + if (userId !== undefined) { + localVarQueryParameter['userId'] = userId; + } - localVarHeaderParameter['Content-Type'] = 'application/json'; - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - localVarRequestOptions.data = serializeDataIfNeeded(inlineObject4, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), @@ -3365,17 +3859,26 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration }; }, /** - * Shows general information about the \"File\" object. Each File can have several \"Version\"\'s, and each Version can have multiple real files or \"Data\" blobs. - * @summary Show File - * @param {string} fileId + * Search and list avatars by query filters. You can only search your own or featured avatars. It is not possible as a normal user to search other peoples avatars. + * @summary Search Avatars + * @param {string} [featured] Filters on featured results. + * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] + * @param {'me'} [user] Set to `me` for searching own avatars. + * @param {string} [userId] Filter by author UserID + * @param {number} [n] The number of objects to return. + * @param {'ascending' | 'descending'} [order] + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [notag] Tags to exclude (comma-separated). + * @param {'public' | 'private' | 'hidden'} [releaseStatus] Filter by ReleaseStatus. + * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. + * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. + * @param {string} [platform] The platform the asset supports. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFile: async (fileId: string, options: any = {}): Promise => { - // verify required parameter 'fileId' is not null or undefined - assertParamExists('getFile', 'fileId', fileId) - const localVarPath = `/file/{fileId}` - .replace(`{${"fileId"}}`, encodeURIComponent(String(fileId))); + searchAvatars: async (featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options: any = {}): Promise => { + const localVarPath = `/avatars`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -3391,51 +3894,57 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration // authentication authCookie required + if (featured !== undefined) { + localVarQueryParameter['featured'] = featured; + } - - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); - let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; - localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + if (sort !== undefined) { + localVarQueryParameter['sort'] = sort; + } - return { - url: toPathString(localVarUrlObj), - options: localVarRequestOptions, - }; - }, - /** - * Retrieves the upload status for file upload. Can currently only be accessed when `status` is `waiting`. Trying to access it on a file version already uploaded currently times out. - * @summary Check FileData Upload Status - * @param {string} fileId - * @param {number} versionId - * @param {'file' | 'signature' | 'delta'} fileType - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - getFileDataUploadStatus: async (fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', options: any = {}): Promise => { - // verify required parameter 'fileId' is not null or undefined - assertParamExists('getFileDataUploadStatus', 'fileId', fileId) - // verify required parameter 'versionId' is not null or undefined - assertParamExists('getFileDataUploadStatus', 'versionId', versionId) - // verify required parameter 'fileType' is not null or undefined - assertParamExists('getFileDataUploadStatus', 'fileType', fileType) - const localVarPath = `/file/{fileId}/{versionId}/{fileType}/status` - .replace(`{${"fileId"}}`, encodeURIComponent(String(fileId))) - .replace(`{${"versionId"}}`, encodeURIComponent(String(versionId))) - .replace(`{${"fileType"}}`, encodeURIComponent(String(fileType))); - // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); - let baseOptions; - if (configuration) { - baseOptions = configuration.baseOptions; + if (user !== undefined) { + localVarQueryParameter['user'] = user; } - const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; - const localVarHeaderParameter = {} as any; - const localVarQueryParameter = {} as any; + if (userId !== undefined) { + localVarQueryParameter['userId'] = userId; + } - // authentication apiKeyCookie required + if (n !== undefined) { + localVarQueryParameter['n'] = n; + } - // authentication authCookie required + if (order !== undefined) { + localVarQueryParameter['order'] = order; + } + + if (offset !== undefined) { + localVarQueryParameter['offset'] = offset; + } + + if (tag !== undefined) { + localVarQueryParameter['tag'] = tag; + } + + if (notag !== undefined) { + localVarQueryParameter['notag'] = notag; + } + + if (releaseStatus !== undefined) { + localVarQueryParameter['releaseStatus'] = releaseStatus; + } + + if (maxUnityVersion !== undefined) { + localVarQueryParameter['maxUnityVersion'] = maxUnityVersion; + } + + if (minUnityVersion !== undefined) { + localVarQueryParameter['minUnityVersion'] = minUnityVersion; + } + + if (platform !== undefined) { + localVarQueryParameter['platform'] = platform; + } @@ -3449,17 +3958,17 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration }; }, /** - * Returns a list of files - * @summary List Files - * @param {string} [tag] Tag, for example \"icon\" or \"gallery\", not included by default. - * @param {string} [userId] UserID, will always generate a 500 permission error. - * @param {number} [n] The number of objects to return. - * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * Switches into that avatar. + * @summary Select Avatar + * @param {string} avatarId * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFiles: async (tag?: string, userId?: string, n?: number, offset?: number, options: any = {}): Promise => { - const localVarPath = `/files`; + selectAvatar: async (avatarId: string, options: any = {}): Promise => { + // verify required parameter 'avatarId' is not null or undefined + assertParamExists('selectAvatar', 'avatarId', avatarId) + const localVarPath = `/avatars/{avatarId}/select` + .replace(`{${"avatarId"}}`, encodeURIComponent(String(avatarId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -3467,7 +3976,7 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; @@ -3475,22 +3984,6 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration // authentication authCookie required - if (tag !== undefined) { - localVarQueryParameter['tag'] = tag; - } - - if (userId !== undefined) { - localVarQueryParameter['userId'] = userId; - } - - if (n !== undefined) { - localVarQueryParameter['n'] = n; - } - - if (offset !== undefined) { - localVarQueryParameter['offset'] = offset; - } - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); @@ -3503,28 +3996,18 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration }; }, /** - * Starts an upload of a specific FilePart. This endpoint will return an AWS URL which you can PUT data to. You need to call this and receive a new AWS API URL for each `partNumber`. Please see AWS\'s REST documentation on \"PUT Object to S3\" on how to upload. Once all parts has been uploaded, proceed to `/finish` endpoint. **Note:** `nextPartNumber` seems like it is always ignored. Despite it returning 0, first partNumber is always 1. - * @summary Start FileData Upload - * @param {string} fileId - * @param {number} versionId - * @param {'file' | 'signature' | 'delta'} fileType - * @param {number} partNumber + * Update information about a specific avatar. + * @summary Update Avatar + * @param {string} avatarId + * @param {InlineObject11} [inlineObject11] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - startFileDataUpload: async (fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', partNumber: number, options: any = {}): Promise => { - // verify required parameter 'fileId' is not null or undefined - assertParamExists('startFileDataUpload', 'fileId', fileId) - // verify required parameter 'versionId' is not null or undefined - assertParamExists('startFileDataUpload', 'versionId', versionId) - // verify required parameter 'fileType' is not null or undefined - assertParamExists('startFileDataUpload', 'fileType', fileType) - // verify required parameter 'partNumber' is not null or undefined - assertParamExists('startFileDataUpload', 'partNumber', partNumber) - const localVarPath = `/file/{fileId}/{versionId}/{fileType}/start` - .replace(`{${"fileId"}}`, encodeURIComponent(String(fileId))) - .replace(`{${"versionId"}}`, encodeURIComponent(String(versionId))) - .replace(`{${"fileType"}}`, encodeURIComponent(String(fileType))); + updateAvatar: async (avatarId: string, inlineObject11?: InlineObject11, options: any = {}): Promise => { + // verify required parameter 'avatarId' is not null or undefined + assertParamExists('updateAvatar', 'avatarId', avatarId) + const localVarPath = `/avatars/{avatarId}` + .replace(`{${"avatarId"}}`, encodeURIComponent(String(avatarId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -3540,15 +4023,14 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration // authentication authCookie required - if (partNumber !== undefined) { - localVarQueryParameter['partNumber'] = partNumber; - } - + localVarHeaderParameter['Content-Type'] = 'application/json'; + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(inlineObject11, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), @@ -3559,420 +4041,403 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration }; /** - * FilesApi - functional programming interface + * AvatarsApi - functional programming interface * @export */ -export const FilesApiFp = function(configuration?: Configuration) { - const localVarAxiosParamCreator = FilesApiAxiosParamCreator(configuration) +export const AvatarsApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = AvatarsApiAxiosParamCreator(configuration) return { /** - * Creates a new File object - * @summary Create File - * @param {InlineObject3} [inlineObject3] - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - async createFile(inlineObject3?: InlineObject3, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.createFile(inlineObject3, options); - return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); - }, - /** - * Creates a new FileVersion. Once a Version has been created, proceed to the `/file/{fileId}/{versionId}/file/start` endpoint to start a file upload. - * @summary Create File Version - * @param {string} fileId - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - async createFileVersion(fileId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.createFileVersion(fileId, options); - return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); - }, - /** - * Deletes a File object. - * @summary Delete File - * @param {string} fileId - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - async deleteFile(fileId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.deleteFile(fileId, options); - return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); - }, - /** - * Delete a specific version of a file. You can only delete the latest version. - * @summary Delete File Version - * @param {string} fileId - * @param {number} versionId + * Create an avatar. It\'s possible to optionally specify a ID if you want a custom one. Attempting to create an Avatar with an already claimed ID will result in a DB error. + * @summary Create Avatar + * @param {InlineObject10} [inlineObject10] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async deleteFileVersion(fileId: string, versionId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.deleteFileVersion(fileId, versionId, options); + async createAvatar(inlineObject10?: InlineObject10, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.createAvatar(inlineObject10, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Downloads the file with the provided version number. **Version Note:** Version 0 is always when the file was created. The real data is usually always located in version 1 and up. **Extension Note:** Files are not guaranteed to have a file extensions. UnityPackage files tends to have it, images through this endpoint do not. You are responsible for appending file extension from the `extension` field when neccesary. - * @summary Download File Version - * @param {string} fileId - * @param {number} versionId + * Delete an avatar. Notice an avatar is never fully \"deleted\", only its ReleaseStatus is set to \"hidden\" and the linked Files are deleted. The AvatarID is permanently reserved. + * @summary Delete Avatar + * @param {string} avatarId * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async downloadFileVersion(fileId: string, versionId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.downloadFileVersion(fileId, versionId, options); + async deleteAvatar(avatarId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.deleteAvatar(avatarId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Finish an upload of a FileData. This will mark it as \"complete\". After uploading the `file` for Avatars and Worlds you then have to upload a `signature` file. - * @summary Finish FileData Upload - * @param {string} fileId - * @param {number} versionId - * @param {'file' | 'signature' | 'delta'} fileType - * @param {InlineObject4} [inlineObject4] + * Get information about a specific Avatar. + * @summary Get Avatar + * @param {string} avatarId * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async finishFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', inlineObject4?: InlineObject4, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.finishFileDataUpload(fileId, versionId, fileType, inlineObject4, options); + async getAvatar(avatarId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getAvatar(avatarId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Shows general information about the \"File\" object. Each File can have several \"Version\"\'s, and each Version can have multiple real files or \"Data\" blobs. - * @summary Show File - * @param {string} fileId + * Search and list favorited avatars by query filters. + * @summary List Favorited Avatars + * @param {string} [featured] Filters on featured results. + * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] + * @param {number} [n] The number of objects to return. + * @param {'ascending' | 'descending'} [order] + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [search] Filters by world name. + * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [notag] Tags to exclude (comma-separated). + * @param {'public' | 'private' | 'hidden'} [releaseStatus] Filter by ReleaseStatus. + * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. + * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. + * @param {string} [platform] The platform the asset supports. + * @param {string} [userId] Target user to see information on, admin-only. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getFile(fileId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getFile(fileId, options); + async getFavoritedAvatars(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getFavoritedAvatars(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Retrieves the upload status for file upload. Can currently only be accessed when `status` is `waiting`. Trying to access it on a file version already uploaded currently times out. - * @summary Check FileData Upload Status - * @param {string} fileId - * @param {number} versionId - * @param {'file' | 'signature' | 'delta'} fileType + * Search and list avatars by query filters. You can only search your own or featured avatars. It is not possible as a normal user to search other peoples avatars. + * @summary Search Avatars + * @param {string} [featured] Filters on featured results. + * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] + * @param {'me'} [user] Set to `me` for searching own avatars. + * @param {string} [userId] Filter by author UserID + * @param {number} [n] The number of objects to return. + * @param {'ascending' | 'descending'} [order] + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [notag] Tags to exclude (comma-separated). + * @param {'public' | 'private' | 'hidden'} [releaseStatus] Filter by ReleaseStatus. + * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. + * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. + * @param {string} [platform] The platform the asset supports. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getFileDataUploadStatus(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getFileDataUploadStatus(fileId, versionId, fileType, options); + async searchAvatars(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.searchAvatars(featured, sort, user, userId, n, order, offset, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Returns a list of files - * @summary List Files - * @param {string} [tag] Tag, for example \"icon\" or \"gallery\", not included by default. - * @param {string} [userId] UserID, will always generate a 500 permission error. - * @param {number} [n] The number of objects to return. - * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * Switches into that avatar. + * @summary Select Avatar + * @param {string} avatarId * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getFiles(tag?: string, userId?: string, n?: number, offset?: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getFiles(tag, userId, n, offset, options); + async selectAvatar(avatarId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.selectAvatar(avatarId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Starts an upload of a specific FilePart. This endpoint will return an AWS URL which you can PUT data to. You need to call this and receive a new AWS API URL for each `partNumber`. Please see AWS\'s REST documentation on \"PUT Object to S3\" on how to upload. Once all parts has been uploaded, proceed to `/finish` endpoint. **Note:** `nextPartNumber` seems like it is always ignored. Despite it returning 0, first partNumber is always 1. - * @summary Start FileData Upload - * @param {string} fileId - * @param {number} versionId - * @param {'file' | 'signature' | 'delta'} fileType - * @param {number} partNumber + * Update information about a specific avatar. + * @summary Update Avatar + * @param {string} avatarId + * @param {InlineObject11} [inlineObject11] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async startFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', partNumber: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.startFileDataUpload(fileId, versionId, fileType, partNumber, options); + async updateAvatar(avatarId: string, inlineObject11?: InlineObject11, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.updateAvatar(avatarId, inlineObject11, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, } }; /** - * FilesApi - factory interface + * AvatarsApi - factory interface * @export */ -export const FilesApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { - const localVarFp = FilesApiFp(configuration) +export const AvatarsApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = AvatarsApiFp(configuration) return { /** - * Creates a new File object - * @summary Create File - * @param {InlineObject3} [inlineObject3] + * Create an avatar. It\'s possible to optionally specify a ID if you want a custom one. Attempting to create an Avatar with an already claimed ID will result in a DB error. + * @summary Create Avatar + * @param {InlineObject10} [inlineObject10] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - createFile(inlineObject3?: InlineObject3, options?: any): AxiosPromise { - return localVarFp.createFile(inlineObject3, options).then((request) => request(axios, basePath)); + createAvatar(inlineObject10?: InlineObject10, options?: any): AxiosPromise { + return localVarFp.createAvatar(inlineObject10, options).then((request) => request(axios, basePath)); }, /** - * Creates a new FileVersion. Once a Version has been created, proceed to the `/file/{fileId}/{versionId}/file/start` endpoint to start a file upload. - * @summary Create File Version - * @param {string} fileId + * Delete an avatar. Notice an avatar is never fully \"deleted\", only its ReleaseStatus is set to \"hidden\" and the linked Files are deleted. The AvatarID is permanently reserved. + * @summary Delete Avatar + * @param {string} avatarId * @param {*} [options] Override http request option. * @throws {RequiredError} */ - createFileVersion(fileId: string, options?: any): AxiosPromise { - return localVarFp.createFileVersion(fileId, options).then((request) => request(axios, basePath)); + deleteAvatar(avatarId: string, options?: any): AxiosPromise { + return localVarFp.deleteAvatar(avatarId, options).then((request) => request(axios, basePath)); }, /** - * Deletes a File object. - * @summary Delete File - * @param {string} fileId + * Get information about a specific Avatar. + * @summary Get Avatar + * @param {string} avatarId * @param {*} [options] Override http request option. * @throws {RequiredError} */ - deleteFile(fileId: string, options?: any): AxiosPromise { - return localVarFp.deleteFile(fileId, options).then((request) => request(axios, basePath)); + getAvatar(avatarId: string, options?: any): AxiosPromise { + return localVarFp.getAvatar(avatarId, options).then((request) => request(axios, basePath)); }, /** - * Delete a specific version of a file. You can only delete the latest version. - * @summary Delete File Version - * @param {string} fileId - * @param {number} versionId - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - deleteFileVersion(fileId: string, versionId: number, options?: any): AxiosPromise { - return localVarFp.deleteFileVersion(fileId, versionId, options).then((request) => request(axios, basePath)); - }, - /** - * Downloads the file with the provided version number. **Version Note:** Version 0 is always when the file was created. The real data is usually always located in version 1 and up. **Extension Note:** Files are not guaranteed to have a file extensions. UnityPackage files tends to have it, images through this endpoint do not. You are responsible for appending file extension from the `extension` field when neccesary. - * @summary Download File Version - * @param {string} fileId - * @param {number} versionId - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - downloadFileVersion(fileId: string, versionId: number, options?: any): AxiosPromise { - return localVarFp.downloadFileVersion(fileId, versionId, options).then((request) => request(axios, basePath)); - }, - /** - * Finish an upload of a FileData. This will mark it as \"complete\". After uploading the `file` for Avatars and Worlds you then have to upload a `signature` file. - * @summary Finish FileData Upload - * @param {string} fileId - * @param {number} versionId - * @param {'file' | 'signature' | 'delta'} fileType - * @param {InlineObject4} [inlineObject4] - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - finishFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', inlineObject4?: InlineObject4, options?: any): AxiosPromise { - return localVarFp.finishFileDataUpload(fileId, versionId, fileType, inlineObject4, options).then((request) => request(axios, basePath)); - }, - /** - * Shows general information about the \"File\" object. Each File can have several \"Version\"\'s, and each Version can have multiple real files or \"Data\" blobs. - * @summary Show File - * @param {string} fileId + * Search and list favorited avatars by query filters. + * @summary List Favorited Avatars + * @param {string} [featured] Filters on featured results. + * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] + * @param {number} [n] The number of objects to return. + * @param {'ascending' | 'descending'} [order] + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [search] Filters by world name. + * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [notag] Tags to exclude (comma-separated). + * @param {'public' | 'private' | 'hidden'} [releaseStatus] Filter by ReleaseStatus. + * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. + * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. + * @param {string} [platform] The platform the asset supports. + * @param {string} [userId] Target user to see information on, admin-only. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFile(fileId: string, options?: any): AxiosPromise { - return localVarFp.getFile(fileId, options).then((request) => request(axios, basePath)); + getFavoritedAvatars(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any): AxiosPromise { + return localVarFp.getFavoritedAvatars(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options).then((request) => request(axios, basePath)); }, /** - * Retrieves the upload status for file upload. Can currently only be accessed when `status` is `waiting`. Trying to access it on a file version already uploaded currently times out. - * @summary Check FileData Upload Status - * @param {string} fileId - * @param {number} versionId - * @param {'file' | 'signature' | 'delta'} fileType + * Search and list avatars by query filters. You can only search your own or featured avatars. It is not possible as a normal user to search other peoples avatars. + * @summary Search Avatars + * @param {string} [featured] Filters on featured results. + * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] + * @param {'me'} [user] Set to `me` for searching own avatars. + * @param {string} [userId] Filter by author UserID + * @param {number} [n] The number of objects to return. + * @param {'ascending' | 'descending'} [order] + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [notag] Tags to exclude (comma-separated). + * @param {'public' | 'private' | 'hidden'} [releaseStatus] Filter by ReleaseStatus. + * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. + * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. + * @param {string} [platform] The platform the asset supports. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFileDataUploadStatus(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', options?: any): AxiosPromise { - return localVarFp.getFileDataUploadStatus(fileId, versionId, fileType, options).then((request) => request(axios, basePath)); + searchAvatars(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: any): AxiosPromise> { + return localVarFp.searchAvatars(featured, sort, user, userId, n, order, offset, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options).then((request) => request(axios, basePath)); }, /** - * Returns a list of files - * @summary List Files - * @param {string} [tag] Tag, for example \"icon\" or \"gallery\", not included by default. - * @param {string} [userId] UserID, will always generate a 500 permission error. - * @param {number} [n] The number of objects to return. - * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * Switches into that avatar. + * @summary Select Avatar + * @param {string} avatarId * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFiles(tag?: string, userId?: string, n?: number, offset?: number, options?: any): AxiosPromise> { - return localVarFp.getFiles(tag, userId, n, offset, options).then((request) => request(axios, basePath)); + selectAvatar(avatarId: string, options?: any): AxiosPromise { + return localVarFp.selectAvatar(avatarId, options).then((request) => request(axios, basePath)); }, /** - * Starts an upload of a specific FilePart. This endpoint will return an AWS URL which you can PUT data to. You need to call this and receive a new AWS API URL for each `partNumber`. Please see AWS\'s REST documentation on \"PUT Object to S3\" on how to upload. Once all parts has been uploaded, proceed to `/finish` endpoint. **Note:** `nextPartNumber` seems like it is always ignored. Despite it returning 0, first partNumber is always 1. - * @summary Start FileData Upload - * @param {string} fileId - * @param {number} versionId - * @param {'file' | 'signature' | 'delta'} fileType - * @param {number} partNumber + * Update information about a specific avatar. + * @summary Update Avatar + * @param {string} avatarId + * @param {InlineObject11} [inlineObject11] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - startFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', partNumber: number, options?: any): AxiosPromise { - return localVarFp.startFileDataUpload(fileId, versionId, fileType, partNumber, options).then((request) => request(axios, basePath)); + updateAvatar(avatarId: string, inlineObject11?: InlineObject11, options?: any): AxiosPromise { + return localVarFp.updateAvatar(avatarId, inlineObject11, options).then((request) => request(axios, basePath)); }, }; }; /** - * FilesApi - object-oriented interface + * AvatarsApi - object-oriented interface * @export - * @class FilesApi + * @class AvatarsApi * @extends {BaseAPI} */ -export class FilesApi extends BaseAPI { - /** - * Creates a new File object - * @summary Create File - * @param {InlineObject3} [inlineObject3] - * @param {*} [options] Override http request option. - * @throws {RequiredError} - * @memberof FilesApi - */ - public createFile(inlineObject3?: InlineObject3, options?: any) { - return FilesApiFp(this.configuration).createFile(inlineObject3, options).then((request) => request(this.axios, this.basePath)); - } - - /** - * Creates a new FileVersion. Once a Version has been created, proceed to the `/file/{fileId}/{versionId}/file/start` endpoint to start a file upload. - * @summary Create File Version - * @param {string} fileId - * @param {*} [options] Override http request option. - * @throws {RequiredError} - * @memberof FilesApi - */ - public createFileVersion(fileId: string, options?: any) { - return FilesApiFp(this.configuration).createFileVersion(fileId, options).then((request) => request(this.axios, this.basePath)); - } - - /** - * Deletes a File object. - * @summary Delete File - * @param {string} fileId - * @param {*} [options] Override http request option. - * @throws {RequiredError} - * @memberof FilesApi - */ - public deleteFile(fileId: string, options?: any) { - return FilesApiFp(this.configuration).deleteFile(fileId, options).then((request) => request(this.axios, this.basePath)); - } - +export class AvatarsApi extends BaseAPI { /** - * Delete a specific version of a file. You can only delete the latest version. - * @summary Delete File Version - * @param {string} fileId - * @param {number} versionId + * Create an avatar. It\'s possible to optionally specify a ID if you want a custom one. Attempting to create an Avatar with an already claimed ID will result in a DB error. + * @summary Create Avatar + * @param {InlineObject10} [inlineObject10] * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof FilesApi + * @memberof AvatarsApi */ - public deleteFileVersion(fileId: string, versionId: number, options?: any) { - return FilesApiFp(this.configuration).deleteFileVersion(fileId, versionId, options).then((request) => request(this.axios, this.basePath)); + public createAvatar(inlineObject10?: InlineObject10, options?: any) { + return AvatarsApiFp(this.configuration).createAvatar(inlineObject10, options).then((request) => request(this.axios, this.basePath)); } /** - * Downloads the file with the provided version number. **Version Note:** Version 0 is always when the file was created. The real data is usually always located in version 1 and up. **Extension Note:** Files are not guaranteed to have a file extensions. UnityPackage files tends to have it, images through this endpoint do not. You are responsible for appending file extension from the `extension` field when neccesary. - * @summary Download File Version - * @param {string} fileId - * @param {number} versionId + * Delete an avatar. Notice an avatar is never fully \"deleted\", only its ReleaseStatus is set to \"hidden\" and the linked Files are deleted. The AvatarID is permanently reserved. + * @summary Delete Avatar + * @param {string} avatarId * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof FilesApi + * @memberof AvatarsApi */ - public downloadFileVersion(fileId: string, versionId: number, options?: any) { - return FilesApiFp(this.configuration).downloadFileVersion(fileId, versionId, options).then((request) => request(this.axios, this.basePath)); + public deleteAvatar(avatarId: string, options?: any) { + return AvatarsApiFp(this.configuration).deleteAvatar(avatarId, options).then((request) => request(this.axios, this.basePath)); } /** - * Finish an upload of a FileData. This will mark it as \"complete\". After uploading the `file` for Avatars and Worlds you then have to upload a `signature` file. - * @summary Finish FileData Upload - * @param {string} fileId - * @param {number} versionId - * @param {'file' | 'signature' | 'delta'} fileType - * @param {InlineObject4} [inlineObject4] + * Get information about a specific Avatar. + * @summary Get Avatar + * @param {string} avatarId * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof FilesApi + * @memberof AvatarsApi */ - public finishFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', inlineObject4?: InlineObject4, options?: any) { - return FilesApiFp(this.configuration).finishFileDataUpload(fileId, versionId, fileType, inlineObject4, options).then((request) => request(this.axios, this.basePath)); + public getAvatar(avatarId: string, options?: any) { + return AvatarsApiFp(this.configuration).getAvatar(avatarId, options).then((request) => request(this.axios, this.basePath)); } /** - * Shows general information about the \"File\" object. Each File can have several \"Version\"\'s, and each Version can have multiple real files or \"Data\" blobs. - * @summary Show File - * @param {string} fileId + * Search and list favorited avatars by query filters. + * @summary List Favorited Avatars + * @param {string} [featured] Filters on featured results. + * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] + * @param {number} [n] The number of objects to return. + * @param {'ascending' | 'descending'} [order] + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [search] Filters by world name. + * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [notag] Tags to exclude (comma-separated). + * @param {'public' | 'private' | 'hidden'} [releaseStatus] Filter by ReleaseStatus. + * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. + * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. + * @param {string} [platform] The platform the asset supports. + * @param {string} [userId] Target user to see information on, admin-only. * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof FilesApi + * @memberof AvatarsApi */ - public getFile(fileId: string, options?: any) { - return FilesApiFp(this.configuration).getFile(fileId, options).then((request) => request(this.axios, this.basePath)); + public getFavoritedAvatars(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any) { + return AvatarsApiFp(this.configuration).getFavoritedAvatars(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options).then((request) => request(this.axios, this.basePath)); } /** - * Retrieves the upload status for file upload. Can currently only be accessed when `status` is `waiting`. Trying to access it on a file version already uploaded currently times out. - * @summary Check FileData Upload Status - * @param {string} fileId - * @param {number} versionId - * @param {'file' | 'signature' | 'delta'} fileType + * Search and list avatars by query filters. You can only search your own or featured avatars. It is not possible as a normal user to search other peoples avatars. + * @summary Search Avatars + * @param {string} [featured] Filters on featured results. + * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] + * @param {'me'} [user] Set to `me` for searching own avatars. + * @param {string} [userId] Filter by author UserID + * @param {number} [n] The number of objects to return. + * @param {'ascending' | 'descending'} [order] + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [notag] Tags to exclude (comma-separated). + * @param {'public' | 'private' | 'hidden'} [releaseStatus] Filter by ReleaseStatus. + * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. + * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. + * @param {string} [platform] The platform the asset supports. * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof FilesApi + * @memberof AvatarsApi */ - public getFileDataUploadStatus(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', options?: any) { - return FilesApiFp(this.configuration).getFileDataUploadStatus(fileId, versionId, fileType, options).then((request) => request(this.axios, this.basePath)); + public searchAvatars(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: any) { + return AvatarsApiFp(this.configuration).searchAvatars(featured, sort, user, userId, n, order, offset, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options).then((request) => request(this.axios, this.basePath)); } /** - * Returns a list of files - * @summary List Files - * @param {string} [tag] Tag, for example \"icon\" or \"gallery\", not included by default. - * @param {string} [userId] UserID, will always generate a 500 permission error. - * @param {number} [n] The number of objects to return. - * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * Switches into that avatar. + * @summary Select Avatar + * @param {string} avatarId * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof FilesApi + * @memberof AvatarsApi */ - public getFiles(tag?: string, userId?: string, n?: number, offset?: number, options?: any) { - return FilesApiFp(this.configuration).getFiles(tag, userId, n, offset, options).then((request) => request(this.axios, this.basePath)); + public selectAvatar(avatarId: string, options?: any) { + return AvatarsApiFp(this.configuration).selectAvatar(avatarId, options).then((request) => request(this.axios, this.basePath)); } /** - * Starts an upload of a specific FilePart. This endpoint will return an AWS URL which you can PUT data to. You need to call this and receive a new AWS API URL for each `partNumber`. Please see AWS\'s REST documentation on \"PUT Object to S3\" on how to upload. Once all parts has been uploaded, proceed to `/finish` endpoint. **Note:** `nextPartNumber` seems like it is always ignored. Despite it returning 0, first partNumber is always 1. - * @summary Start FileData Upload - * @param {string} fileId - * @param {number} versionId - * @param {'file' | 'signature' | 'delta'} fileType - * @param {number} partNumber + * Update information about a specific avatar. + * @summary Update Avatar + * @param {string} avatarId + * @param {InlineObject11} [inlineObject11] * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof FilesApi + * @memberof AvatarsApi */ - public startFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', partNumber: number, options?: any) { - return FilesApiFp(this.configuration).startFileDataUpload(fileId, versionId, fileType, partNumber, options).then((request) => request(this.axios, this.basePath)); + public updateAvatar(avatarId: string, inlineObject11?: InlineObject11, options?: any) { + return AvatarsApiFp(this.configuration).updateAvatar(avatarId, inlineObject11, options).then((request) => request(this.axios, this.basePath)); } } /** - * FriendsApi - axios parameter creator + * FavoritesApi - axios parameter creator * @export */ -export const FriendsApiAxiosParamCreator = function (configuration?: Configuration) { +export const FavoritesApiAxiosParamCreator = function (configuration?: Configuration) { return { /** - * Deletes an outgoing pending friend request to another user. To delete an incoming friend request, use the `deleteNotification` endpoint instead. - * @summary Delete Friend Request + * Add a new favorite. Friend groups are named `group_0` through `group_3`. Avatar and World groups are named `avatars1` to `avatar4` and `worlds1` to `worlds4`. You cannot add people whom you are not friends with to your friends list. Destroying a friendship removes the person as favorite on both sides. + * @summary Add Favorite + * @param {InlineObject8} [inlineObject8] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + addFavorite: async (inlineObject8?: InlineObject8, options: any = {}): Promise => { + const localVarPath = `/favorites`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(inlineObject8, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Clear ALL contents of a specific favorite group. + * @summary Clear Favorite Group + * @param {'world' | 'friend' | 'avatar'} favoriteGroupType The type of group to fetch, must be a valid FavoriteType. + * @param {string} favoriteGroupName * @param {string} userId * @param {*} [options] Override http request option. * @throws {RequiredError} */ - deleteFriendRequest: async (userId: string, options: any = {}): Promise => { + clearFavoriteGroup: async (favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, options: any = {}): Promise => { + // verify required parameter 'favoriteGroupType' is not null or undefined + assertParamExists('clearFavoriteGroup', 'favoriteGroupType', favoriteGroupType) + // verify required parameter 'favoriteGroupName' is not null or undefined + assertParamExists('clearFavoriteGroup', 'favoriteGroupName', favoriteGroupName) // verify required parameter 'userId' is not null or undefined - assertParamExists('deleteFriendRequest', 'userId', userId) - const localVarPath = `/user/{userId}/friendRequest` + assertParamExists('clearFavoriteGroup', 'userId', userId) + const localVarPath = `/favorite/group/{favoriteGroupType}/{favoriteGroupName}/{userId}` + .replace(`{${"favoriteGroupType"}}`, encodeURIComponent(String(favoriteGroupType))) + .replace(`{${"favoriteGroupName"}}`, encodeURIComponent(String(favoriteGroupName))) .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -4001,17 +4466,17 @@ export const FriendsApiAxiosParamCreator = function (configuration?: Configurati }; }, /** - * Send a friend request to another user. - * @summary Send Friend Request - * @param {string} userId + * Return information about a specific Favorite. + * @summary Show Favorite + * @param {string} favoriteId * @param {*} [options] Override http request option. * @throws {RequiredError} */ - friend: async (userId: string, options: any = {}): Promise => { - // verify required parameter 'userId' is not null or undefined - assertParamExists('friend', 'userId', userId) - const localVarPath = `/user/{userId}/friendRequest` - .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); + getFavorite: async (favoriteId: string, options: any = {}): Promise => { + // verify required parameter 'favoriteId' is not null or undefined + assertParamExists('getFavorite', 'favoriteId', favoriteId) + const localVarPath = `/favorites/{favoriteId}` + .replace(`{${"favoriteId"}}`, encodeURIComponent(String(favoriteId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -4019,7 +4484,7 @@ export const FriendsApiAxiosParamCreator = function (configuration?: Configurati baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; @@ -4039,17 +4504,1927 @@ export const FriendsApiAxiosParamCreator = function (configuration?: Configurati }; }, /** - * Retrieve if the user is currently a friend with a given user, if they have an outgoing friend request, and if they have an incoming friend request. The proper way to receive and accept friend request is by checking if the user has an incoming `Notification` of type `friendRequest`, and then accepting that notification. - * @summary Check Friend Status + * Fetch information about a specific favorite group. + * @summary Show Favorite Group + * @param {'world' | 'friend' | 'avatar'} favoriteGroupType The type of group to fetch, must be a valid FavoriteType. + * @param {string} favoriteGroupName * @param {string} userId * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFriendStatus: async (userId: string, options: any = {}): Promise => { - // verify required parameter 'userId' is not null or undefined - assertParamExists('getFriendStatus', 'userId', userId) - const localVarPath = `/user/{userId}/friendStatus` - .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); + getFavoriteGroup: async (favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, options: any = {}): Promise => { + // verify required parameter 'favoriteGroupType' is not null or undefined + assertParamExists('getFavoriteGroup', 'favoriteGroupType', favoriteGroupType) + // verify required parameter 'favoriteGroupName' is not null or undefined + assertParamExists('getFavoriteGroup', 'favoriteGroupName', favoriteGroupName) + // verify required parameter 'userId' is not null or undefined + assertParamExists('getFavoriteGroup', 'userId', userId) + const localVarPath = `/favorite/group/{favoriteGroupType}/{favoriteGroupName}/{userId}` + .replace(`{${"favoriteGroupType"}}`, encodeURIComponent(String(favoriteGroupType))) + .replace(`{${"favoriteGroupName"}}`, encodeURIComponent(String(favoriteGroupName))) + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Return a list of favorite groups owned by a user. Returns the same information as `getFavoriteGroups`. + * @summary List Favorite Groups + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [ownerId] The owner of whoms favorite groups to return. Must be a UserID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFavoriteGroups: async (n?: number, offset?: number, ownerId?: string, options: any = {}): Promise => { + const localVarPath = `/favorite/groups`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + if (n !== undefined) { + localVarQueryParameter['n'] = n; + } + + if (offset !== undefined) { + localVarQueryParameter['offset'] = offset; + } + + if (ownerId !== undefined) { + localVarQueryParameter['ownerId'] = ownerId; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Returns a list of favorites. + * @summary List Favorites + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [type] The type of favorites to return, FavoriteType. + * @param {string} [tag] Tags to include (comma-separated). + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFavorites: async (n?: number, offset?: number, type?: string, tag?: string, options: any = {}): Promise => { + const localVarPath = `/favorites`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + if (n !== undefined) { + localVarQueryParameter['n'] = n; + } + + if (offset !== undefined) { + localVarQueryParameter['offset'] = offset; + } + + if (type !== undefined) { + localVarQueryParameter['type'] = type; + } + + if (tag !== undefined) { + localVarQueryParameter['tag'] = tag; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Remove a favorite from your favorites list. + * @summary Remove Favorite + * @param {string} favoriteId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + removeFavorite: async (favoriteId: string, options: any = {}): Promise => { + // verify required parameter 'favoriteId' is not null or undefined + assertParamExists('removeFavorite', 'favoriteId', favoriteId) + const localVarPath = `/favorites/{favoriteId}` + .replace(`{${"favoriteId"}}`, encodeURIComponent(String(favoriteId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Update information about a specific favorite group. + * @summary Update Favorite Group + * @param {'world' | 'friend' | 'avatar'} favoriteGroupType The type of group to fetch, must be a valid FavoriteType. + * @param {string} favoriteGroupName + * @param {string} userId + * @param {InlineObject9} [inlineObject9] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + updateFavoriteGroup: async (favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, inlineObject9?: InlineObject9, options: any = {}): Promise => { + // verify required parameter 'favoriteGroupType' is not null or undefined + assertParamExists('updateFavoriteGroup', 'favoriteGroupType', favoriteGroupType) + // verify required parameter 'favoriteGroupName' is not null or undefined + assertParamExists('updateFavoriteGroup', 'favoriteGroupName', favoriteGroupName) + // verify required parameter 'userId' is not null or undefined + assertParamExists('updateFavoriteGroup', 'userId', userId) + const localVarPath = `/favorite/group/{favoriteGroupType}/{favoriteGroupName}/{userId}` + .replace(`{${"favoriteGroupType"}}`, encodeURIComponent(String(favoriteGroupType))) + .replace(`{${"favoriteGroupName"}}`, encodeURIComponent(String(favoriteGroupName))) + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(inlineObject9, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + } +}; + +/** + * FavoritesApi - functional programming interface + * @export + */ +export const FavoritesApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = FavoritesApiAxiosParamCreator(configuration) + return { + /** + * Add a new favorite. Friend groups are named `group_0` through `group_3`. Avatar and World groups are named `avatars1` to `avatar4` and `worlds1` to `worlds4`. You cannot add people whom you are not friends with to your friends list. Destroying a friendship removes the person as favorite on both sides. + * @summary Add Favorite + * @param {InlineObject8} [inlineObject8] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async addFavorite(inlineObject8?: InlineObject8, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.addFavorite(inlineObject8, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Clear ALL contents of a specific favorite group. + * @summary Clear Favorite Group + * @param {'world' | 'friend' | 'avatar'} favoriteGroupType The type of group to fetch, must be a valid FavoriteType. + * @param {string} favoriteGroupName + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async clearFavoriteGroup(favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.clearFavoriteGroup(favoriteGroupType, favoriteGroupName, userId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Return information about a specific Favorite. + * @summary Show Favorite + * @param {string} favoriteId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getFavorite(favoriteId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getFavorite(favoriteId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Fetch information about a specific favorite group. + * @summary Show Favorite Group + * @param {'world' | 'friend' | 'avatar'} favoriteGroupType The type of group to fetch, must be a valid FavoriteType. + * @param {string} favoriteGroupName + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getFavoriteGroup(favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getFavoriteGroup(favoriteGroupType, favoriteGroupName, userId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Return a list of favorite groups owned by a user. Returns the same information as `getFavoriteGroups`. + * @summary List Favorite Groups + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [ownerId] The owner of whoms favorite groups to return. Must be a UserID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getFavoriteGroups(n?: number, offset?: number, ownerId?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getFavoriteGroups(n, offset, ownerId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Returns a list of favorites. + * @summary List Favorites + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [type] The type of favorites to return, FavoriteType. + * @param {string} [tag] Tags to include (comma-separated). + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getFavorites(n?: number, offset?: number, type?: string, tag?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getFavorites(n, offset, type, tag, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Remove a favorite from your favorites list. + * @summary Remove Favorite + * @param {string} favoriteId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async removeFavorite(favoriteId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.removeFavorite(favoriteId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Update information about a specific favorite group. + * @summary Update Favorite Group + * @param {'world' | 'friend' | 'avatar'} favoriteGroupType The type of group to fetch, must be a valid FavoriteType. + * @param {string} favoriteGroupName + * @param {string} userId + * @param {InlineObject9} [inlineObject9] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async updateFavoriteGroup(favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, inlineObject9?: InlineObject9, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.updateFavoriteGroup(favoriteGroupType, favoriteGroupName, userId, inlineObject9, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + } +}; + +/** + * FavoritesApi - factory interface + * @export + */ +export const FavoritesApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = FavoritesApiFp(configuration) + return { + /** + * Add a new favorite. Friend groups are named `group_0` through `group_3`. Avatar and World groups are named `avatars1` to `avatar4` and `worlds1` to `worlds4`. You cannot add people whom you are not friends with to your friends list. Destroying a friendship removes the person as favorite on both sides. + * @summary Add Favorite + * @param {InlineObject8} [inlineObject8] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + addFavorite(inlineObject8?: InlineObject8, options?: any): AxiosPromise { + return localVarFp.addFavorite(inlineObject8, options).then((request) => request(axios, basePath)); + }, + /** + * Clear ALL contents of a specific favorite group. + * @summary Clear Favorite Group + * @param {'world' | 'friend' | 'avatar'} favoriteGroupType The type of group to fetch, must be a valid FavoriteType. + * @param {string} favoriteGroupName + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + clearFavoriteGroup(favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, options?: any): AxiosPromise { + return localVarFp.clearFavoriteGroup(favoriteGroupType, favoriteGroupName, userId, options).then((request) => request(axios, basePath)); + }, + /** + * Return information about a specific Favorite. + * @summary Show Favorite + * @param {string} favoriteId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFavorite(favoriteId: string, options?: any): AxiosPromise { + return localVarFp.getFavorite(favoriteId, options).then((request) => request(axios, basePath)); + }, + /** + * Fetch information about a specific favorite group. + * @summary Show Favorite Group + * @param {'world' | 'friend' | 'avatar'} favoriteGroupType The type of group to fetch, must be a valid FavoriteType. + * @param {string} favoriteGroupName + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFavoriteGroup(favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, options?: any): AxiosPromise { + return localVarFp.getFavoriteGroup(favoriteGroupType, favoriteGroupName, userId, options).then((request) => request(axios, basePath)); + }, + /** + * Return a list of favorite groups owned by a user. Returns the same information as `getFavoriteGroups`. + * @summary List Favorite Groups + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [ownerId] The owner of whoms favorite groups to return. Must be a UserID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFavoriteGroups(n?: number, offset?: number, ownerId?: string, options?: any): AxiosPromise> { + return localVarFp.getFavoriteGroups(n, offset, ownerId, options).then((request) => request(axios, basePath)); + }, + /** + * Returns a list of favorites. + * @summary List Favorites + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [type] The type of favorites to return, FavoriteType. + * @param {string} [tag] Tags to include (comma-separated). + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFavorites(n?: number, offset?: number, type?: string, tag?: string, options?: any): AxiosPromise> { + return localVarFp.getFavorites(n, offset, type, tag, options).then((request) => request(axios, basePath)); + }, + /** + * Remove a favorite from your favorites list. + * @summary Remove Favorite + * @param {string} favoriteId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + removeFavorite(favoriteId: string, options?: any): AxiosPromise { + return localVarFp.removeFavorite(favoriteId, options).then((request) => request(axios, basePath)); + }, + /** + * Update information about a specific favorite group. + * @summary Update Favorite Group + * @param {'world' | 'friend' | 'avatar'} favoriteGroupType The type of group to fetch, must be a valid FavoriteType. + * @param {string} favoriteGroupName + * @param {string} userId + * @param {InlineObject9} [inlineObject9] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + updateFavoriteGroup(favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, inlineObject9?: InlineObject9, options?: any): AxiosPromise { + return localVarFp.updateFavoriteGroup(favoriteGroupType, favoriteGroupName, userId, inlineObject9, options).then((request) => request(axios, basePath)); + }, + }; +}; + +/** + * FavoritesApi - object-oriented interface + * @export + * @class FavoritesApi + * @extends {BaseAPI} + */ +export class FavoritesApi extends BaseAPI { + /** + * Add a new favorite. Friend groups are named `group_0` through `group_3`. Avatar and World groups are named `avatars1` to `avatar4` and `worlds1` to `worlds4`. You cannot add people whom you are not friends with to your friends list. Destroying a friendship removes the person as favorite on both sides. + * @summary Add Favorite + * @param {InlineObject8} [inlineObject8] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FavoritesApi + */ + public addFavorite(inlineObject8?: InlineObject8, options?: any) { + return FavoritesApiFp(this.configuration).addFavorite(inlineObject8, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Clear ALL contents of a specific favorite group. + * @summary Clear Favorite Group + * @param {'world' | 'friend' | 'avatar'} favoriteGroupType The type of group to fetch, must be a valid FavoriteType. + * @param {string} favoriteGroupName + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FavoritesApi + */ + public clearFavoriteGroup(favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, options?: any) { + return FavoritesApiFp(this.configuration).clearFavoriteGroup(favoriteGroupType, favoriteGroupName, userId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Return information about a specific Favorite. + * @summary Show Favorite + * @param {string} favoriteId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FavoritesApi + */ + public getFavorite(favoriteId: string, options?: any) { + return FavoritesApiFp(this.configuration).getFavorite(favoriteId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Fetch information about a specific favorite group. + * @summary Show Favorite Group + * @param {'world' | 'friend' | 'avatar'} favoriteGroupType The type of group to fetch, must be a valid FavoriteType. + * @param {string} favoriteGroupName + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FavoritesApi + */ + public getFavoriteGroup(favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, options?: any) { + return FavoritesApiFp(this.configuration).getFavoriteGroup(favoriteGroupType, favoriteGroupName, userId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Return a list of favorite groups owned by a user. Returns the same information as `getFavoriteGroups`. + * @summary List Favorite Groups + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [ownerId] The owner of whoms favorite groups to return. Must be a UserID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FavoritesApi + */ + public getFavoriteGroups(n?: number, offset?: number, ownerId?: string, options?: any) { + return FavoritesApiFp(this.configuration).getFavoriteGroups(n, offset, ownerId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Returns a list of favorites. + * @summary List Favorites + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [type] The type of favorites to return, FavoriteType. + * @param {string} [tag] Tags to include (comma-separated). + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FavoritesApi + */ + public getFavorites(n?: number, offset?: number, type?: string, tag?: string, options?: any) { + return FavoritesApiFp(this.configuration).getFavorites(n, offset, type, tag, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Remove a favorite from your favorites list. + * @summary Remove Favorite + * @param {string} favoriteId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FavoritesApi + */ + public removeFavorite(favoriteId: string, options?: any) { + return FavoritesApiFp(this.configuration).removeFavorite(favoriteId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Update information about a specific favorite group. + * @summary Update Favorite Group + * @param {'world' | 'friend' | 'avatar'} favoriteGroupType The type of group to fetch, must be a valid FavoriteType. + * @param {string} favoriteGroupName + * @param {string} userId + * @param {InlineObject9} [inlineObject9] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FavoritesApi + */ + public updateFavoriteGroup(favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, inlineObject9?: InlineObject9, options?: any) { + return FavoritesApiFp(this.configuration).updateFavoriteGroup(favoriteGroupType, favoriteGroupName, userId, inlineObject9, options).then((request) => request(this.axios, this.basePath)); + } +} + + +/** + * FilesApi - axios parameter creator + * @export + */ +export const FilesApiAxiosParamCreator = function (configuration?: Configuration) { + return { + /** + * Creates a new File object + * @summary Create File + * @param {InlineObject3} [inlineObject3] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + createFile: async (inlineObject3?: InlineObject3, options: any = {}): Promise => { + const localVarPath = `/file`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(inlineObject3, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Creates a new FileVersion. Once a Version has been created, proceed to the `/file/{fileId}/{versionId}/file/start` endpoint to start a file upload. + * @summary Create File Version + * @param {string} fileId + * @param {InlineObject4} [inlineObject4] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + createFileVersion: async (fileId: string, inlineObject4?: InlineObject4, options: any = {}): Promise => { + // verify required parameter 'fileId' is not null or undefined + assertParamExists('createFileVersion', 'fileId', fileId) + const localVarPath = `/file/{fileId}` + .replace(`{${"fileId"}}`, encodeURIComponent(String(fileId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(inlineObject4, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Deletes a File object. + * @summary Delete File + * @param {string} fileId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + deleteFile: async (fileId: string, options: any = {}): Promise => { + // verify required parameter 'fileId' is not null or undefined + assertParamExists('deleteFile', 'fileId', fileId) + const localVarPath = `/file/{fileId}` + .replace(`{${"fileId"}}`, encodeURIComponent(String(fileId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Delete a specific version of a file. You can only delete the latest version. + * @summary Delete File Version + * @param {string} fileId + * @param {number} versionId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + deleteFileVersion: async (fileId: string, versionId: number, options: any = {}): Promise => { + // verify required parameter 'fileId' is not null or undefined + assertParamExists('deleteFileVersion', 'fileId', fileId) + // verify required parameter 'versionId' is not null or undefined + assertParamExists('deleteFileVersion', 'versionId', versionId) + const localVarPath = `/file/{fileId}/{versionId}` + .replace(`{${"fileId"}}`, encodeURIComponent(String(fileId))) + .replace(`{${"versionId"}}`, encodeURIComponent(String(versionId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Downloads the file with the provided version number. **Version Note:** Version 0 is always when the file was created. The real data is usually always located in version 1 and up. **Extension Note:** Files are not guaranteed to have a file extensions. UnityPackage files tends to have it, images through this endpoint do not. You are responsible for appending file extension from the `extension` field when neccesary. + * @summary Download File Version + * @param {string} fileId + * @param {number} versionId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + downloadFileVersion: async (fileId: string, versionId: number, options: any = {}): Promise => { + // verify required parameter 'fileId' is not null or undefined + assertParamExists('downloadFileVersion', 'fileId', fileId) + // verify required parameter 'versionId' is not null or undefined + assertParamExists('downloadFileVersion', 'versionId', versionId) + const localVarPath = `/file/{fileId}/{versionId}` + .replace(`{${"fileId"}}`, encodeURIComponent(String(fileId))) + .replace(`{${"versionId"}}`, encodeURIComponent(String(versionId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Finish an upload of a FileData. This will mark it as \"complete\". After uploading the `file` for Avatars and Worlds you then have to upload a `signature` file. + * @summary Finish FileData Upload + * @param {string} fileId + * @param {number} versionId + * @param {'file' | 'signature' | 'delta'} fileType + * @param {InlineObject5} [inlineObject5] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + finishFileDataUpload: async (fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', inlineObject5?: InlineObject5, options: any = {}): Promise => { + // verify required parameter 'fileId' is not null or undefined + assertParamExists('finishFileDataUpload', 'fileId', fileId) + // verify required parameter 'versionId' is not null or undefined + assertParamExists('finishFileDataUpload', 'versionId', versionId) + // verify required parameter 'fileType' is not null or undefined + assertParamExists('finishFileDataUpload', 'fileType', fileType) + const localVarPath = `/file/{fileId}/{versionId}/{fileType}/finish` + .replace(`{${"fileId"}}`, encodeURIComponent(String(fileId))) + .replace(`{${"versionId"}}`, encodeURIComponent(String(versionId))) + .replace(`{${"fileType"}}`, encodeURIComponent(String(fileType))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(inlineObject5, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Shows general information about the \"File\" object. Each File can have several \"Version\"\'s, and each Version can have multiple real files or \"Data\" blobs. + * @summary Show File + * @param {string} fileId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFile: async (fileId: string, options: any = {}): Promise => { + // verify required parameter 'fileId' is not null or undefined + assertParamExists('getFile', 'fileId', fileId) + const localVarPath = `/file/{fileId}` + .replace(`{${"fileId"}}`, encodeURIComponent(String(fileId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Retrieves the upload status for file upload. Can currently only be accessed when `status` is `waiting`. Trying to access it on a file version already uploaded currently times out. + * @summary Check FileData Upload Status + * @param {string} fileId + * @param {number} versionId + * @param {'file' | 'signature' | 'delta'} fileType + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFileDataUploadStatus: async (fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', options: any = {}): Promise => { + // verify required parameter 'fileId' is not null or undefined + assertParamExists('getFileDataUploadStatus', 'fileId', fileId) + // verify required parameter 'versionId' is not null or undefined + assertParamExists('getFileDataUploadStatus', 'versionId', versionId) + // verify required parameter 'fileType' is not null or undefined + assertParamExists('getFileDataUploadStatus', 'fileType', fileType) + const localVarPath = `/file/{fileId}/{versionId}/{fileType}/status` + .replace(`{${"fileId"}}`, encodeURIComponent(String(fileId))) + .replace(`{${"versionId"}}`, encodeURIComponent(String(versionId))) + .replace(`{${"fileType"}}`, encodeURIComponent(String(fileType))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Returns a list of files + * @summary List Files + * @param {string} [tag] Tag, for example \"icon\" or \"gallery\", not included by default. + * @param {string} [userId] UserID, will always generate a 500 permission error. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFiles: async (tag?: string, userId?: string, n?: number, offset?: number, options: any = {}): Promise => { + const localVarPath = `/files`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + if (tag !== undefined) { + localVarQueryParameter['tag'] = tag; + } + + if (userId !== undefined) { + localVarQueryParameter['userId'] = userId; + } + + if (n !== undefined) { + localVarQueryParameter['n'] = n; + } + + if (offset !== undefined) { + localVarQueryParameter['offset'] = offset; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Starts an upload of a specific FilePart. This endpoint will return an AWS URL which you can PUT data to. You need to call this and receive a new AWS API URL for each `partNumber`. Please see AWS\'s REST documentation on \"PUT Object to S3\" on how to upload. Once all parts has been uploaded, proceed to `/finish` endpoint. **Note:** `nextPartNumber` seems like it is always ignored. Despite it returning 0, first partNumber is always 1. + * @summary Start FileData Upload + * @param {string} fileId + * @param {number} versionId + * @param {'file' | 'signature' | 'delta'} fileType + * @param {number} partNumber + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + startFileDataUpload: async (fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', partNumber: number, options: any = {}): Promise => { + // verify required parameter 'fileId' is not null or undefined + assertParamExists('startFileDataUpload', 'fileId', fileId) + // verify required parameter 'versionId' is not null or undefined + assertParamExists('startFileDataUpload', 'versionId', versionId) + // verify required parameter 'fileType' is not null or undefined + assertParamExists('startFileDataUpload', 'fileType', fileType) + // verify required parameter 'partNumber' is not null or undefined + assertParamExists('startFileDataUpload', 'partNumber', partNumber) + const localVarPath = `/file/{fileId}/{versionId}/{fileType}/start` + .replace(`{${"fileId"}}`, encodeURIComponent(String(fileId))) + .replace(`{${"versionId"}}`, encodeURIComponent(String(versionId))) + .replace(`{${"fileType"}}`, encodeURIComponent(String(fileType))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + if (partNumber !== undefined) { + localVarQueryParameter['partNumber'] = partNumber; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + } +}; + +/** + * FilesApi - functional programming interface + * @export + */ +export const FilesApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = FilesApiAxiosParamCreator(configuration) + return { + /** + * Creates a new File object + * @summary Create File + * @param {InlineObject3} [inlineObject3] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async createFile(inlineObject3?: InlineObject3, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.createFile(inlineObject3, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Creates a new FileVersion. Once a Version has been created, proceed to the `/file/{fileId}/{versionId}/file/start` endpoint to start a file upload. + * @summary Create File Version + * @param {string} fileId + * @param {InlineObject4} [inlineObject4] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async createFileVersion(fileId: string, inlineObject4?: InlineObject4, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.createFileVersion(fileId, inlineObject4, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Deletes a File object. + * @summary Delete File + * @param {string} fileId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async deleteFile(fileId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.deleteFile(fileId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Delete a specific version of a file. You can only delete the latest version. + * @summary Delete File Version + * @param {string} fileId + * @param {number} versionId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async deleteFileVersion(fileId: string, versionId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.deleteFileVersion(fileId, versionId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Downloads the file with the provided version number. **Version Note:** Version 0 is always when the file was created. The real data is usually always located in version 1 and up. **Extension Note:** Files are not guaranteed to have a file extensions. UnityPackage files tends to have it, images through this endpoint do not. You are responsible for appending file extension from the `extension` field when neccesary. + * @summary Download File Version + * @param {string} fileId + * @param {number} versionId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async downloadFileVersion(fileId: string, versionId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.downloadFileVersion(fileId, versionId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Finish an upload of a FileData. This will mark it as \"complete\". After uploading the `file` for Avatars and Worlds you then have to upload a `signature` file. + * @summary Finish FileData Upload + * @param {string} fileId + * @param {number} versionId + * @param {'file' | 'signature' | 'delta'} fileType + * @param {InlineObject5} [inlineObject5] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async finishFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', inlineObject5?: InlineObject5, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.finishFileDataUpload(fileId, versionId, fileType, inlineObject5, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Shows general information about the \"File\" object. Each File can have several \"Version\"\'s, and each Version can have multiple real files or \"Data\" blobs. + * @summary Show File + * @param {string} fileId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getFile(fileId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getFile(fileId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Retrieves the upload status for file upload. Can currently only be accessed when `status` is `waiting`. Trying to access it on a file version already uploaded currently times out. + * @summary Check FileData Upload Status + * @param {string} fileId + * @param {number} versionId + * @param {'file' | 'signature' | 'delta'} fileType + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getFileDataUploadStatus(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getFileDataUploadStatus(fileId, versionId, fileType, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Returns a list of files + * @summary List Files + * @param {string} [tag] Tag, for example \"icon\" or \"gallery\", not included by default. + * @param {string} [userId] UserID, will always generate a 500 permission error. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getFiles(tag?: string, userId?: string, n?: number, offset?: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getFiles(tag, userId, n, offset, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Starts an upload of a specific FilePart. This endpoint will return an AWS URL which you can PUT data to. You need to call this and receive a new AWS API URL for each `partNumber`. Please see AWS\'s REST documentation on \"PUT Object to S3\" on how to upload. Once all parts has been uploaded, proceed to `/finish` endpoint. **Note:** `nextPartNumber` seems like it is always ignored. Despite it returning 0, first partNumber is always 1. + * @summary Start FileData Upload + * @param {string} fileId + * @param {number} versionId + * @param {'file' | 'signature' | 'delta'} fileType + * @param {number} partNumber + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async startFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', partNumber: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.startFileDataUpload(fileId, versionId, fileType, partNumber, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + } +}; + +/** + * FilesApi - factory interface + * @export + */ +export const FilesApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = FilesApiFp(configuration) + return { + /** + * Creates a new File object + * @summary Create File + * @param {InlineObject3} [inlineObject3] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + createFile(inlineObject3?: InlineObject3, options?: any): AxiosPromise { + return localVarFp.createFile(inlineObject3, options).then((request) => request(axios, basePath)); + }, + /** + * Creates a new FileVersion. Once a Version has been created, proceed to the `/file/{fileId}/{versionId}/file/start` endpoint to start a file upload. + * @summary Create File Version + * @param {string} fileId + * @param {InlineObject4} [inlineObject4] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + createFileVersion(fileId: string, inlineObject4?: InlineObject4, options?: any): AxiosPromise { + return localVarFp.createFileVersion(fileId, inlineObject4, options).then((request) => request(axios, basePath)); + }, + /** + * Deletes a File object. + * @summary Delete File + * @param {string} fileId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + deleteFile(fileId: string, options?: any): AxiosPromise { + return localVarFp.deleteFile(fileId, options).then((request) => request(axios, basePath)); + }, + /** + * Delete a specific version of a file. You can only delete the latest version. + * @summary Delete File Version + * @param {string} fileId + * @param {number} versionId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + deleteFileVersion(fileId: string, versionId: number, options?: any): AxiosPromise { + return localVarFp.deleteFileVersion(fileId, versionId, options).then((request) => request(axios, basePath)); + }, + /** + * Downloads the file with the provided version number. **Version Note:** Version 0 is always when the file was created. The real data is usually always located in version 1 and up. **Extension Note:** Files are not guaranteed to have a file extensions. UnityPackage files tends to have it, images through this endpoint do not. You are responsible for appending file extension from the `extension` field when neccesary. + * @summary Download File Version + * @param {string} fileId + * @param {number} versionId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + downloadFileVersion(fileId: string, versionId: number, options?: any): AxiosPromise { + return localVarFp.downloadFileVersion(fileId, versionId, options).then((request) => request(axios, basePath)); + }, + /** + * Finish an upload of a FileData. This will mark it as \"complete\". After uploading the `file` for Avatars and Worlds you then have to upload a `signature` file. + * @summary Finish FileData Upload + * @param {string} fileId + * @param {number} versionId + * @param {'file' | 'signature' | 'delta'} fileType + * @param {InlineObject5} [inlineObject5] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + finishFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', inlineObject5?: InlineObject5, options?: any): AxiosPromise { + return localVarFp.finishFileDataUpload(fileId, versionId, fileType, inlineObject5, options).then((request) => request(axios, basePath)); + }, + /** + * Shows general information about the \"File\" object. Each File can have several \"Version\"\'s, and each Version can have multiple real files or \"Data\" blobs. + * @summary Show File + * @param {string} fileId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFile(fileId: string, options?: any): AxiosPromise { + return localVarFp.getFile(fileId, options).then((request) => request(axios, basePath)); + }, + /** + * Retrieves the upload status for file upload. Can currently only be accessed when `status` is `waiting`. Trying to access it on a file version already uploaded currently times out. + * @summary Check FileData Upload Status + * @param {string} fileId + * @param {number} versionId + * @param {'file' | 'signature' | 'delta'} fileType + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFileDataUploadStatus(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', options?: any): AxiosPromise { + return localVarFp.getFileDataUploadStatus(fileId, versionId, fileType, options).then((request) => request(axios, basePath)); + }, + /** + * Returns a list of files + * @summary List Files + * @param {string} [tag] Tag, for example \"icon\" or \"gallery\", not included by default. + * @param {string} [userId] UserID, will always generate a 500 permission error. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFiles(tag?: string, userId?: string, n?: number, offset?: number, options?: any): AxiosPromise> { + return localVarFp.getFiles(tag, userId, n, offset, options).then((request) => request(axios, basePath)); + }, + /** + * Starts an upload of a specific FilePart. This endpoint will return an AWS URL which you can PUT data to. You need to call this and receive a new AWS API URL for each `partNumber`. Please see AWS\'s REST documentation on \"PUT Object to S3\" on how to upload. Once all parts has been uploaded, proceed to `/finish` endpoint. **Note:** `nextPartNumber` seems like it is always ignored. Despite it returning 0, first partNumber is always 1. + * @summary Start FileData Upload + * @param {string} fileId + * @param {number} versionId + * @param {'file' | 'signature' | 'delta'} fileType + * @param {number} partNumber + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + startFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', partNumber: number, options?: any): AxiosPromise { + return localVarFp.startFileDataUpload(fileId, versionId, fileType, partNumber, options).then((request) => request(axios, basePath)); + }, + }; +}; + +/** + * FilesApi - object-oriented interface + * @export + * @class FilesApi + * @extends {BaseAPI} + */ +export class FilesApi extends BaseAPI { + /** + * Creates a new File object + * @summary Create File + * @param {InlineObject3} [inlineObject3] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FilesApi + */ + public createFile(inlineObject3?: InlineObject3, options?: any) { + return FilesApiFp(this.configuration).createFile(inlineObject3, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Creates a new FileVersion. Once a Version has been created, proceed to the `/file/{fileId}/{versionId}/file/start` endpoint to start a file upload. + * @summary Create File Version + * @param {string} fileId + * @param {InlineObject4} [inlineObject4] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FilesApi + */ + public createFileVersion(fileId: string, inlineObject4?: InlineObject4, options?: any) { + return FilesApiFp(this.configuration).createFileVersion(fileId, inlineObject4, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Deletes a File object. + * @summary Delete File + * @param {string} fileId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FilesApi + */ + public deleteFile(fileId: string, options?: any) { + return FilesApiFp(this.configuration).deleteFile(fileId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Delete a specific version of a file. You can only delete the latest version. + * @summary Delete File Version + * @param {string} fileId + * @param {number} versionId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FilesApi + */ + public deleteFileVersion(fileId: string, versionId: number, options?: any) { + return FilesApiFp(this.configuration).deleteFileVersion(fileId, versionId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Downloads the file with the provided version number. **Version Note:** Version 0 is always when the file was created. The real data is usually always located in version 1 and up. **Extension Note:** Files are not guaranteed to have a file extensions. UnityPackage files tends to have it, images through this endpoint do not. You are responsible for appending file extension from the `extension` field when neccesary. + * @summary Download File Version + * @param {string} fileId + * @param {number} versionId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FilesApi + */ + public downloadFileVersion(fileId: string, versionId: number, options?: any) { + return FilesApiFp(this.configuration).downloadFileVersion(fileId, versionId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Finish an upload of a FileData. This will mark it as \"complete\". After uploading the `file` for Avatars and Worlds you then have to upload a `signature` file. + * @summary Finish FileData Upload + * @param {string} fileId + * @param {number} versionId + * @param {'file' | 'signature' | 'delta'} fileType + * @param {InlineObject5} [inlineObject5] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FilesApi + */ + public finishFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', inlineObject5?: InlineObject5, options?: any) { + return FilesApiFp(this.configuration).finishFileDataUpload(fileId, versionId, fileType, inlineObject5, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Shows general information about the \"File\" object. Each File can have several \"Version\"\'s, and each Version can have multiple real files or \"Data\" blobs. + * @summary Show File + * @param {string} fileId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FilesApi + */ + public getFile(fileId: string, options?: any) { + return FilesApiFp(this.configuration).getFile(fileId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Retrieves the upload status for file upload. Can currently only be accessed when `status` is `waiting`. Trying to access it on a file version already uploaded currently times out. + * @summary Check FileData Upload Status + * @param {string} fileId + * @param {number} versionId + * @param {'file' | 'signature' | 'delta'} fileType + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FilesApi + */ + public getFileDataUploadStatus(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', options?: any) { + return FilesApiFp(this.configuration).getFileDataUploadStatus(fileId, versionId, fileType, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Returns a list of files + * @summary List Files + * @param {string} [tag] Tag, for example \"icon\" or \"gallery\", not included by default. + * @param {string} [userId] UserID, will always generate a 500 permission error. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FilesApi + */ + public getFiles(tag?: string, userId?: string, n?: number, offset?: number, options?: any) { + return FilesApiFp(this.configuration).getFiles(tag, userId, n, offset, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Starts an upload of a specific FilePart. This endpoint will return an AWS URL which you can PUT data to. You need to call this and receive a new AWS API URL for each `partNumber`. Please see AWS\'s REST documentation on \"PUT Object to S3\" on how to upload. Once all parts has been uploaded, proceed to `/finish` endpoint. **Note:** `nextPartNumber` seems like it is always ignored. Despite it returning 0, first partNumber is always 1. + * @summary Start FileData Upload + * @param {string} fileId + * @param {number} versionId + * @param {'file' | 'signature' | 'delta'} fileType + * @param {number} partNumber + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FilesApi + */ + public startFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', partNumber: number, options?: any) { + return FilesApiFp(this.configuration).startFileDataUpload(fileId, versionId, fileType, partNumber, options).then((request) => request(this.axios, this.basePath)); + } +} + + +/** + * FriendsApi - axios parameter creator + * @export + */ +export const FriendsApiAxiosParamCreator = function (configuration?: Configuration) { + return { + /** + * Deletes an outgoing pending friend request to another user. To delete an incoming friend request, use the `deleteNotification` endpoint instead. + * @summary Delete Friend Request + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + deleteFriendRequest: async (userId: string, options: any = {}): Promise => { + // verify required parameter 'userId' is not null or undefined + assertParamExists('deleteFriendRequest', 'userId', userId) + const localVarPath = `/user/{userId}/friendRequest` + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Send a friend request to another user. + * @summary Send Friend Request + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + friend: async (userId: string, options: any = {}): Promise => { + // verify required parameter 'userId' is not null or undefined + assertParamExists('friend', 'userId', userId) + const localVarPath = `/user/{userId}/friendRequest` + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Retrieve if the user is currently a friend with a given user, if they have an outgoing friend request, and if they have an incoming friend request. The proper way to receive and accept friend request is by checking if the user has an incoming `Notification` of type `friendRequest`, and then accepting that notification. + * @summary Check Friend Status + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFriendStatus: async (userId: string, options: any = {}): Promise => { + // verify required parameter 'userId' is not null or undefined + assertParamExists('getFriendStatus', 'userId', userId) + const localVarPath = `/user/{userId}/friendStatus` + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * List information about friends. + * @summary List Friends + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {number} [n] The number of objects to return. + * @param {boolean} [offline] Returns *only* offline users if true, returns only online and active users if false + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFriends: async (offset?: number, n?: number, offline?: boolean, options: any = {}): Promise => { + const localVarPath = `/auth/user/friends`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + if (offset !== undefined) { + localVarQueryParameter['offset'] = offset; + } + + if (n !== undefined) { + localVarQueryParameter['n'] = n; + } + + if (offline !== undefined) { + localVarQueryParameter['offline'] = offline; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Unfriend a user by ID. + * @summary Unfriend + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + unfriend: async (userId: string, options: any = {}): Promise => { + // verify required parameter 'userId' is not null or undefined + assertParamExists('unfriend', 'userId', userId) + const localVarPath = `/auth/user/friends/{userId}` + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + } +}; + +/** + * FriendsApi - functional programming interface + * @export + */ +export const FriendsApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = FriendsApiAxiosParamCreator(configuration) + return { + /** + * Deletes an outgoing pending friend request to another user. To delete an incoming friend request, use the `deleteNotification` endpoint instead. + * @summary Delete Friend Request + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async deleteFriendRequest(userId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.deleteFriendRequest(userId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Send a friend request to another user. + * @summary Send Friend Request + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async friend(userId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.friend(userId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Retrieve if the user is currently a friend with a given user, if they have an outgoing friend request, and if they have an incoming friend request. The proper way to receive and accept friend request is by checking if the user has an incoming `Notification` of type `friendRequest`, and then accepting that notification. + * @summary Check Friend Status + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getFriendStatus(userId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getFriendStatus(userId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * List information about friends. + * @summary List Friends + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {number} [n] The number of objects to return. + * @param {boolean} [offline] Returns *only* offline users if true, returns only online and active users if false + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getFriends(offset?: number, n?: number, offline?: boolean, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getFriends(offset, n, offline, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Unfriend a user by ID. + * @summary Unfriend + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async unfriend(userId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.unfriend(userId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + } +}; + +/** + * FriendsApi - factory interface + * @export + */ +export const FriendsApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = FriendsApiFp(configuration) + return { + /** + * Deletes an outgoing pending friend request to another user. To delete an incoming friend request, use the `deleteNotification` endpoint instead. + * @summary Delete Friend Request + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + deleteFriendRequest(userId: string, options?: any): AxiosPromise { + return localVarFp.deleteFriendRequest(userId, options).then((request) => request(axios, basePath)); + }, + /** + * Send a friend request to another user. + * @summary Send Friend Request + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + friend(userId: string, options?: any): AxiosPromise { + return localVarFp.friend(userId, options).then((request) => request(axios, basePath)); + }, + /** + * Retrieve if the user is currently a friend with a given user, if they have an outgoing friend request, and if they have an incoming friend request. The proper way to receive and accept friend request is by checking if the user has an incoming `Notification` of type `friendRequest`, and then accepting that notification. + * @summary Check Friend Status + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFriendStatus(userId: string, options?: any): AxiosPromise { + return localVarFp.getFriendStatus(userId, options).then((request) => request(axios, basePath)); + }, + /** + * List information about friends. + * @summary List Friends + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {number} [n] The number of objects to return. + * @param {boolean} [offline] Returns *only* offline users if true, returns only online and active users if false + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFriends(offset?: number, n?: number, offline?: boolean, options?: any): AxiosPromise> { + return localVarFp.getFriends(offset, n, offline, options).then((request) => request(axios, basePath)); + }, + /** + * Unfriend a user by ID. + * @summary Unfriend + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + unfriend(userId: string, options?: any): AxiosPromise { + return localVarFp.unfriend(userId, options).then((request) => request(axios, basePath)); + }, + }; +}; + +/** + * FriendsApi - object-oriented interface + * @export + * @class FriendsApi + * @extends {BaseAPI} + */ +export class FriendsApi extends BaseAPI { + /** + * Deletes an outgoing pending friend request to another user. To delete an incoming friend request, use the `deleteNotification` endpoint instead. + * @summary Delete Friend Request + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FriendsApi + */ + public deleteFriendRequest(userId: string, options?: any) { + return FriendsApiFp(this.configuration).deleteFriendRequest(userId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Send a friend request to another user. + * @summary Send Friend Request + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FriendsApi + */ + public friend(userId: string, options?: any) { + return FriendsApiFp(this.configuration).friend(userId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Retrieve if the user is currently a friend with a given user, if they have an outgoing friend request, and if they have an incoming friend request. The proper way to receive and accept friend request is by checking if the user has an incoming `Notification` of type `friendRequest`, and then accepting that notification. + * @summary Check Friend Status + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FriendsApi + */ + public getFriendStatus(userId: string, options?: any) { + return FriendsApiFp(this.configuration).getFriendStatus(userId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * List information about friends. + * @summary List Friends + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {number} [n] The number of objects to return. + * @param {boolean} [offline] Returns *only* offline users if true, returns only online and active users if false + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FriendsApi + */ + public getFriends(offset?: number, n?: number, offline?: boolean, options?: any) { + return FriendsApiFp(this.configuration).getFriends(offset, n, offline, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Unfriend a user by ID. + * @summary Unfriend + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FriendsApi + */ + public unfriend(userId: string, options?: any) { + return FriendsApiFp(this.configuration).unfriend(userId, options).then((request) => request(this.axios, this.basePath)); + } +} + + +/** + * NotificationsApi - axios parameter creator + * @export + */ +export const NotificationsApiAxiosParamCreator = function (configuration?: Configuration) { + return { + /** + * Accept a friend request by notification `frq_` ID. Friend requests can be found using the NotificationsAPI `getNotifications` by filtering of type `friendRequest`. + * @summary Accept Friend Request + * @param {string} notificationId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + acceptFriendRequest: async (notificationId: string, options: any = {}): Promise => { + // verify required parameter 'notificationId' is not null or undefined + assertParamExists('acceptFriendRequest', 'notificationId', notificationId) + const localVarPath = `/auth/user/notifications/{notificationId}/accept` + .replace(`{${"notificationId"}}`, encodeURIComponent(String(notificationId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Clear **all** notifications. + * @summary Clear All Notifications + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + clearNotifications: async (options: any = {}): Promise => { + const localVarPath = `/auth/user/notifications/clear`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Delete a notification. + * @summary Delete Notification + * @param {string} notificationId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + deleteNotification: async (notificationId: string, options: any = {}): Promise => { + // verify required parameter 'notificationId' is not null or undefined + assertParamExists('deleteNotification', 'notificationId', notificationId) + const localVarPath = `/auth/user/notifications/{notificationId}/hide` + .replace(`{${"notificationId"}}`, encodeURIComponent(String(notificationId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -4057,7 +6432,7 @@ export const FriendsApiAxiosParamCreator = function (configuration?: Configurati baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; @@ -4077,16 +6452,19 @@ export const FriendsApiAxiosParamCreator = function (configuration?: Configurati }; }, /** - * List information about friends. - * @summary List Friends - * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * Retrieve all of the current user\'s notifications. + * @summary List Notifications + * @param {string} [type] Only send notifications of this type (can use `all` for all). + * @param {boolean} [sent] Return notifications sent by the user. Must be false or omitted. + * @param {boolean} [hidden] Whether to return hidden or non-hidden notifications. True only allowed on type `friendRequest`. + * @param {string} [after] Only return notifications sent after this Date. Ignored if type is `friendRequest`. * @param {number} [n] The number of objects to return. - * @param {boolean} [offline] Returns *only* offline users if true, returns only online and active users if false + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFriends: async (offset?: number, n?: number, offline?: boolean, options: any = {}): Promise => { - const localVarPath = `/auth/user/friends`; + getNotifications: async (type?: string, sent?: boolean, hidden?: boolean, after?: string, n?: number, offset?: number, options: any = {}): Promise => { + const localVarPath = `/auth/user/notifications`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -4102,16 +6480,28 @@ export const FriendsApiAxiosParamCreator = function (configuration?: Configurati // authentication authCookie required - if (offset !== undefined) { - localVarQueryParameter['offset'] = offset; + if (type !== undefined) { + localVarQueryParameter['type'] = type; + } + + if (sent !== undefined) { + localVarQueryParameter['sent'] = sent; + } + + if (hidden !== undefined) { + localVarQueryParameter['hidden'] = hidden; + } + + if (after !== undefined) { + localVarQueryParameter['after'] = after; } if (n !== undefined) { localVarQueryParameter['n'] = n; } - if (offline !== undefined) { - localVarQueryParameter['offline'] = offline; + if (offset !== undefined) { + localVarQueryParameter['offset'] = offset; } @@ -4126,17 +6516,17 @@ export const FriendsApiAxiosParamCreator = function (configuration?: Configurati }; }, /** - * Unfriend a user by ID. - * @summary Unfriend - * @param {string} userId + * Mark a notification as seen. + * @summary Mark As Read + * @param {string} notificationId * @param {*} [options] Override http request option. * @throws {RequiredError} */ - unfriend: async (userId: string, options: any = {}): Promise => { - // verify required parameter 'userId' is not null or undefined - assertParamExists('unfriend', 'userId', userId) - const localVarPath = `/auth/user/friends/{userId}` - .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); + markNotificationAsRead: async (notificationId: string, options: any = {}): Promise => { + // verify required parameter 'notificationId' is not null or undefined + assertParamExists('markNotificationAsRead', 'notificationId', notificationId) + const localVarPath = `/auth/user/notifications/{notificationId}/see` + .replace(`{${"notificationId"}}`, encodeURIComponent(String(notificationId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -4144,7 +6534,7 @@ export const FriendsApiAxiosParamCreator = function (configuration?: Configurati baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; @@ -4167,223 +6557,225 @@ export const FriendsApiAxiosParamCreator = function (configuration?: Configurati }; /** - * FriendsApi - functional programming interface + * NotificationsApi - functional programming interface * @export */ -export const FriendsApiFp = function(configuration?: Configuration) { - const localVarAxiosParamCreator = FriendsApiAxiosParamCreator(configuration) +export const NotificationsApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = NotificationsApiAxiosParamCreator(configuration) return { /** - * Deletes an outgoing pending friend request to another user. To delete an incoming friend request, use the `deleteNotification` endpoint instead. - * @summary Delete Friend Request - * @param {string} userId + * Accept a friend request by notification `frq_` ID. Friend requests can be found using the NotificationsAPI `getNotifications` by filtering of type `friendRequest`. + * @summary Accept Friend Request + * @param {string} notificationId * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async deleteFriendRequest(userId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.deleteFriendRequest(userId, options); + async acceptFriendRequest(notificationId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.acceptFriendRequest(notificationId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Send a friend request to another user. - * @summary Send Friend Request - * @param {string} userId + * Clear **all** notifications. + * @summary Clear All Notifications * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async friend(userId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.friend(userId, options); + async clearNotifications(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.clearNotifications(options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Retrieve if the user is currently a friend with a given user, if they have an outgoing friend request, and if they have an incoming friend request. The proper way to receive and accept friend request is by checking if the user has an incoming `Notification` of type `friendRequest`, and then accepting that notification. - * @summary Check Friend Status - * @param {string} userId + * Delete a notification. + * @summary Delete Notification + * @param {string} notificationId * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getFriendStatus(userId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getFriendStatus(userId, options); + async deleteNotification(notificationId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.deleteNotification(notificationId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * List information about friends. - * @summary List Friends - * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * Retrieve all of the current user\'s notifications. + * @summary List Notifications + * @param {string} [type] Only send notifications of this type (can use `all` for all). + * @param {boolean} [sent] Return notifications sent by the user. Must be false or omitted. + * @param {boolean} [hidden] Whether to return hidden or non-hidden notifications. True only allowed on type `friendRequest`. + * @param {string} [after] Only return notifications sent after this Date. Ignored if type is `friendRequest`. * @param {number} [n] The number of objects to return. - * @param {boolean} [offline] Returns *only* offline users if true, returns only online and active users if false + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getFriends(offset?: number, n?: number, offline?: boolean, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getFriends(offset, n, offline, options); + async getNotifications(type?: string, sent?: boolean, hidden?: boolean, after?: string, n?: number, offset?: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getNotifications(type, sent, hidden, after, n, offset, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Unfriend a user by ID. - * @summary Unfriend - * @param {string} userId + * Mark a notification as seen. + * @summary Mark As Read + * @param {string} notificationId * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async unfriend(userId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.unfriend(userId, options); + async markNotificationAsRead(notificationId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.markNotificationAsRead(notificationId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, } }; /** - * FriendsApi - factory interface + * NotificationsApi - factory interface * @export */ -export const FriendsApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { - const localVarFp = FriendsApiFp(configuration) +export const NotificationsApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = NotificationsApiFp(configuration) return { /** - * Deletes an outgoing pending friend request to another user. To delete an incoming friend request, use the `deleteNotification` endpoint instead. - * @summary Delete Friend Request - * @param {string} userId + * Accept a friend request by notification `frq_` ID. Friend requests can be found using the NotificationsAPI `getNotifications` by filtering of type `friendRequest`. + * @summary Accept Friend Request + * @param {string} notificationId * @param {*} [options] Override http request option. * @throws {RequiredError} */ - deleteFriendRequest(userId: string, options?: any): AxiosPromise { - return localVarFp.deleteFriendRequest(userId, options).then((request) => request(axios, basePath)); + acceptFriendRequest(notificationId: string, options?: any): AxiosPromise { + return localVarFp.acceptFriendRequest(notificationId, options).then((request) => request(axios, basePath)); }, /** - * Send a friend request to another user. - * @summary Send Friend Request - * @param {string} userId + * Clear **all** notifications. + * @summary Clear All Notifications * @param {*} [options] Override http request option. * @throws {RequiredError} */ - friend(userId: string, options?: any): AxiosPromise { - return localVarFp.friend(userId, options).then((request) => request(axios, basePath)); + clearNotifications(options?: any): AxiosPromise { + return localVarFp.clearNotifications(options).then((request) => request(axios, basePath)); }, /** - * Retrieve if the user is currently a friend with a given user, if they have an outgoing friend request, and if they have an incoming friend request. The proper way to receive and accept friend request is by checking if the user has an incoming `Notification` of type `friendRequest`, and then accepting that notification. - * @summary Check Friend Status - * @param {string} userId + * Delete a notification. + * @summary Delete Notification + * @param {string} notificationId * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFriendStatus(userId: string, options?: any): AxiosPromise { - return localVarFp.getFriendStatus(userId, options).then((request) => request(axios, basePath)); + deleteNotification(notificationId: string, options?: any): AxiosPromise { + return localVarFp.deleteNotification(notificationId, options).then((request) => request(axios, basePath)); }, /** - * List information about friends. - * @summary List Friends - * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * Retrieve all of the current user\'s notifications. + * @summary List Notifications + * @param {string} [type] Only send notifications of this type (can use `all` for all). + * @param {boolean} [sent] Return notifications sent by the user. Must be false or omitted. + * @param {boolean} [hidden] Whether to return hidden or non-hidden notifications. True only allowed on type `friendRequest`. + * @param {string} [after] Only return notifications sent after this Date. Ignored if type is `friendRequest`. * @param {number} [n] The number of objects to return. - * @param {boolean} [offline] Returns *only* offline users if true, returns only online and active users if false + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFriends(offset?: number, n?: number, offline?: boolean, options?: any): AxiosPromise> { - return localVarFp.getFriends(offset, n, offline, options).then((request) => request(axios, basePath)); + getNotifications(type?: string, sent?: boolean, hidden?: boolean, after?: string, n?: number, offset?: number, options?: any): AxiosPromise> { + return localVarFp.getNotifications(type, sent, hidden, after, n, offset, options).then((request) => request(axios, basePath)); }, /** - * Unfriend a user by ID. - * @summary Unfriend - * @param {string} userId + * Mark a notification as seen. + * @summary Mark As Read + * @param {string} notificationId * @param {*} [options] Override http request option. * @throws {RequiredError} */ - unfriend(userId: string, options?: any): AxiosPromise { - return localVarFp.unfriend(userId, options).then((request) => request(axios, basePath)); + markNotificationAsRead(notificationId: string, options?: any): AxiosPromise { + return localVarFp.markNotificationAsRead(notificationId, options).then((request) => request(axios, basePath)); }, }; }; /** - * FriendsApi - object-oriented interface + * NotificationsApi - object-oriented interface * @export - * @class FriendsApi + * @class NotificationsApi * @extends {BaseAPI} */ -export class FriendsApi extends BaseAPI { +export class NotificationsApi extends BaseAPI { /** - * Deletes an outgoing pending friend request to another user. To delete an incoming friend request, use the `deleteNotification` endpoint instead. - * @summary Delete Friend Request - * @param {string} userId + * Accept a friend request by notification `frq_` ID. Friend requests can be found using the NotificationsAPI `getNotifications` by filtering of type `friendRequest`. + * @summary Accept Friend Request + * @param {string} notificationId * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof FriendsApi + * @memberof NotificationsApi */ - public deleteFriendRequest(userId: string, options?: any) { - return FriendsApiFp(this.configuration).deleteFriendRequest(userId, options).then((request) => request(this.axios, this.basePath)); + public acceptFriendRequest(notificationId: string, options?: any) { + return NotificationsApiFp(this.configuration).acceptFriendRequest(notificationId, options).then((request) => request(this.axios, this.basePath)); } /** - * Send a friend request to another user. - * @summary Send Friend Request - * @param {string} userId + * Clear **all** notifications. + * @summary Clear All Notifications * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof FriendsApi + * @memberof NotificationsApi */ - public friend(userId: string, options?: any) { - return FriendsApiFp(this.configuration).friend(userId, options).then((request) => request(this.axios, this.basePath)); + public clearNotifications(options?: any) { + return NotificationsApiFp(this.configuration).clearNotifications(options).then((request) => request(this.axios, this.basePath)); } /** - * Retrieve if the user is currently a friend with a given user, if they have an outgoing friend request, and if they have an incoming friend request. The proper way to receive and accept friend request is by checking if the user has an incoming `Notification` of type `friendRequest`, and then accepting that notification. - * @summary Check Friend Status - * @param {string} userId + * Delete a notification. + * @summary Delete Notification + * @param {string} notificationId * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof FriendsApi + * @memberof NotificationsApi */ - public getFriendStatus(userId: string, options?: any) { - return FriendsApiFp(this.configuration).getFriendStatus(userId, options).then((request) => request(this.axios, this.basePath)); + public deleteNotification(notificationId: string, options?: any) { + return NotificationsApiFp(this.configuration).deleteNotification(notificationId, options).then((request) => request(this.axios, this.basePath)); } /** - * List information about friends. - * @summary List Friends - * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * Retrieve all of the current user\'s notifications. + * @summary List Notifications + * @param {string} [type] Only send notifications of this type (can use `all` for all). + * @param {boolean} [sent] Return notifications sent by the user. Must be false or omitted. + * @param {boolean} [hidden] Whether to return hidden or non-hidden notifications. True only allowed on type `friendRequest`. + * @param {string} [after] Only return notifications sent after this Date. Ignored if type is `friendRequest`. * @param {number} [n] The number of objects to return. - * @param {boolean} [offline] Returns *only* offline users if true, returns only online and active users if false + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof FriendsApi + * @memberof NotificationsApi */ - public getFriends(offset?: number, n?: number, offline?: boolean, options?: any) { - return FriendsApiFp(this.configuration).getFriends(offset, n, offline, options).then((request) => request(this.axios, this.basePath)); + public getNotifications(type?: string, sent?: boolean, hidden?: boolean, after?: string, n?: number, offset?: number, options?: any) { + return NotificationsApiFp(this.configuration).getNotifications(type, sent, hidden, after, n, offset, options).then((request) => request(this.axios, this.basePath)); } /** - * Unfriend a user by ID. - * @summary Unfriend - * @param {string} userId + * Mark a notification as seen. + * @summary Mark As Read + * @param {string} notificationId * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof FriendsApi - */ - public unfriend(userId: string, options?: any) { - return FriendsApiFp(this.configuration).unfriend(userId, options).then((request) => request(this.axios, this.basePath)); + * @memberof NotificationsApi + */ + public markNotificationAsRead(notificationId: string, options?: any) { + return NotificationsApiFp(this.configuration).markNotificationAsRead(notificationId, options).then((request) => request(this.axios, this.basePath)); } } /** - * NotificationsApi - axios parameter creator + * PlayermoderationApi - axios parameter creator * @export */ -export const NotificationsApiAxiosParamCreator = function (configuration?: Configuration) { +export const PlayermoderationApiAxiosParamCreator = function (configuration?: Configuration) { return { /** - * Accept a friend request by notification `frq_` ID. Friend requests can be found using the NotificationsAPI `getNotifications` by filtering of type `friendRequest`. - * @summary Accept Friend Request - * @param {string} notificationId + * ⚠️ **This will delete every single player moderation you\'ve ever made.** + * @summary Clear All Player Moderations * @param {*} [options] Override http request option. * @throws {RequiredError} */ - acceptFriendRequest: async (notificationId: string, options: any = {}): Promise => { - // verify required parameter 'notificationId' is not null or undefined - assertParamExists('acceptFriendRequest', 'notificationId', notificationId) - const localVarPath = `/auth/user/notifications/{notificationId}/accept` - .replace(`{${"notificationId"}}`, encodeURIComponent(String(notificationId))); + clearAllPlayerModerations: async (options: any = {}): Promise => { + const localVarPath = `/auth/user/playermoderations`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -4391,7 +6783,7 @@ export const NotificationsApiAxiosParamCreator = function (configuration?: Confi baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; @@ -4411,13 +6803,17 @@ export const NotificationsApiAxiosParamCreator = function (configuration?: Confi }; }, /** - * Clear **all** notifications. - * @summary Clear All Notifications + * Deletes a specific player moderation based on it\'s `pmod_` ID. The website uses `unmoderateUser` instead. You can delete the same player moderation multiple times successfully. + * @summary Delete Player Moderation + * @param {string} playerModerationId * @param {*} [options] Override http request option. * @throws {RequiredError} */ - clearNotifications: async (options: any = {}): Promise => { - const localVarPath = `/auth/user/notifications/clear`; + deletePlayerModeration: async (playerModerationId: string, options: any = {}): Promise => { + // verify required parameter 'playerModerationId' is not null or undefined + assertParamExists('deletePlayerModeration', 'playerModerationId', playerModerationId) + const localVarPath = `/auth/user/playermoderations/{playerModerationId}` + .replace(`{${"playerModerationId"}}`, encodeURIComponent(String(playerModerationId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -4425,7 +6821,7 @@ export const NotificationsApiAxiosParamCreator = function (configuration?: Confi baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; @@ -4445,17 +6841,17 @@ export const NotificationsApiAxiosParamCreator = function (configuration?: Confi }; }, /** - * Delete a notification. - * @summary Delete Notification - * @param {string} notificationId + * Returns a single Player Moderation. This returns the exact same amount of information as the more generalised `getPlayerModerations`. + * @summary Get Player Moderation + * @param {string} playerModerationId * @param {*} [options] Override http request option. * @throws {RequiredError} */ - deleteNotification: async (notificationId: string, options: any = {}): Promise => { - // verify required parameter 'notificationId' is not null or undefined - assertParamExists('deleteNotification', 'notificationId', notificationId) - const localVarPath = `/auth/user/notifications/{notificationId}/hide` - .replace(`{${"notificationId"}}`, encodeURIComponent(String(notificationId))); + getPlayerModeration: async (playerModerationId: string, options: any = {}): Promise => { + // verify required parameter 'playerModerationId' is not null or undefined + assertParamExists('getPlayerModeration', 'playerModerationId', playerModerationId) + const localVarPath = `/auth/user/playermoderations/{playerModerationId}` + .replace(`{${"playerModerationId"}}`, encodeURIComponent(String(playerModerationId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -4463,7 +6859,7 @@ export const NotificationsApiAxiosParamCreator = function (configuration?: Confi baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; @@ -4483,19 +6879,15 @@ export const NotificationsApiAxiosParamCreator = function (configuration?: Confi }; }, /** - * Retrieve all of the current user\'s notifications. - * @summary List Notifications - * @param {string} [type] Only send notifications of this type (can use `all` for all). - * @param {boolean} [sent] Return notifications sent by the user. Must be false or omitted. - * @param {boolean} [hidden] Whether to return hidden or non-hidden notifications. True only allowed on type `friendRequest`. - * @param {string} [after] Only return notifications sent after this Date. Ignored if type is `friendRequest`. - * @param {number} [n] The number of objects to return. - * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * Returns a list of all player moderations made by **you**. This endpoint does not have pagination, and will return *all* results. Use query parameters to limit your query if needed. + * @summary Search Player Moderations + * @param {string} [type] Must be one of PlayerModerationType, except unblock. Unblocking simply removes a block. + * @param {string} [targetUserId] Must be valid UserID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getNotifications: async (type?: string, sent?: boolean, hidden?: boolean, after?: string, n?: number, offset?: number, options: any = {}): Promise => { - const localVarPath = `/auth/user/notifications`; + getPlayerModerations: async (type?: string, targetUserId?: string, options: any = {}): Promise => { + const localVarPath = `/auth/user/playermoderations`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -4515,31 +6907,53 @@ export const NotificationsApiAxiosParamCreator = function (configuration?: Confi localVarQueryParameter['type'] = type; } - if (sent !== undefined) { - localVarQueryParameter['sent'] = sent; + if (targetUserId !== undefined) { + localVarQueryParameter['targetUserId'] = targetUserId; } - if (hidden !== undefined) { - localVarQueryParameter['hidden'] = hidden; - } - if (after !== undefined) { - localVarQueryParameter['after'] = after; - } + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - if (n !== undefined) { - localVarQueryParameter['n'] = n; + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Moderate a user, e.g. unmute them or show their avatar. + * @summary Moderate User + * @param {InlineObject12} [inlineObject12] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + moderateUser: async (inlineObject12?: InlineObject12, options: any = {}): Promise => { + const localVarPath = `/auth/user/playermoderations`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; } - if (offset !== undefined) { - localVarQueryParameter['offset'] = offset; - } + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + localVarHeaderParameter['Content-Type'] = 'application/json'; + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(inlineObject12, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), @@ -4547,17 +6961,14 @@ export const NotificationsApiAxiosParamCreator = function (configuration?: Confi }; }, /** - * Mark a notification as seen. - * @summary Mark As Read - * @param {string} notificationId + * Removes a player moderation previously added through `moderateUser`. E.g if you previuosly have shown their avatar, but now want to reset it to default. + * @summary Unmoderate User + * @param {InlineObject13} [inlineObject13] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - markNotificationAsRead: async (notificationId: string, options: any = {}): Promise => { - // verify required parameter 'notificationId' is not null or undefined - assertParamExists('markNotificationAsRead', 'notificationId', notificationId) - const localVarPath = `/auth/user/notifications/{notificationId}/see` - .replace(`{${"notificationId"}}`, encodeURIComponent(String(notificationId))); + unmoderateUser: async (inlineObject13?: InlineObject13, options: any = {}): Promise => { + const localVarPath = `/auth/user/unplayermoderate`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -4575,9 +6986,12 @@ export const NotificationsApiAxiosParamCreator = function (configuration?: Confi + localVarHeaderParameter['Content-Type'] = 'application/json'; + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(inlineObject13, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), @@ -4588,207 +7002,228 @@ export const NotificationsApiAxiosParamCreator = function (configuration?: Confi }; /** - * NotificationsApi - functional programming interface + * PlayermoderationApi - functional programming interface * @export */ -export const NotificationsApiFp = function(configuration?: Configuration) { - const localVarAxiosParamCreator = NotificationsApiAxiosParamCreator(configuration) +export const PlayermoderationApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = PlayermoderationApiAxiosParamCreator(configuration) return { /** - * Accept a friend request by notification `frq_` ID. Friend requests can be found using the NotificationsAPI `getNotifications` by filtering of type `friendRequest`. - * @summary Accept Friend Request - * @param {string} notificationId + * ⚠️ **This will delete every single player moderation you\'ve ever made.** + * @summary Clear All Player Moderations * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async acceptFriendRequest(notificationId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.acceptFriendRequest(notificationId, options); + async clearAllPlayerModerations(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.clearAllPlayerModerations(options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Clear **all** notifications. - * @summary Clear All Notifications + * Deletes a specific player moderation based on it\'s `pmod_` ID. The website uses `unmoderateUser` instead. You can delete the same player moderation multiple times successfully. + * @summary Delete Player Moderation + * @param {string} playerModerationId * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async clearNotifications(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.clearNotifications(options); + async deletePlayerModeration(playerModerationId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.deletePlayerModeration(playerModerationId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Delete a notification. - * @summary Delete Notification - * @param {string} notificationId + * Returns a single Player Moderation. This returns the exact same amount of information as the more generalised `getPlayerModerations`. + * @summary Get Player Moderation + * @param {string} playerModerationId * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async deleteNotification(notificationId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.deleteNotification(notificationId, options); + async getPlayerModeration(playerModerationId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getPlayerModeration(playerModerationId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Retrieve all of the current user\'s notifications. - * @summary List Notifications - * @param {string} [type] Only send notifications of this type (can use `all` for all). - * @param {boolean} [sent] Return notifications sent by the user. Must be false or omitted. - * @param {boolean} [hidden] Whether to return hidden or non-hidden notifications. True only allowed on type `friendRequest`. - * @param {string} [after] Only return notifications sent after this Date. Ignored if type is `friendRequest`. - * @param {number} [n] The number of objects to return. - * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * Returns a list of all player moderations made by **you**. This endpoint does not have pagination, and will return *all* results. Use query parameters to limit your query if needed. + * @summary Search Player Moderations + * @param {string} [type] Must be one of PlayerModerationType, except unblock. Unblocking simply removes a block. + * @param {string} [targetUserId] Must be valid UserID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getNotifications(type?: string, sent?: boolean, hidden?: boolean, after?: string, n?: number, offset?: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getNotifications(type, sent, hidden, after, n, offset, options); + async getPlayerModerations(type?: string, targetUserId?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getPlayerModerations(type, targetUserId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Mark a notification as seen. - * @summary Mark As Read - * @param {string} notificationId + * Moderate a user, e.g. unmute them or show their avatar. + * @summary Moderate User + * @param {InlineObject12} [inlineObject12] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async markNotificationAsRead(notificationId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.markNotificationAsRead(notificationId, options); + async moderateUser(inlineObject12?: InlineObject12, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.moderateUser(inlineObject12, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Removes a player moderation previously added through `moderateUser`. E.g if you previuosly have shown their avatar, but now want to reset it to default. + * @summary Unmoderate User + * @param {InlineObject13} [inlineObject13] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async unmoderateUser(inlineObject13?: InlineObject13, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.unmoderateUser(inlineObject13, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, } }; /** - * NotificationsApi - factory interface + * PlayermoderationApi - factory interface * @export */ -export const NotificationsApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { - const localVarFp = NotificationsApiFp(configuration) +export const PlayermoderationApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = PlayermoderationApiFp(configuration) return { /** - * Accept a friend request by notification `frq_` ID. Friend requests can be found using the NotificationsAPI `getNotifications` by filtering of type `friendRequest`. - * @summary Accept Friend Request - * @param {string} notificationId + * ⚠️ **This will delete every single player moderation you\'ve ever made.** + * @summary Clear All Player Moderations * @param {*} [options] Override http request option. * @throws {RequiredError} */ - acceptFriendRequest(notificationId: string, options?: any): AxiosPromise { - return localVarFp.acceptFriendRequest(notificationId, options).then((request) => request(axios, basePath)); + clearAllPlayerModerations(options?: any): AxiosPromise { + return localVarFp.clearAllPlayerModerations(options).then((request) => request(axios, basePath)); }, /** - * Clear **all** notifications. - * @summary Clear All Notifications + * Deletes a specific player moderation based on it\'s `pmod_` ID. The website uses `unmoderateUser` instead. You can delete the same player moderation multiple times successfully. + * @summary Delete Player Moderation + * @param {string} playerModerationId * @param {*} [options] Override http request option. * @throws {RequiredError} */ - clearNotifications(options?: any): AxiosPromise { - return localVarFp.clearNotifications(options).then((request) => request(axios, basePath)); + deletePlayerModeration(playerModerationId: string, options?: any): AxiosPromise { + return localVarFp.deletePlayerModeration(playerModerationId, options).then((request) => request(axios, basePath)); }, /** - * Delete a notification. - * @summary Delete Notification - * @param {string} notificationId + * Returns a single Player Moderation. This returns the exact same amount of information as the more generalised `getPlayerModerations`. + * @summary Get Player Moderation + * @param {string} playerModerationId * @param {*} [options] Override http request option. * @throws {RequiredError} */ - deleteNotification(notificationId: string, options?: any): AxiosPromise { - return localVarFp.deleteNotification(notificationId, options).then((request) => request(axios, basePath)); + getPlayerModeration(playerModerationId: string, options?: any): AxiosPromise { + return localVarFp.getPlayerModeration(playerModerationId, options).then((request) => request(axios, basePath)); }, /** - * Retrieve all of the current user\'s notifications. - * @summary List Notifications - * @param {string} [type] Only send notifications of this type (can use `all` for all). - * @param {boolean} [sent] Return notifications sent by the user. Must be false or omitted. - * @param {boolean} [hidden] Whether to return hidden or non-hidden notifications. True only allowed on type `friendRequest`. - * @param {string} [after] Only return notifications sent after this Date. Ignored if type is `friendRequest`. - * @param {number} [n] The number of objects to return. - * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * Returns a list of all player moderations made by **you**. This endpoint does not have pagination, and will return *all* results. Use query parameters to limit your query if needed. + * @summary Search Player Moderations + * @param {string} [type] Must be one of PlayerModerationType, except unblock. Unblocking simply removes a block. + * @param {string} [targetUserId] Must be valid UserID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getNotifications(type?: string, sent?: boolean, hidden?: boolean, after?: string, n?: number, offset?: number, options?: any): AxiosPromise> { - return localVarFp.getNotifications(type, sent, hidden, after, n, offset, options).then((request) => request(axios, basePath)); + getPlayerModerations(type?: string, targetUserId?: string, options?: any): AxiosPromise> { + return localVarFp.getPlayerModerations(type, targetUserId, options).then((request) => request(axios, basePath)); }, /** - * Mark a notification as seen. - * @summary Mark As Read - * @param {string} notificationId + * Moderate a user, e.g. unmute them or show their avatar. + * @summary Moderate User + * @param {InlineObject12} [inlineObject12] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - markNotificationAsRead(notificationId: string, options?: any): AxiosPromise { - return localVarFp.markNotificationAsRead(notificationId, options).then((request) => request(axios, basePath)); + moderateUser(inlineObject12?: InlineObject12, options?: any): AxiosPromise { + return localVarFp.moderateUser(inlineObject12, options).then((request) => request(axios, basePath)); + }, + /** + * Removes a player moderation previously added through `moderateUser`. E.g if you previuosly have shown their avatar, but now want to reset it to default. + * @summary Unmoderate User + * @param {InlineObject13} [inlineObject13] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + unmoderateUser(inlineObject13?: InlineObject13, options?: any): AxiosPromise { + return localVarFp.unmoderateUser(inlineObject13, options).then((request) => request(axios, basePath)); }, }; }; /** - * NotificationsApi - object-oriented interface + * PlayermoderationApi - object-oriented interface * @export - * @class NotificationsApi + * @class PlayermoderationApi * @extends {BaseAPI} */ -export class NotificationsApi extends BaseAPI { +export class PlayermoderationApi extends BaseAPI { /** - * Accept a friend request by notification `frq_` ID. Friend requests can be found using the NotificationsAPI `getNotifications` by filtering of type `friendRequest`. - * @summary Accept Friend Request - * @param {string} notificationId + * ⚠️ **This will delete every single player moderation you\'ve ever made.** + * @summary Clear All Player Moderations * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof NotificationsApi + * @memberof PlayermoderationApi */ - public acceptFriendRequest(notificationId: string, options?: any) { - return NotificationsApiFp(this.configuration).acceptFriendRequest(notificationId, options).then((request) => request(this.axios, this.basePath)); + public clearAllPlayerModerations(options?: any) { + return PlayermoderationApiFp(this.configuration).clearAllPlayerModerations(options).then((request) => request(this.axios, this.basePath)); } /** - * Clear **all** notifications. - * @summary Clear All Notifications + * Deletes a specific player moderation based on it\'s `pmod_` ID. The website uses `unmoderateUser` instead. You can delete the same player moderation multiple times successfully. + * @summary Delete Player Moderation + * @param {string} playerModerationId * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof NotificationsApi + * @memberof PlayermoderationApi */ - public clearNotifications(options?: any) { - return NotificationsApiFp(this.configuration).clearNotifications(options).then((request) => request(this.axios, this.basePath)); + public deletePlayerModeration(playerModerationId: string, options?: any) { + return PlayermoderationApiFp(this.configuration).deletePlayerModeration(playerModerationId, options).then((request) => request(this.axios, this.basePath)); } /** - * Delete a notification. - * @summary Delete Notification - * @param {string} notificationId + * Returns a single Player Moderation. This returns the exact same amount of information as the more generalised `getPlayerModerations`. + * @summary Get Player Moderation + * @param {string} playerModerationId * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof NotificationsApi + * @memberof PlayermoderationApi */ - public deleteNotification(notificationId: string, options?: any) { - return NotificationsApiFp(this.configuration).deleteNotification(notificationId, options).then((request) => request(this.axios, this.basePath)); + public getPlayerModeration(playerModerationId: string, options?: any) { + return PlayermoderationApiFp(this.configuration).getPlayerModeration(playerModerationId, options).then((request) => request(this.axios, this.basePath)); } /** - * Retrieve all of the current user\'s notifications. - * @summary List Notifications - * @param {string} [type] Only send notifications of this type (can use `all` for all). - * @param {boolean} [sent] Return notifications sent by the user. Must be false or omitted. - * @param {boolean} [hidden] Whether to return hidden or non-hidden notifications. True only allowed on type `friendRequest`. - * @param {string} [after] Only return notifications sent after this Date. Ignored if type is `friendRequest`. - * @param {number} [n] The number of objects to return. - * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * Returns a list of all player moderations made by **you**. This endpoint does not have pagination, and will return *all* results. Use query parameters to limit your query if needed. + * @summary Search Player Moderations + * @param {string} [type] Must be one of PlayerModerationType, except unblock. Unblocking simply removes a block. + * @param {string} [targetUserId] Must be valid UserID. * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof NotificationsApi + * @memberof PlayermoderationApi */ - public getNotifications(type?: string, sent?: boolean, hidden?: boolean, after?: string, n?: number, offset?: number, options?: any) { - return NotificationsApiFp(this.configuration).getNotifications(type, sent, hidden, after, n, offset, options).then((request) => request(this.axios, this.basePath)); + public getPlayerModerations(type?: string, targetUserId?: string, options?: any) { + return PlayermoderationApiFp(this.configuration).getPlayerModerations(type, targetUserId, options).then((request) => request(this.axios, this.basePath)); } /** - * Mark a notification as seen. - * @summary Mark As Read - * @param {string} notificationId + * Moderate a user, e.g. unmute them or show their avatar. + * @summary Moderate User + * @param {InlineObject12} [inlineObject12] * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof NotificationsApi + * @memberof PlayermoderationApi */ - public markNotificationAsRead(notificationId: string, options?: any) { - return NotificationsApiFp(this.configuration).markNotificationAsRead(notificationId, options).then((request) => request(this.axios, this.basePath)); + public moderateUser(inlineObject12?: InlineObject12, options?: any) { + return PlayermoderationApiFp(this.configuration).moderateUser(inlineObject12, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Removes a player moderation previously added through `moderateUser`. E.g if you previuosly have shown their avatar, but now want to reset it to default. + * @summary Unmoderate User + * @param {InlineObject13} [inlineObject13] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof PlayermoderationApi + */ + public unmoderateUser(inlineObject13?: InlineObject13, options?: any) { + return PlayermoderationApiFp(this.configuration).unmoderateUser(inlineObject13, options).then((request) => request(this.axios, this.basePath)); } } @@ -5536,11 +7971,11 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio /** * Create a new world. This endpoint requires `assetUrl` to be a valid File object with `.vrcw` file extension, and `imageUrl` to be a valid File object with an image file extension. * @summary Create World - * @param {InlineObject5} [inlineObject5] + * @param {InlineObject6} [inlineObject6] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - createWorld: async (inlineObject5?: InlineObject5, options: any = {}): Promise => { + createWorld: async (inlineObject6?: InlineObject6, options: any = {}): Promise => { const localVarPath = `/worlds`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -5560,7 +7995,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - localVarRequestOptions.data = serializeDataIfNeeded(inlineObject5, localVarRequestOptions, configuration) + localVarRequestOptions.data = serializeDataIfNeeded(inlineObject6, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), @@ -5590,6 +8025,10 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; + // authentication apiKeyCookie required + + // authentication authCookie required + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); @@ -5954,6 +8393,10 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; + // authentication apiKeyCookie required + + // authentication authCookie required + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); @@ -5966,7 +8409,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio }; }, /** - * Returns a worlds custom metadata. This is currently believed to be unused. Metadata can be set with `updateWorld` and can be any arbitrary object. + * Return a worlds custom metadata. This is currently believed to be unused. Metadata can be set with `updateWorld` and can be any arbitrary object. * @summary Get World Metadata * @param {string} worldId * @param {*} [options] Override http request option. @@ -5989,6 +8432,10 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; + // authentication apiKeyCookie required + + // authentication authCookie required + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); @@ -6001,16 +8448,15 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio }; }, /** - * Returns a worlds publish status. This is currently believed to be unused. + * Returns a worlds publish status. * @summary Get World Publish Status * @param {string} worldId * @param {*} [options] Override http request option. - * @deprecated * @throws {RequiredError} */ - getWorldPublish: async (worldId: string, options: any = {}): Promise => { + getWorldPublishStatus: async (worldId: string, options: any = {}): Promise => { // verify required parameter 'worldId' is not null or undefined - assertParamExists('getWorldPublish', 'worldId', worldId) + assertParamExists('getWorldPublishStatus', 'worldId', worldId) const localVarPath = `/worlds/{worldId}/publish` .replace(`{${"worldId"}}`, encodeURIComponent(String(worldId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. @@ -6024,6 +8470,10 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; + // authentication apiKeyCookie required + + // authentication authCookie required + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); @@ -6036,7 +8486,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio }; }, /** - * Publishes a world. You can only publish one world per week. + * Publish a world. You can only publish one world per week. * @summary Publish World * @param {string} worldId * @param {*} [options] Override http request option. @@ -6058,6 +8508,10 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; + // authentication apiKeyCookie required + + // authentication authCookie required + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); @@ -6174,7 +8628,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio }; }, /** - * Unpublishes a world. + * Unpublish a world. * @summary Unpublish World * @param {string} worldId * @param {*} [options] Override http request option. @@ -6196,6 +8650,10 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; + // authentication apiKeyCookie required + + // authentication authCookie required + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); @@ -6211,11 +8669,11 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio * Update information about a specific World. * @summary Update World * @param {string} worldId - * @param {InlineObject6} [inlineObject6] + * @param {InlineObject7} [inlineObject7] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - updateWorld: async (worldId: string, inlineObject6?: InlineObject6, options: any = {}): Promise => { + updateWorld: async (worldId: string, inlineObject7?: InlineObject7, options: any = {}): Promise => { // verify required parameter 'worldId' is not null or undefined assertParamExists('updateWorld', 'worldId', worldId) const localVarPath = `/worlds/{worldId}` @@ -6231,6 +8689,10 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; + // authentication apiKeyCookie required + + // authentication authCookie required + localVarHeaderParameter['Content-Type'] = 'application/json'; @@ -6238,7 +8700,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - localVarRequestOptions.data = serializeDataIfNeeded(inlineObject6, localVarRequestOptions, configuration) + localVarRequestOptions.data = serializeDataIfNeeded(inlineObject7, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), @@ -6258,12 +8720,12 @@ export const WorldsApiFp = function(configuration?: Configuration) { /** * Create a new world. This endpoint requires `assetUrl` to be a valid File object with `.vrcw` file extension, and `imageUrl` to be a valid File object with an image file extension. * @summary Create World - * @param {InlineObject5} [inlineObject5] + * @param {InlineObject6} [inlineObject6] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async createWorld(inlineObject5?: InlineObject5, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.createWorld(inlineObject5, options); + async createWorld(inlineObject6?: InlineObject6, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.createWorld(inlineObject6, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** @@ -6369,7 +8831,7 @@ export const WorldsApiFp = function(configuration?: Configuration) { return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Returns a worlds custom metadata. This is currently believed to be unused. Metadata can be set with `updateWorld` and can be any arbitrary object. + * Return a worlds custom metadata. This is currently believed to be unused. Metadata can be set with `updateWorld` and can be any arbitrary object. * @summary Get World Metadata * @param {string} worldId * @param {*} [options] Override http request option. @@ -6381,19 +8843,18 @@ export const WorldsApiFp = function(configuration?: Configuration) { return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Returns a worlds publish status. This is currently believed to be unused. + * Returns a worlds publish status. * @summary Get World Publish Status * @param {string} worldId * @param {*} [options] Override http request option. - * @deprecated * @throws {RequiredError} */ - async getWorldPublish(worldId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getWorldPublish(worldId, options); + async getWorldPublishStatus(worldId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getWorldPublishStatus(worldId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Publishes a world. You can only publish one world per week. + * Publish a world. You can only publish one world per week. * @summary Publish World * @param {string} worldId * @param {*} [options] Override http request option. @@ -6428,7 +8889,7 @@ export const WorldsApiFp = function(configuration?: Configuration) { return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Unpublishes a world. + * Unpublish a world. * @summary Unpublish World * @param {string} worldId * @param {*} [options] Override http request option. @@ -6442,12 +8903,12 @@ export const WorldsApiFp = function(configuration?: Configuration) { * Update information about a specific World. * @summary Update World * @param {string} worldId - * @param {InlineObject6} [inlineObject6] + * @param {InlineObject7} [inlineObject7] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async updateWorld(worldId: string, inlineObject6?: InlineObject6, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.updateWorld(worldId, inlineObject6, options); + async updateWorld(worldId: string, inlineObject7?: InlineObject7, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.updateWorld(worldId, inlineObject7, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, } @@ -6463,12 +8924,12 @@ export const WorldsApiFactory = function (configuration?: Configuration, basePat /** * Create a new world. This endpoint requires `assetUrl` to be a valid File object with `.vrcw` file extension, and `imageUrl` to be a valid File object with an image file extension. * @summary Create World - * @param {InlineObject5} [inlineObject5] + * @param {InlineObject6} [inlineObject6] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - createWorld(inlineObject5?: InlineObject5, options?: any): AxiosPromise { - return localVarFp.createWorld(inlineObject5, options).then((request) => request(axios, basePath)); + createWorld(inlineObject6?: InlineObject6, options?: any): AxiosPromise { + return localVarFp.createWorld(inlineObject6, options).then((request) => request(axios, basePath)); }, /** * Delete a world. Notice a world is never fully \"deleted\", only its ReleaseStatus is set to \"hidden\" and the linked Files are deleted. The WorldID is permanently reserved. @@ -6567,7 +9028,7 @@ export const WorldsApiFactory = function (configuration?: Configuration, basePat return localVarFp.getWorldInstance(worldId, instanceId, options).then((request) => request(axios, basePath)); }, /** - * Returns a worlds custom metadata. This is currently believed to be unused. Metadata can be set with `updateWorld` and can be any arbitrary object. + * Return a worlds custom metadata. This is currently believed to be unused. Metadata can be set with `updateWorld` and can be any arbitrary object. * @summary Get World Metadata * @param {string} worldId * @param {*} [options] Override http request option. @@ -6578,18 +9039,17 @@ export const WorldsApiFactory = function (configuration?: Configuration, basePat return localVarFp.getWorldMetadata(worldId, options).then((request) => request(axios, basePath)); }, /** - * Returns a worlds publish status. This is currently believed to be unused. + * Returns a worlds publish status. * @summary Get World Publish Status * @param {string} worldId * @param {*} [options] Override http request option. - * @deprecated * @throws {RequiredError} */ - getWorldPublish(worldId: string, options?: any): AxiosPromise { - return localVarFp.getWorldPublish(worldId, options).then((request) => request(axios, basePath)); + getWorldPublishStatus(worldId: string, options?: any): AxiosPromise { + return localVarFp.getWorldPublishStatus(worldId, options).then((request) => request(axios, basePath)); }, /** - * Publishes a world. You can only publish one world per week. + * Publish a world. You can only publish one world per week. * @summary Publish World * @param {string} worldId * @param {*} [options] Override http request option. @@ -6622,7 +9082,7 @@ export const WorldsApiFactory = function (configuration?: Configuration, basePat return localVarFp.searchWorlds(featured, sort, user, userId, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options).then((request) => request(axios, basePath)); }, /** - * Unpublishes a world. + * Unpublish a world. * @summary Unpublish World * @param {string} worldId * @param {*} [options] Override http request option. @@ -6635,12 +9095,12 @@ export const WorldsApiFactory = function (configuration?: Configuration, basePat * Update information about a specific World. * @summary Update World * @param {string} worldId - * @param {InlineObject6} [inlineObject6] + * @param {InlineObject7} [inlineObject7] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - updateWorld(worldId: string, inlineObject6?: InlineObject6, options?: any): AxiosPromise { - return localVarFp.updateWorld(worldId, inlineObject6, options).then((request) => request(axios, basePath)); + updateWorld(worldId: string, inlineObject7?: InlineObject7, options?: any): AxiosPromise { + return localVarFp.updateWorld(worldId, inlineObject7, options).then((request) => request(axios, basePath)); }, }; }; @@ -6655,13 +9115,13 @@ export class WorldsApi extends BaseAPI { /** * Create a new world. This endpoint requires `assetUrl` to be a valid File object with `.vrcw` file extension, and `imageUrl` to be a valid File object with an image file extension. * @summary Create World - * @param {InlineObject5} [inlineObject5] + * @param {InlineObject6} [inlineObject6] * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof WorldsApi */ - public createWorld(inlineObject5?: InlineObject5, options?: any) { - return WorldsApiFp(this.configuration).createWorld(inlineObject5, options).then((request) => request(this.axios, this.basePath)); + public createWorld(inlineObject6?: InlineObject6, options?: any) { + return WorldsApiFp(this.configuration).createWorld(inlineObject6, options).then((request) => request(this.axios, this.basePath)); } /** @@ -6773,7 +9233,7 @@ export class WorldsApi extends BaseAPI { } /** - * Returns a worlds custom metadata. This is currently believed to be unused. Metadata can be set with `updateWorld` and can be any arbitrary object. + * Return a worlds custom metadata. This is currently believed to be unused. Metadata can be set with `updateWorld` and can be any arbitrary object. * @summary Get World Metadata * @param {string} worldId * @param {*} [options] Override http request option. @@ -6786,20 +9246,19 @@ export class WorldsApi extends BaseAPI { } /** - * Returns a worlds publish status. This is currently believed to be unused. + * Returns a worlds publish status. * @summary Get World Publish Status * @param {string} worldId * @param {*} [options] Override http request option. - * @deprecated * @throws {RequiredError} * @memberof WorldsApi */ - public getWorldPublish(worldId: string, options?: any) { - return WorldsApiFp(this.configuration).getWorldPublish(worldId, options).then((request) => request(this.axios, this.basePath)); + public getWorldPublishStatus(worldId: string, options?: any) { + return WorldsApiFp(this.configuration).getWorldPublishStatus(worldId, options).then((request) => request(this.axios, this.basePath)); } /** - * Publishes a world. You can only publish one world per week. + * Publish a world. You can only publish one world per week. * @summary Publish World * @param {string} worldId * @param {*} [options] Override http request option. @@ -6836,7 +9295,7 @@ export class WorldsApi extends BaseAPI { } /** - * Unpublishes a world. + * Unpublish a world. * @summary Unpublish World * @param {string} worldId * @param {*} [options] Override http request option. @@ -6851,13 +9310,13 @@ export class WorldsApi extends BaseAPI { * Update information about a specific World. * @summary Update World * @param {string} worldId - * @param {InlineObject6} [inlineObject6] + * @param {InlineObject7} [inlineObject7] * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof WorldsApi */ - public updateWorld(worldId: string, inlineObject6?: InlineObject6, options?: any) { - return WorldsApiFp(this.configuration).updateWorld(worldId, inlineObject6, options).then((request) => request(this.axios, this.basePath)); + public updateWorld(worldId: string, inlineObject7?: InlineObject7, options?: any) { + return WorldsApiFp(this.configuration).updateWorld(worldId, inlineObject7, options).then((request) => request(this.axios, this.basePath)); } } diff --git a/base.ts b/base.ts index d348f67..fde6ffd 100644 --- a/base.ts +++ b/base.ts @@ -2,9 +2,9 @@ /* eslint-disable */ /** * VRChat API Documentation - * ![VRChat API Banner](https://vrchatapi.github.io/assets/img/api_banner_1500x400.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * ![VRChat API Banner](https://vrchatapi.github.io/assets/img/api_banner_1500x400.png) # Welcome to the VRChat API Before we begin, we would like to state this is a **COMMUNITY DRIVEN PROJECT**. This means that everything you read on here was written by the community itself and is **not** officially supported by VRChat. The documentation is provided \"AS IS\", and any action you take towards VRChat is completely your own responsibility. The documentation and additional libraries SHALL ONLY be used for applications interacting with VRChat\'s API in accordance with their [Terms of Service](https://github.com/VRChatAPI), and MUST NOT be used for modifying the client, \"avatar ripping\", or other illegal activities. Malicious usage or spamming the API may result in account termination. Certain parts of the API are also more sensitive than others, for example moderation, so please read tread extra carefully and read the warnings when present. ![Tupper Policy on API](https://i.imgur.com/yLlW7Ok.png) Finally, use of the API using applications other than the approved methods (website, VRChat application, Unity SDK) is not officially supported. VRChat provides no guarantee or support for external applications using the API. Access to API endpoints may break **at any time, without notice**. Therefore, please **do not ping** VRChat Staff in the VRChat Discord if you are having API problems, as they do not provide API support. We will make a best effort in keeping this documentation and associated language libraries up to date, but things might be outdated or missing. If you find that something is no longer valid, please contact us on Discord or [create an issue](https://github.com/vrchatapi/specification/issues) and tell us so we can fix it. # Getting Started The VRChat API can be used to programmatically retrieve or update information regarding your profile, friends, avatars, worlds and more. The API consists of two parts, \"Photon\" which is only used in-game, and the \"Web API\" which is used by both the game and the website. This documentation focuses only on the Web API. The API is designed around the REST ideology, providing semi-simple and usually predictable URIs to access and modify objects. Requests support standard HTTP methods like GET, PUT, POST, and DELETE and standard status codes. Response bodies are always UTF-8 encoded JSON objects, unless explicitly documented otherwise.
🛑 Warning! Do not touch Photon!
Photon is only used by the in-game client and should not be touched. Doing so may result in permanent account termination.
ℹ️ API Key and Authentication
The API Key has always been the same and is currently JlE5Jldo5Jibnk5O5hTx6XVqsJu4WJ26. Read Authentication for how to log in.
# Using the API For simply exploring what the API can do it is strongly recommended to download [Insomnia](https://insomnia.rest/download), a free and open-source API client that\'s great for sending requests to the API in an orderly fashion. Insomnia allows you to send data in the format that\'s required for VRChat\'s API. It is also possible to try out the API in your browser, by first logging in at [vrchat.com/home](https://vrchat.com/home/) and then going to [vrchat.com/api/1/auth/user](https://vrchat.com/api/1/auth/user), but the information will be much harder to work with. For more permanent operation such as software development it is instead recommended to use one of the existing language SDKs. This community project maintains API libraries in several languages, which allows you to interact with the API with simple function calls rather than having to implement the HTTP protocol yourself. Most of these libraries are automatically generated from the API specification, sometimes with additional helpful wrapper code to make usage easier. This allows them to be almost automatically updated and expanded upon as soon as a new feature is introduced in the specification itself. The libraries can be found on [GitHub](https://github.com/vrchatapi) or following: * [NodeJS (JavaScript)](https://www.npmjs.com/package/vrchat) * [Dart](https://pub.dev/packages/vrchat_dart) * [Rust](https://crates.io/crates/vrchatapi) * [C#](github.com/vrchatapi/vrchatapi-csharp) * [Python](https://github.com/vrchatapi/VRChatPython) # Pagination Most endpoints enforce pagination, meaning they will only return 10 entries by default, and never more than 100.
Using both the limit and offset parameters allows you to easily paginate through a large number of objects. | Query Parameter | Type | Description | | ----------|--|------- | | `limit` | integer | The number of objects to return. This value often defaults to 10. Highest limit is always 100.| | `offset` | integer | A zero-based offset from the default object sorting.| If a request returns fewer objects than the `limit` parameter, there are no more items available to return. # Contribution Do you want to get involved in the documentation effort? Do you want to help improve one of the language API libraries? This project is an [OPEN Open Source Project](https://openopensource.org)! This means that individuals making significant and valuable contributions are given commit-access to the project. It also means we are very open and welcoming of new people making contributions, unlike some more guarded open-source projects. [![Discord](https://img.shields.io/static/v1?label=vrchatapi&message=discord&color=blueviolet&style=for-the-badge)](https://discord.gg/qjZE9C9fkB) * - * The version of the OpenAPI document: 1.0.0 + * The version of the OpenAPI document: 1.0.1 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index 1704278..e89818d 100644 --- a/common.ts +++ b/common.ts @@ -2,9 +2,9 @@ /* eslint-disable */ /** * VRChat API Documentation - * ![VRChat API Banner](https://vrchatapi.github.io/assets/img/api_banner_1500x400.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * ![VRChat API Banner](https://vrchatapi.github.io/assets/img/api_banner_1500x400.png) # Welcome to the VRChat API Before we begin, we would like to state this is a **COMMUNITY DRIVEN PROJECT**. This means that everything you read on here was written by the community itself and is **not** officially supported by VRChat. The documentation is provided \"AS IS\", and any action you take towards VRChat is completely your own responsibility. The documentation and additional libraries SHALL ONLY be used for applications interacting with VRChat\'s API in accordance with their [Terms of Service](https://github.com/VRChatAPI), and MUST NOT be used for modifying the client, \"avatar ripping\", or other illegal activities. Malicious usage or spamming the API may result in account termination. Certain parts of the API are also more sensitive than others, for example moderation, so please read tread extra carefully and read the warnings when present. ![Tupper Policy on API](https://i.imgur.com/yLlW7Ok.png) Finally, use of the API using applications other than the approved methods (website, VRChat application, Unity SDK) is not officially supported. VRChat provides no guarantee or support for external applications using the API. Access to API endpoints may break **at any time, without notice**. Therefore, please **do not ping** VRChat Staff in the VRChat Discord if you are having API problems, as they do not provide API support. We will make a best effort in keeping this documentation and associated language libraries up to date, but things might be outdated or missing. If you find that something is no longer valid, please contact us on Discord or [create an issue](https://github.com/vrchatapi/specification/issues) and tell us so we can fix it. # Getting Started The VRChat API can be used to programmatically retrieve or update information regarding your profile, friends, avatars, worlds and more. The API consists of two parts, \"Photon\" which is only used in-game, and the \"Web API\" which is used by both the game and the website. This documentation focuses only on the Web API. The API is designed around the REST ideology, providing semi-simple and usually predictable URIs to access and modify objects. Requests support standard HTTP methods like GET, PUT, POST, and DELETE and standard status codes. Response bodies are always UTF-8 encoded JSON objects, unless explicitly documented otherwise.
🛑 Warning! Do not touch Photon!
Photon is only used by the in-game client and should not be touched. Doing so may result in permanent account termination.
ℹ️ API Key and Authentication
The API Key has always been the same and is currently JlE5Jldo5Jibnk5O5hTx6XVqsJu4WJ26. Read Authentication for how to log in.
# Using the API For simply exploring what the API can do it is strongly recommended to download [Insomnia](https://insomnia.rest/download), a free and open-source API client that\'s great for sending requests to the API in an orderly fashion. Insomnia allows you to send data in the format that\'s required for VRChat\'s API. It is also possible to try out the API in your browser, by first logging in at [vrchat.com/home](https://vrchat.com/home/) and then going to [vrchat.com/api/1/auth/user](https://vrchat.com/api/1/auth/user), but the information will be much harder to work with. For more permanent operation such as software development it is instead recommended to use one of the existing language SDKs. This community project maintains API libraries in several languages, which allows you to interact with the API with simple function calls rather than having to implement the HTTP protocol yourself. Most of these libraries are automatically generated from the API specification, sometimes with additional helpful wrapper code to make usage easier. This allows them to be almost automatically updated and expanded upon as soon as a new feature is introduced in the specification itself. The libraries can be found on [GitHub](https://github.com/vrchatapi) or following: * [NodeJS (JavaScript)](https://www.npmjs.com/package/vrchat) * [Dart](https://pub.dev/packages/vrchat_dart) * [Rust](https://crates.io/crates/vrchatapi) * [C#](github.com/vrchatapi/vrchatapi-csharp) * [Python](https://github.com/vrchatapi/VRChatPython) # Pagination Most endpoints enforce pagination, meaning they will only return 10 entries by default, and never more than 100.
Using both the limit and offset parameters allows you to easily paginate through a large number of objects. | Query Parameter | Type | Description | | ----------|--|------- | | `limit` | integer | The number of objects to return. This value often defaults to 10. Highest limit is always 100.| | `offset` | integer | A zero-based offset from the default object sorting.| If a request returns fewer objects than the `limit` parameter, there are no more items available to return. # Contribution Do you want to get involved in the documentation effort? Do you want to help improve one of the language API libraries? This project is an [OPEN Open Source Project](https://openopensource.org)! This means that individuals making significant and valuable contributions are given commit-access to the project. It also means we are very open and welcoming of new people making contributions, unlike some more guarded open-source projects. [![Discord](https://img.shields.io/static/v1?label=vrchatapi&message=discord&color=blueviolet&style=for-the-badge)](https://discord.gg/qjZE9C9fkB) * - * The version of the OpenAPI document: 1.0.0 + * The version of the OpenAPI document: 1.0.1 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index e5b17ff..3fa9a45 100644 --- a/configuration.ts +++ b/configuration.ts @@ -2,9 +2,9 @@ /* eslint-disable */ /** * VRChat API Documentation - * ![VRChat API Banner](https://vrchatapi.github.io/assets/img/api_banner_1500x400.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * ![VRChat API Banner](https://vrchatapi.github.io/assets/img/api_banner_1500x400.png) # Welcome to the VRChat API Before we begin, we would like to state this is a **COMMUNITY DRIVEN PROJECT**. This means that everything you read on here was written by the community itself and is **not** officially supported by VRChat. The documentation is provided \"AS IS\", and any action you take towards VRChat is completely your own responsibility. The documentation and additional libraries SHALL ONLY be used for applications interacting with VRChat\'s API in accordance with their [Terms of Service](https://github.com/VRChatAPI), and MUST NOT be used for modifying the client, \"avatar ripping\", or other illegal activities. Malicious usage or spamming the API may result in account termination. Certain parts of the API are also more sensitive than others, for example moderation, so please read tread extra carefully and read the warnings when present. ![Tupper Policy on API](https://i.imgur.com/yLlW7Ok.png) Finally, use of the API using applications other than the approved methods (website, VRChat application, Unity SDK) is not officially supported. VRChat provides no guarantee or support for external applications using the API. Access to API endpoints may break **at any time, without notice**. Therefore, please **do not ping** VRChat Staff in the VRChat Discord if you are having API problems, as they do not provide API support. We will make a best effort in keeping this documentation and associated language libraries up to date, but things might be outdated or missing. If you find that something is no longer valid, please contact us on Discord or [create an issue](https://github.com/vrchatapi/specification/issues) and tell us so we can fix it. # Getting Started The VRChat API can be used to programmatically retrieve or update information regarding your profile, friends, avatars, worlds and more. The API consists of two parts, \"Photon\" which is only used in-game, and the \"Web API\" which is used by both the game and the website. This documentation focuses only on the Web API. The API is designed around the REST ideology, providing semi-simple and usually predictable URIs to access and modify objects. Requests support standard HTTP methods like GET, PUT, POST, and DELETE and standard status codes. Response bodies are always UTF-8 encoded JSON objects, unless explicitly documented otherwise.
🛑 Warning! Do not touch Photon!
Photon is only used by the in-game client and should not be touched. Doing so may result in permanent account termination.
ℹ️ API Key and Authentication
The API Key has always been the same and is currently JlE5Jldo5Jibnk5O5hTx6XVqsJu4WJ26. Read Authentication for how to log in.
# Using the API For simply exploring what the API can do it is strongly recommended to download [Insomnia](https://insomnia.rest/download), a free and open-source API client that\'s great for sending requests to the API in an orderly fashion. Insomnia allows you to send data in the format that\'s required for VRChat\'s API. It is also possible to try out the API in your browser, by first logging in at [vrchat.com/home](https://vrchat.com/home/) and then going to [vrchat.com/api/1/auth/user](https://vrchat.com/api/1/auth/user), but the information will be much harder to work with. For more permanent operation such as software development it is instead recommended to use one of the existing language SDKs. This community project maintains API libraries in several languages, which allows you to interact with the API with simple function calls rather than having to implement the HTTP protocol yourself. Most of these libraries are automatically generated from the API specification, sometimes with additional helpful wrapper code to make usage easier. This allows them to be almost automatically updated and expanded upon as soon as a new feature is introduced in the specification itself. The libraries can be found on [GitHub](https://github.com/vrchatapi) or following: * [NodeJS (JavaScript)](https://www.npmjs.com/package/vrchat) * [Dart](https://pub.dev/packages/vrchat_dart) * [Rust](https://crates.io/crates/vrchatapi) * [C#](github.com/vrchatapi/vrchatapi-csharp) * [Python](https://github.com/vrchatapi/VRChatPython) # Pagination Most endpoints enforce pagination, meaning they will only return 10 entries by default, and never more than 100.
Using both the limit and offset parameters allows you to easily paginate through a large number of objects. | Query Parameter | Type | Description | | ----------|--|------- | | `limit` | integer | The number of objects to return. This value often defaults to 10. Highest limit is always 100.| | `offset` | integer | A zero-based offset from the default object sorting.| If a request returns fewer objects than the `limit` parameter, there are no more items available to return. # Contribution Do you want to get involved in the documentation effort? Do you want to help improve one of the language API libraries? This project is an [OPEN Open Source Project](https://openopensource.org)! This means that individuals making significant and valuable contributions are given commit-access to the project. It also means we are very open and welcoming of new people making contributions, unlike some more guarded open-source projects. [![Discord](https://img.shields.io/static/v1?label=vrchatapi&message=discord&color=blueviolet&style=for-the-badge)](https://discord.gg/qjZE9C9fkB) * - * The version of the OpenAPI document: 1.0.0 + * The version of the OpenAPI document: 1.0.1 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/generate.sh b/generate.sh index faaf10c..0930122 100644 --- a/generate.sh +++ b/generate.sh @@ -5,11 +5,11 @@ curl https://vrchatapi.github.io/specification/openapi.yaml > dist/openapi.yaml rm *.ts -rf openapi-generator-cli generate \ -g typescript-axios \ ---additional-properties=npmName=vrchat \ +--additional-properties=npmName=vrchat,npmVersion=1.0.1 \ --git-user-id=vrchatapi \ --git-repo-id=vrchatapi-javascript \ -o . \ --i dist/openapi.yaml \ +-i https://vrchatapi.github.io/specification/openapi.yaml \ --http-user-agent="vrchatapi-javascript" # Modify package.json diff --git a/index.ts b/index.ts index 7f8e165..c039165 100644 --- a/index.ts +++ b/index.ts @@ -2,9 +2,9 @@ /* eslint-disable */ /** * VRChat API Documentation - * ![VRChat API Banner](https://vrchatapi.github.io/assets/img/api_banner_1500x400.png) # VRChat API Documentation This project is an [OPEN Open Source Project](https://openopensource.org) Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project. ## Disclaimer This is the official response of the VRChat Team (from Tupper more specifically) on the usage of the VRChat API. > **Use of the API using applications other than the approved methods (website, VRChat application) are not officially supported. You may use the API for your own application, but keep these guidelines in mind:** > * We do not provide documentation or support for the API. > * Do not make queries to the API more than once per 60 seconds. > * Abuse of the API may result in account termination. > * Access to API endpoints may break at any given time, with no warning. As stated, this documentation was not created with the help of the official VRChat team. Therefore this documentation is not an official documentation of the VRChat API and may not be always up to date with the latest versions. If you find that a page or endpoint is not longer valid please create an issue and tell us so we can fix it. ## Get in touch with us! [https://discord.gg/qjZE9C9fkB#vrchat-api](https://discord.gg/qjZE9C9fkB) + * ![VRChat API Banner](https://vrchatapi.github.io/assets/img/api_banner_1500x400.png) # Welcome to the VRChat API Before we begin, we would like to state this is a **COMMUNITY DRIVEN PROJECT**. This means that everything you read on here was written by the community itself and is **not** officially supported by VRChat. The documentation is provided \"AS IS\", and any action you take towards VRChat is completely your own responsibility. The documentation and additional libraries SHALL ONLY be used for applications interacting with VRChat\'s API in accordance with their [Terms of Service](https://github.com/VRChatAPI), and MUST NOT be used for modifying the client, \"avatar ripping\", or other illegal activities. Malicious usage or spamming the API may result in account termination. Certain parts of the API are also more sensitive than others, for example moderation, so please read tread extra carefully and read the warnings when present. ![Tupper Policy on API](https://i.imgur.com/yLlW7Ok.png) Finally, use of the API using applications other than the approved methods (website, VRChat application, Unity SDK) is not officially supported. VRChat provides no guarantee or support for external applications using the API. Access to API endpoints may break **at any time, without notice**. Therefore, please **do not ping** VRChat Staff in the VRChat Discord if you are having API problems, as they do not provide API support. We will make a best effort in keeping this documentation and associated language libraries up to date, but things might be outdated or missing. If you find that something is no longer valid, please contact us on Discord or [create an issue](https://github.com/vrchatapi/specification/issues) and tell us so we can fix it. # Getting Started The VRChat API can be used to programmatically retrieve or update information regarding your profile, friends, avatars, worlds and more. The API consists of two parts, \"Photon\" which is only used in-game, and the \"Web API\" which is used by both the game and the website. This documentation focuses only on the Web API. The API is designed around the REST ideology, providing semi-simple and usually predictable URIs to access and modify objects. Requests support standard HTTP methods like GET, PUT, POST, and DELETE and standard status codes. Response bodies are always UTF-8 encoded JSON objects, unless explicitly documented otherwise.
🛑 Warning! Do not touch Photon!
Photon is only used by the in-game client and should not be touched. Doing so may result in permanent account termination.
ℹ️ API Key and Authentication
The API Key has always been the same and is currently JlE5Jldo5Jibnk5O5hTx6XVqsJu4WJ26. Read Authentication for how to log in.
# Using the API For simply exploring what the API can do it is strongly recommended to download [Insomnia](https://insomnia.rest/download), a free and open-source API client that\'s great for sending requests to the API in an orderly fashion. Insomnia allows you to send data in the format that\'s required for VRChat\'s API. It is also possible to try out the API in your browser, by first logging in at [vrchat.com/home](https://vrchat.com/home/) and then going to [vrchat.com/api/1/auth/user](https://vrchat.com/api/1/auth/user), but the information will be much harder to work with. For more permanent operation such as software development it is instead recommended to use one of the existing language SDKs. This community project maintains API libraries in several languages, which allows you to interact with the API with simple function calls rather than having to implement the HTTP protocol yourself. Most of these libraries are automatically generated from the API specification, sometimes with additional helpful wrapper code to make usage easier. This allows them to be almost automatically updated and expanded upon as soon as a new feature is introduced in the specification itself. The libraries can be found on [GitHub](https://github.com/vrchatapi) or following: * [NodeJS (JavaScript)](https://www.npmjs.com/package/vrchat) * [Dart](https://pub.dev/packages/vrchat_dart) * [Rust](https://crates.io/crates/vrchatapi) * [C#](github.com/vrchatapi/vrchatapi-csharp) * [Python](https://github.com/vrchatapi/VRChatPython) # Pagination Most endpoints enforce pagination, meaning they will only return 10 entries by default, and never more than 100.
Using both the limit and offset parameters allows you to easily paginate through a large number of objects. | Query Parameter | Type | Description | | ----------|--|------- | | `limit` | integer | The number of objects to return. This value often defaults to 10. Highest limit is always 100.| | `offset` | integer | A zero-based offset from the default object sorting.| If a request returns fewer objects than the `limit` parameter, there are no more items available to return. # Contribution Do you want to get involved in the documentation effort? Do you want to help improve one of the language API libraries? This project is an [OPEN Open Source Project](https://openopensource.org)! This means that individuals making significant and valuable contributions are given commit-access to the project. It also means we are very open and welcoming of new people making contributions, unlike some more guarded open-source projects. [![Discord](https://img.shields.io/static/v1?label=vrchatapi&message=discord&color=blueviolet&style=for-the-badge)](https://discord.gg/qjZE9C9fkB) * - * The version of the OpenAPI document: 1.0.0 + * The version of the OpenAPI document: 1.0.1 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index da09f38..81d3f75 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.0.0", + "version": "1.0.1", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/package.json b/package.json index db3dbfe..3c6be95 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.0.0", + "version": "1.0.1", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "keywords": [ From 075c34fe60a279a8fcc8b3c529f91bb510cf0a03 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Foorack=20/=20Max=20Fax=C3=A4lv?= Date: Sun, 22 Aug 2021 22:15:06 +0200 Subject: [PATCH 023/130] Remove non-working kramdown tag --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 376c66a..950f4a1 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -![](https://github.com/vrchatapi/vrchatapi.github.io/blob/master/assets/img/lang/lang_javascript_banner_1500x300.png?raw=true){:.img-fluid} +![](https://github.com/vrchatapi/vrchatapi.github.io/blob/master/assets/img/lang/lang_javascript_banner_1500x300.png?raw=true) # VRChat API Library for JavaScript/TypeScript @@ -50,4 +50,4 @@ See [example.js](https://github.com/vrchatapi/vrchatapi-javascript/blob/master/e Contributions are welcome, but do not add features that should be handled by the OpenAPI specification. -Join the [Discord server](https://discord.gg/Ge2APMhPfD) to get in touch with us. \ No newline at end of file +Join the [Discord server](https://discord.gg/Ge2APMhPfD) to get in touch with us. From e31d0a53161e9a830f38d751d5cbc40142737473 Mon Sep 17 00:00:00 2001 From: Foorack Date: Sun, 22 Aug 2021 22:57:22 +0200 Subject: [PATCH 024/130] docs: Make spec link clickable --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 950f4a1..f349ad6 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ # VRChat API Library for JavaScript/TypeScript -A JavaScript/TypeScript/NodeJS client to interact with the unofficial VRChat API. Supports all REST calls specified in https://github.com/vrchatapi/specification. +A JavaScript/TypeScript/NodeJS client to interact with the unofficial VRChat API. Supports all REST calls specified in the [API specification](https://github.com/vrchatapi/specification). ## Disclaimer From be57eed9bc637c59e97bc1ead65591de4254ef57 Mon Sep 17 00:00:00 2001 From: Foorack Date: Mon, 23 Aug 2021 00:06:42 +0200 Subject: [PATCH 025/130] chore: cleanup in generate.sh --- generate.sh | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/generate.sh b/generate.sh index 0930122..8ab810c 100644 --- a/generate.sh +++ b/generate.sh @@ -1,11 +1,9 @@ #!/bin/bash -curl https://vrchatapi.github.io/specification/openapi.yaml > dist/openapi.yaml - rm *.ts -rf openapi-generator-cli generate \ -g typescript-axios \ ---additional-properties=npmName=vrchat,npmVersion=1.0.1 \ +--additional-properties=npmName=vrchat \ --git-user-id=vrchatapi \ --git-repo-id=vrchatapi-javascript \ -o . \ From 54119a48525af21f5d9ec7c2b92cb36362a87e4a Mon Sep 17 00:00:00 2001 From: Foorack Date: Mon, 23 Aug 2021 17:20:16 +0200 Subject: [PATCH 026/130] Update Node SDK to spec 1.0.2 --- api.ts | 18 +++++++++--------- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 2 +- package.json | 2 +- 7 files changed, 15 insertions(+), 15 deletions(-) diff --git a/api.ts b/api.ts index fd3aeb9..6f761d1 100644 --- a/api.ts +++ b/api.ts @@ -4,7 +4,7 @@ * VRChat API Documentation * ![VRChat API Banner](https://vrchatapi.github.io/assets/img/api_banner_1500x400.png) # Welcome to the VRChat API Before we begin, we would like to state this is a **COMMUNITY DRIVEN PROJECT**. This means that everything you read on here was written by the community itself and is **not** officially supported by VRChat. The documentation is provided \"AS IS\", and any action you take towards VRChat is completely your own responsibility. The documentation and additional libraries SHALL ONLY be used for applications interacting with VRChat\'s API in accordance with their [Terms of Service](https://github.com/VRChatAPI), and MUST NOT be used for modifying the client, \"avatar ripping\", or other illegal activities. Malicious usage or spamming the API may result in account termination. Certain parts of the API are also more sensitive than others, for example moderation, so please read tread extra carefully and read the warnings when present. ![Tupper Policy on API](https://i.imgur.com/yLlW7Ok.png) Finally, use of the API using applications other than the approved methods (website, VRChat application, Unity SDK) is not officially supported. VRChat provides no guarantee or support for external applications using the API. Access to API endpoints may break **at any time, without notice**. Therefore, please **do not ping** VRChat Staff in the VRChat Discord if you are having API problems, as they do not provide API support. We will make a best effort in keeping this documentation and associated language libraries up to date, but things might be outdated or missing. If you find that something is no longer valid, please contact us on Discord or [create an issue](https://github.com/vrchatapi/specification/issues) and tell us so we can fix it. # Getting Started The VRChat API can be used to programmatically retrieve or update information regarding your profile, friends, avatars, worlds and more. The API consists of two parts, \"Photon\" which is only used in-game, and the \"Web API\" which is used by both the game and the website. This documentation focuses only on the Web API. The API is designed around the REST ideology, providing semi-simple and usually predictable URIs to access and modify objects. Requests support standard HTTP methods like GET, PUT, POST, and DELETE and standard status codes. Response bodies are always UTF-8 encoded JSON objects, unless explicitly documented otherwise.
🛑 Warning! Do not touch Photon!
Photon is only used by the in-game client and should not be touched. Doing so may result in permanent account termination.
ℹ️ API Key and Authentication
The API Key has always been the same and is currently JlE5Jldo5Jibnk5O5hTx6XVqsJu4WJ26. Read Authentication for how to log in.
# Using the API For simply exploring what the API can do it is strongly recommended to download [Insomnia](https://insomnia.rest/download), a free and open-source API client that\'s great for sending requests to the API in an orderly fashion. Insomnia allows you to send data in the format that\'s required for VRChat\'s API. It is also possible to try out the API in your browser, by first logging in at [vrchat.com/home](https://vrchat.com/home/) and then going to [vrchat.com/api/1/auth/user](https://vrchat.com/api/1/auth/user), but the information will be much harder to work with. For more permanent operation such as software development it is instead recommended to use one of the existing language SDKs. This community project maintains API libraries in several languages, which allows you to interact with the API with simple function calls rather than having to implement the HTTP protocol yourself. Most of these libraries are automatically generated from the API specification, sometimes with additional helpful wrapper code to make usage easier. This allows them to be almost automatically updated and expanded upon as soon as a new feature is introduced in the specification itself. The libraries can be found on [GitHub](https://github.com/vrchatapi) or following: * [NodeJS (JavaScript)](https://www.npmjs.com/package/vrchat) * [Dart](https://pub.dev/packages/vrchat_dart) * [Rust](https://crates.io/crates/vrchatapi) * [C#](github.com/vrchatapi/vrchatapi-csharp) * [Python](https://github.com/vrchatapi/VRChatPython) # Pagination Most endpoints enforce pagination, meaning they will only return 10 entries by default, and never more than 100.
Using both the limit and offset parameters allows you to easily paginate through a large number of objects. | Query Parameter | Type | Description | | ----------|--|------- | | `limit` | integer | The number of objects to return. This value often defaults to 10. Highest limit is always 100.| | `offset` | integer | A zero-based offset from the default object sorting.| If a request returns fewer objects than the `limit` parameter, there are no more items available to return. # Contribution Do you want to get involved in the documentation effort? Do you want to help improve one of the language API libraries? This project is an [OPEN Open Source Project](https://openopensource.org)! This means that individuals making significant and valuable contributions are given commit-access to the project. It also means we are very open and welcoming of new people making contributions, unlike some more guarded open-source projects. [![Discord](https://img.shields.io/static/v1?label=vrchatapi&message=discord&color=blueviolet&style=for-the-badge)](https://discord.gg/qjZE9C9fkB) * - * The version of the OpenAPI document: 1.0.1 + * The version of the OpenAPI document: 1.0.2 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -3209,9 +3209,9 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf * @param {*} [options] Override http request option. * @throws {RequiredError} */ - deleteUserById: async (userId: string, options: any = {}): Promise => { + deleteUser: async (userId: string, options: any = {}): Promise => { // verify required parameter 'userId' is not null or undefined - assertParamExists('deleteUserById', 'userId', userId) + assertParamExists('deleteUser', 'userId', userId) const localVarPath = `/user/{userId}/delete` .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. @@ -3435,8 +3435,8 @@ export const AuthenticationApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async deleteUserById(userId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.deleteUserById(userId, options); + async deleteUser(userId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.deleteUser(userId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** @@ -3508,8 +3508,8 @@ export const AuthenticationApiFactory = function (configuration?: Configuration, * @param {*} [options] Override http request option. * @throws {RequiredError} */ - deleteUserById(userId: string, options?: any): AxiosPromise { - return localVarFp.deleteUserById(userId, options).then((request) => request(axios, basePath)); + deleteUser(userId: string, options?: any): AxiosPromise { + return localVarFp.deleteUser(userId, options).then((request) => request(axios, basePath)); }, /** * Login and/or Get user data from your VRChat account. If `Authorization` header is present then a new login session will be generated, and a new `auth` cookie is returned. **WARNING: Session Limit:** Each authentication with login credentials counts as a separate session, out of which you have a limited amount. Make sure to save and reuse the `auth` cookie whenever you can, and avoid sending the Authorization header unless strictly neccesary. While the exact number of simultaneous open sessions is secret, expect to **very fast** run into the rate-limit and be temporarily blocked from making new sessions until the old ones expire. @@ -3576,8 +3576,8 @@ export class AuthenticationApi extends BaseAPI { * @throws {RequiredError} * @memberof AuthenticationApi */ - public deleteUserById(userId: string, options?: any) { - return AuthenticationApiFp(this.configuration).deleteUserById(userId, options).then((request) => request(this.axios, this.basePath)); + public deleteUser(userId: string, options?: any) { + return AuthenticationApiFp(this.configuration).deleteUser(userId, options).then((request) => request(this.axios, this.basePath)); } /** diff --git a/base.ts b/base.ts index fde6ffd..559b043 100644 --- a/base.ts +++ b/base.ts @@ -4,7 +4,7 @@ * VRChat API Documentation * ![VRChat API Banner](https://vrchatapi.github.io/assets/img/api_banner_1500x400.png) # Welcome to the VRChat API Before we begin, we would like to state this is a **COMMUNITY DRIVEN PROJECT**. This means that everything you read on here was written by the community itself and is **not** officially supported by VRChat. The documentation is provided \"AS IS\", and any action you take towards VRChat is completely your own responsibility. The documentation and additional libraries SHALL ONLY be used for applications interacting with VRChat\'s API in accordance with their [Terms of Service](https://github.com/VRChatAPI), and MUST NOT be used for modifying the client, \"avatar ripping\", or other illegal activities. Malicious usage or spamming the API may result in account termination. Certain parts of the API are also more sensitive than others, for example moderation, so please read tread extra carefully and read the warnings when present. ![Tupper Policy on API](https://i.imgur.com/yLlW7Ok.png) Finally, use of the API using applications other than the approved methods (website, VRChat application, Unity SDK) is not officially supported. VRChat provides no guarantee or support for external applications using the API. Access to API endpoints may break **at any time, without notice**. Therefore, please **do not ping** VRChat Staff in the VRChat Discord if you are having API problems, as they do not provide API support. We will make a best effort in keeping this documentation and associated language libraries up to date, but things might be outdated or missing. If you find that something is no longer valid, please contact us on Discord or [create an issue](https://github.com/vrchatapi/specification/issues) and tell us so we can fix it. # Getting Started The VRChat API can be used to programmatically retrieve or update information regarding your profile, friends, avatars, worlds and more. The API consists of two parts, \"Photon\" which is only used in-game, and the \"Web API\" which is used by both the game and the website. This documentation focuses only on the Web API. The API is designed around the REST ideology, providing semi-simple and usually predictable URIs to access and modify objects. Requests support standard HTTP methods like GET, PUT, POST, and DELETE and standard status codes. Response bodies are always UTF-8 encoded JSON objects, unless explicitly documented otherwise.
🛑 Warning! Do not touch Photon!
Photon is only used by the in-game client and should not be touched. Doing so may result in permanent account termination.
ℹ️ API Key and Authentication
The API Key has always been the same and is currently JlE5Jldo5Jibnk5O5hTx6XVqsJu4WJ26. Read Authentication for how to log in.
# Using the API For simply exploring what the API can do it is strongly recommended to download [Insomnia](https://insomnia.rest/download), a free and open-source API client that\'s great for sending requests to the API in an orderly fashion. Insomnia allows you to send data in the format that\'s required for VRChat\'s API. It is also possible to try out the API in your browser, by first logging in at [vrchat.com/home](https://vrchat.com/home/) and then going to [vrchat.com/api/1/auth/user](https://vrchat.com/api/1/auth/user), but the information will be much harder to work with. For more permanent operation such as software development it is instead recommended to use one of the existing language SDKs. This community project maintains API libraries in several languages, which allows you to interact with the API with simple function calls rather than having to implement the HTTP protocol yourself. Most of these libraries are automatically generated from the API specification, sometimes with additional helpful wrapper code to make usage easier. This allows them to be almost automatically updated and expanded upon as soon as a new feature is introduced in the specification itself. The libraries can be found on [GitHub](https://github.com/vrchatapi) or following: * [NodeJS (JavaScript)](https://www.npmjs.com/package/vrchat) * [Dart](https://pub.dev/packages/vrchat_dart) * [Rust](https://crates.io/crates/vrchatapi) * [C#](github.com/vrchatapi/vrchatapi-csharp) * [Python](https://github.com/vrchatapi/VRChatPython) # Pagination Most endpoints enforce pagination, meaning they will only return 10 entries by default, and never more than 100.
Using both the limit and offset parameters allows you to easily paginate through a large number of objects. | Query Parameter | Type | Description | | ----------|--|------- | | `limit` | integer | The number of objects to return. This value often defaults to 10. Highest limit is always 100.| | `offset` | integer | A zero-based offset from the default object sorting.| If a request returns fewer objects than the `limit` parameter, there are no more items available to return. # Contribution Do you want to get involved in the documentation effort? Do you want to help improve one of the language API libraries? This project is an [OPEN Open Source Project](https://openopensource.org)! This means that individuals making significant and valuable contributions are given commit-access to the project. It also means we are very open and welcoming of new people making contributions, unlike some more guarded open-source projects. [![Discord](https://img.shields.io/static/v1?label=vrchatapi&message=discord&color=blueviolet&style=for-the-badge)](https://discord.gg/qjZE9C9fkB) * - * The version of the OpenAPI document: 1.0.1 + * The version of the OpenAPI document: 1.0.2 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index e89818d..4d3c92d 100644 --- a/common.ts +++ b/common.ts @@ -4,7 +4,7 @@ * VRChat API Documentation * ![VRChat API Banner](https://vrchatapi.github.io/assets/img/api_banner_1500x400.png) # Welcome to the VRChat API Before we begin, we would like to state this is a **COMMUNITY DRIVEN PROJECT**. This means that everything you read on here was written by the community itself and is **not** officially supported by VRChat. The documentation is provided \"AS IS\", and any action you take towards VRChat is completely your own responsibility. The documentation and additional libraries SHALL ONLY be used for applications interacting with VRChat\'s API in accordance with their [Terms of Service](https://github.com/VRChatAPI), and MUST NOT be used for modifying the client, \"avatar ripping\", or other illegal activities. Malicious usage or spamming the API may result in account termination. Certain parts of the API are also more sensitive than others, for example moderation, so please read tread extra carefully and read the warnings when present. ![Tupper Policy on API](https://i.imgur.com/yLlW7Ok.png) Finally, use of the API using applications other than the approved methods (website, VRChat application, Unity SDK) is not officially supported. VRChat provides no guarantee or support for external applications using the API. Access to API endpoints may break **at any time, without notice**. Therefore, please **do not ping** VRChat Staff in the VRChat Discord if you are having API problems, as they do not provide API support. We will make a best effort in keeping this documentation and associated language libraries up to date, but things might be outdated or missing. If you find that something is no longer valid, please contact us on Discord or [create an issue](https://github.com/vrchatapi/specification/issues) and tell us so we can fix it. # Getting Started The VRChat API can be used to programmatically retrieve or update information regarding your profile, friends, avatars, worlds and more. The API consists of two parts, \"Photon\" which is only used in-game, and the \"Web API\" which is used by both the game and the website. This documentation focuses only on the Web API. The API is designed around the REST ideology, providing semi-simple and usually predictable URIs to access and modify objects. Requests support standard HTTP methods like GET, PUT, POST, and DELETE and standard status codes. Response bodies are always UTF-8 encoded JSON objects, unless explicitly documented otherwise.
🛑 Warning! Do not touch Photon!
Photon is only used by the in-game client and should not be touched. Doing so may result in permanent account termination.
ℹ️ API Key and Authentication
The API Key has always been the same and is currently JlE5Jldo5Jibnk5O5hTx6XVqsJu4WJ26. Read Authentication for how to log in.
# Using the API For simply exploring what the API can do it is strongly recommended to download [Insomnia](https://insomnia.rest/download), a free and open-source API client that\'s great for sending requests to the API in an orderly fashion. Insomnia allows you to send data in the format that\'s required for VRChat\'s API. It is also possible to try out the API in your browser, by first logging in at [vrchat.com/home](https://vrchat.com/home/) and then going to [vrchat.com/api/1/auth/user](https://vrchat.com/api/1/auth/user), but the information will be much harder to work with. For more permanent operation such as software development it is instead recommended to use one of the existing language SDKs. This community project maintains API libraries in several languages, which allows you to interact with the API with simple function calls rather than having to implement the HTTP protocol yourself. Most of these libraries are automatically generated from the API specification, sometimes with additional helpful wrapper code to make usage easier. This allows them to be almost automatically updated and expanded upon as soon as a new feature is introduced in the specification itself. The libraries can be found on [GitHub](https://github.com/vrchatapi) or following: * [NodeJS (JavaScript)](https://www.npmjs.com/package/vrchat) * [Dart](https://pub.dev/packages/vrchat_dart) * [Rust](https://crates.io/crates/vrchatapi) * [C#](github.com/vrchatapi/vrchatapi-csharp) * [Python](https://github.com/vrchatapi/VRChatPython) # Pagination Most endpoints enforce pagination, meaning they will only return 10 entries by default, and never more than 100.
Using both the limit and offset parameters allows you to easily paginate through a large number of objects. | Query Parameter | Type | Description | | ----------|--|------- | | `limit` | integer | The number of objects to return. This value often defaults to 10. Highest limit is always 100.| | `offset` | integer | A zero-based offset from the default object sorting.| If a request returns fewer objects than the `limit` parameter, there are no more items available to return. # Contribution Do you want to get involved in the documentation effort? Do you want to help improve one of the language API libraries? This project is an [OPEN Open Source Project](https://openopensource.org)! This means that individuals making significant and valuable contributions are given commit-access to the project. It also means we are very open and welcoming of new people making contributions, unlike some more guarded open-source projects. [![Discord](https://img.shields.io/static/v1?label=vrchatapi&message=discord&color=blueviolet&style=for-the-badge)](https://discord.gg/qjZE9C9fkB) * - * The version of the OpenAPI document: 1.0.1 + * The version of the OpenAPI document: 1.0.2 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index 3fa9a45..c7a00a8 100644 --- a/configuration.ts +++ b/configuration.ts @@ -4,7 +4,7 @@ * VRChat API Documentation * ![VRChat API Banner](https://vrchatapi.github.io/assets/img/api_banner_1500x400.png) # Welcome to the VRChat API Before we begin, we would like to state this is a **COMMUNITY DRIVEN PROJECT**. This means that everything you read on here was written by the community itself and is **not** officially supported by VRChat. The documentation is provided \"AS IS\", and any action you take towards VRChat is completely your own responsibility. The documentation and additional libraries SHALL ONLY be used for applications interacting with VRChat\'s API in accordance with their [Terms of Service](https://github.com/VRChatAPI), and MUST NOT be used for modifying the client, \"avatar ripping\", or other illegal activities. Malicious usage or spamming the API may result in account termination. Certain parts of the API are also more sensitive than others, for example moderation, so please read tread extra carefully and read the warnings when present. ![Tupper Policy on API](https://i.imgur.com/yLlW7Ok.png) Finally, use of the API using applications other than the approved methods (website, VRChat application, Unity SDK) is not officially supported. VRChat provides no guarantee or support for external applications using the API. Access to API endpoints may break **at any time, without notice**. Therefore, please **do not ping** VRChat Staff in the VRChat Discord if you are having API problems, as they do not provide API support. We will make a best effort in keeping this documentation and associated language libraries up to date, but things might be outdated or missing. If you find that something is no longer valid, please contact us on Discord or [create an issue](https://github.com/vrchatapi/specification/issues) and tell us so we can fix it. # Getting Started The VRChat API can be used to programmatically retrieve or update information regarding your profile, friends, avatars, worlds and more. The API consists of two parts, \"Photon\" which is only used in-game, and the \"Web API\" which is used by both the game and the website. This documentation focuses only on the Web API. The API is designed around the REST ideology, providing semi-simple and usually predictable URIs to access and modify objects. Requests support standard HTTP methods like GET, PUT, POST, and DELETE and standard status codes. Response bodies are always UTF-8 encoded JSON objects, unless explicitly documented otherwise.
🛑 Warning! Do not touch Photon!
Photon is only used by the in-game client and should not be touched. Doing so may result in permanent account termination.
ℹ️ API Key and Authentication
The API Key has always been the same and is currently JlE5Jldo5Jibnk5O5hTx6XVqsJu4WJ26. Read Authentication for how to log in.
# Using the API For simply exploring what the API can do it is strongly recommended to download [Insomnia](https://insomnia.rest/download), a free and open-source API client that\'s great for sending requests to the API in an orderly fashion. Insomnia allows you to send data in the format that\'s required for VRChat\'s API. It is also possible to try out the API in your browser, by first logging in at [vrchat.com/home](https://vrchat.com/home/) and then going to [vrchat.com/api/1/auth/user](https://vrchat.com/api/1/auth/user), but the information will be much harder to work with. For more permanent operation such as software development it is instead recommended to use one of the existing language SDKs. This community project maintains API libraries in several languages, which allows you to interact with the API with simple function calls rather than having to implement the HTTP protocol yourself. Most of these libraries are automatically generated from the API specification, sometimes with additional helpful wrapper code to make usage easier. This allows them to be almost automatically updated and expanded upon as soon as a new feature is introduced in the specification itself. The libraries can be found on [GitHub](https://github.com/vrchatapi) or following: * [NodeJS (JavaScript)](https://www.npmjs.com/package/vrchat) * [Dart](https://pub.dev/packages/vrchat_dart) * [Rust](https://crates.io/crates/vrchatapi) * [C#](github.com/vrchatapi/vrchatapi-csharp) * [Python](https://github.com/vrchatapi/VRChatPython) # Pagination Most endpoints enforce pagination, meaning they will only return 10 entries by default, and never more than 100.
Using both the limit and offset parameters allows you to easily paginate through a large number of objects. | Query Parameter | Type | Description | | ----------|--|------- | | `limit` | integer | The number of objects to return. This value often defaults to 10. Highest limit is always 100.| | `offset` | integer | A zero-based offset from the default object sorting.| If a request returns fewer objects than the `limit` parameter, there are no more items available to return. # Contribution Do you want to get involved in the documentation effort? Do you want to help improve one of the language API libraries? This project is an [OPEN Open Source Project](https://openopensource.org)! This means that individuals making significant and valuable contributions are given commit-access to the project. It also means we are very open and welcoming of new people making contributions, unlike some more guarded open-source projects. [![Discord](https://img.shields.io/static/v1?label=vrchatapi&message=discord&color=blueviolet&style=for-the-badge)](https://discord.gg/qjZE9C9fkB) * - * The version of the OpenAPI document: 1.0.1 + * The version of the OpenAPI document: 1.0.2 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index c039165..aa009fa 100644 --- a/index.ts +++ b/index.ts @@ -4,7 +4,7 @@ * VRChat API Documentation * ![VRChat API Banner](https://vrchatapi.github.io/assets/img/api_banner_1500x400.png) # Welcome to the VRChat API Before we begin, we would like to state this is a **COMMUNITY DRIVEN PROJECT**. This means that everything you read on here was written by the community itself and is **not** officially supported by VRChat. The documentation is provided \"AS IS\", and any action you take towards VRChat is completely your own responsibility. The documentation and additional libraries SHALL ONLY be used for applications interacting with VRChat\'s API in accordance with their [Terms of Service](https://github.com/VRChatAPI), and MUST NOT be used for modifying the client, \"avatar ripping\", or other illegal activities. Malicious usage or spamming the API may result in account termination. Certain parts of the API are also more sensitive than others, for example moderation, so please read tread extra carefully and read the warnings when present. ![Tupper Policy on API](https://i.imgur.com/yLlW7Ok.png) Finally, use of the API using applications other than the approved methods (website, VRChat application, Unity SDK) is not officially supported. VRChat provides no guarantee or support for external applications using the API. Access to API endpoints may break **at any time, without notice**. Therefore, please **do not ping** VRChat Staff in the VRChat Discord if you are having API problems, as they do not provide API support. We will make a best effort in keeping this documentation and associated language libraries up to date, but things might be outdated or missing. If you find that something is no longer valid, please contact us on Discord or [create an issue](https://github.com/vrchatapi/specification/issues) and tell us so we can fix it. # Getting Started The VRChat API can be used to programmatically retrieve or update information regarding your profile, friends, avatars, worlds and more. The API consists of two parts, \"Photon\" which is only used in-game, and the \"Web API\" which is used by both the game and the website. This documentation focuses only on the Web API. The API is designed around the REST ideology, providing semi-simple and usually predictable URIs to access and modify objects. Requests support standard HTTP methods like GET, PUT, POST, and DELETE and standard status codes. Response bodies are always UTF-8 encoded JSON objects, unless explicitly documented otherwise.
🛑 Warning! Do not touch Photon!
Photon is only used by the in-game client and should not be touched. Doing so may result in permanent account termination.
ℹ️ API Key and Authentication
The API Key has always been the same and is currently JlE5Jldo5Jibnk5O5hTx6XVqsJu4WJ26. Read Authentication for how to log in.
# Using the API For simply exploring what the API can do it is strongly recommended to download [Insomnia](https://insomnia.rest/download), a free and open-source API client that\'s great for sending requests to the API in an orderly fashion. Insomnia allows you to send data in the format that\'s required for VRChat\'s API. It is also possible to try out the API in your browser, by first logging in at [vrchat.com/home](https://vrchat.com/home/) and then going to [vrchat.com/api/1/auth/user](https://vrchat.com/api/1/auth/user), but the information will be much harder to work with. For more permanent operation such as software development it is instead recommended to use one of the existing language SDKs. This community project maintains API libraries in several languages, which allows you to interact with the API with simple function calls rather than having to implement the HTTP protocol yourself. Most of these libraries are automatically generated from the API specification, sometimes with additional helpful wrapper code to make usage easier. This allows them to be almost automatically updated and expanded upon as soon as a new feature is introduced in the specification itself. The libraries can be found on [GitHub](https://github.com/vrchatapi) or following: * [NodeJS (JavaScript)](https://www.npmjs.com/package/vrchat) * [Dart](https://pub.dev/packages/vrchat_dart) * [Rust](https://crates.io/crates/vrchatapi) * [C#](github.com/vrchatapi/vrchatapi-csharp) * [Python](https://github.com/vrchatapi/VRChatPython) # Pagination Most endpoints enforce pagination, meaning they will only return 10 entries by default, and never more than 100.
Using both the limit and offset parameters allows you to easily paginate through a large number of objects. | Query Parameter | Type | Description | | ----------|--|------- | | `limit` | integer | The number of objects to return. This value often defaults to 10. Highest limit is always 100.| | `offset` | integer | A zero-based offset from the default object sorting.| If a request returns fewer objects than the `limit` parameter, there are no more items available to return. # Contribution Do you want to get involved in the documentation effort? Do you want to help improve one of the language API libraries? This project is an [OPEN Open Source Project](https://openopensource.org)! This means that individuals making significant and valuable contributions are given commit-access to the project. It also means we are very open and welcoming of new people making contributions, unlike some more guarded open-source projects. [![Discord](https://img.shields.io/static/v1?label=vrchatapi&message=discord&color=blueviolet&style=for-the-badge)](https://discord.gg/qjZE9C9fkB) * - * The version of the OpenAPI document: 1.0.1 + * The version of the OpenAPI document: 1.0.2 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index 81d3f75..9addae0 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.0.1", + "version": "1.0.2", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/package.json b/package.json index 3c6be95..df1d6ac 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.0.1", + "version": "1.0.2", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "keywords": [ From 45b6f3f36aaeb162f6b098e59d1a9a10fdcb8d1b Mon Sep 17 00:00:00 2001 From: Foorack Date: Tue, 31 Aug 2021 19:16:06 +0200 Subject: [PATCH 027/130] Update Node SDK to spec 1.1.2 --- .openapi-generator/VERSION | 2 +- api.ts | 249 ++++++++++++++++++++++++++++++++++--- base.ts | 4 +- common.ts | 6 +- configuration.ts | 4 +- git_push.sh | 3 +- index.ts | 4 +- package-lock.json | 2 +- package.json | 2 +- 9 files changed, 247 insertions(+), 29 deletions(-) diff --git a/.openapi-generator/VERSION b/.openapi-generator/VERSION index 7cbea07..4b448de 100644 --- a/.openapi-generator/VERSION +++ b/.openapi-generator/VERSION @@ -1 +1 @@ -5.2.0 \ No newline at end of file +5.3.0-SNAPSHOT \ No newline at end of file diff --git a/api.ts b/api.ts index 6f761d1..3c38b29 100644 --- a/api.ts +++ b/api.ts @@ -2,9 +2,9 @@ /* eslint-disable */ /** * VRChat API Documentation - * ![VRChat API Banner](https://vrchatapi.github.io/assets/img/api_banner_1500x400.png) # Welcome to the VRChat API Before we begin, we would like to state this is a **COMMUNITY DRIVEN PROJECT**. This means that everything you read on here was written by the community itself and is **not** officially supported by VRChat. The documentation is provided \"AS IS\", and any action you take towards VRChat is completely your own responsibility. The documentation and additional libraries SHALL ONLY be used for applications interacting with VRChat\'s API in accordance with their [Terms of Service](https://github.com/VRChatAPI), and MUST NOT be used for modifying the client, \"avatar ripping\", or other illegal activities. Malicious usage or spamming the API may result in account termination. Certain parts of the API are also more sensitive than others, for example moderation, so please read tread extra carefully and read the warnings when present. ![Tupper Policy on API](https://i.imgur.com/yLlW7Ok.png) Finally, use of the API using applications other than the approved methods (website, VRChat application, Unity SDK) is not officially supported. VRChat provides no guarantee or support for external applications using the API. Access to API endpoints may break **at any time, without notice**. Therefore, please **do not ping** VRChat Staff in the VRChat Discord if you are having API problems, as they do not provide API support. We will make a best effort in keeping this documentation and associated language libraries up to date, but things might be outdated or missing. If you find that something is no longer valid, please contact us on Discord or [create an issue](https://github.com/vrchatapi/specification/issues) and tell us so we can fix it. # Getting Started The VRChat API can be used to programmatically retrieve or update information regarding your profile, friends, avatars, worlds and more. The API consists of two parts, \"Photon\" which is only used in-game, and the \"Web API\" which is used by both the game and the website. This documentation focuses only on the Web API. The API is designed around the REST ideology, providing semi-simple and usually predictable URIs to access and modify objects. Requests support standard HTTP methods like GET, PUT, POST, and DELETE and standard status codes. Response bodies are always UTF-8 encoded JSON objects, unless explicitly documented otherwise.
🛑 Warning! Do not touch Photon!
Photon is only used by the in-game client and should not be touched. Doing so may result in permanent account termination.
ℹ️ API Key and Authentication
The API Key has always been the same and is currently JlE5Jldo5Jibnk5O5hTx6XVqsJu4WJ26. Read Authentication for how to log in.
# Using the API For simply exploring what the API can do it is strongly recommended to download [Insomnia](https://insomnia.rest/download), a free and open-source API client that\'s great for sending requests to the API in an orderly fashion. Insomnia allows you to send data in the format that\'s required for VRChat\'s API. It is also possible to try out the API in your browser, by first logging in at [vrchat.com/home](https://vrchat.com/home/) and then going to [vrchat.com/api/1/auth/user](https://vrchat.com/api/1/auth/user), but the information will be much harder to work with. For more permanent operation such as software development it is instead recommended to use one of the existing language SDKs. This community project maintains API libraries in several languages, which allows you to interact with the API with simple function calls rather than having to implement the HTTP protocol yourself. Most of these libraries are automatically generated from the API specification, sometimes with additional helpful wrapper code to make usage easier. This allows them to be almost automatically updated and expanded upon as soon as a new feature is introduced in the specification itself. The libraries can be found on [GitHub](https://github.com/vrchatapi) or following: * [NodeJS (JavaScript)](https://www.npmjs.com/package/vrchat) * [Dart](https://pub.dev/packages/vrchat_dart) * [Rust](https://crates.io/crates/vrchatapi) * [C#](github.com/vrchatapi/vrchatapi-csharp) * [Python](https://github.com/vrchatapi/VRChatPython) # Pagination Most endpoints enforce pagination, meaning they will only return 10 entries by default, and never more than 100.
Using both the limit and offset parameters allows you to easily paginate through a large number of objects. | Query Parameter | Type | Description | | ----------|--|------- | | `limit` | integer | The number of objects to return. This value often defaults to 10. Highest limit is always 100.| | `offset` | integer | A zero-based offset from the default object sorting.| If a request returns fewer objects than the `limit` parameter, there are no more items available to return. # Contribution Do you want to get involved in the documentation effort? Do you want to help improve one of the language API libraries? This project is an [OPEN Open Source Project](https://openopensource.org)! This means that individuals making significant and valuable contributions are given commit-access to the project. It also means we are very open and welcoming of new people making contributions, unlike some more guarded open-source projects. [![Discord](https://img.shields.io/static/v1?label=vrchatapi&message=discord&color=blueviolet&style=for-the-badge)](https://discord.gg/qjZE9C9fkB) + * ![VRChat API Banner](https://vrchatapi.github.io/assets/img/api_banner_1500x400.png) # Welcome to the VRChat API Before we begin, we would like to state this is a **COMMUNITY DRIVEN PROJECT**. This means that everything you read on here was written by the community itself and is **not** officially supported by VRChat. The documentation is provided \"AS IS\", and any action you take towards VRChat is completely your own responsibility. The documentation and additional libraries SHALL ONLY be used for applications interacting with VRChat\'s API in accordance with their [Terms of Service](https://github.com/VRChatAPI), and MUST NOT be used for modifying the client, \"avatar ripping\", or other illegal activities. Malicious usage or spamming the API may result in account termination. Certain parts of the API are also more sensitive than others, for example moderation, so please tread extra carefully and read the warnings when present. ![Tupper Policy on API](https://i.imgur.com/yLlW7Ok.png) Finally, use of the API using applications other than the approved methods (website, VRChat application, Unity SDK) is not officially supported. VRChat provides no guarantee or support for external applications using the API. Access to API endpoints may break **at any time, without notice**. Therefore, please **do not ping** VRChat Staff in the VRChat Discord if you are having API problems, as they do not provide API support. We will make a best effort in keeping this documentation and associated language libraries up to date, but things might be outdated or missing. If you find that something is no longer valid, please contact us on Discord or [create an issue](https://github.com/vrchatapi/specification/issues) and tell us so we can fix it. # Getting Started The VRChat API can be used to programmatically retrieve or update information regarding your profile, friends, avatars, worlds and more. The API consists of two parts, \"Photon\" which is only used in-game, and the \"Web API\" which is used by both the game and the website. This documentation focuses only on the Web API. The API is designed around the REST ideology, providing semi-simple and usually predictable URIs to access and modify objects. Requests support standard HTTP methods like GET, PUT, POST, and DELETE and standard status codes. Response bodies are always UTF-8 encoded JSON objects, unless explicitly documented otherwise.
🛑 Warning! Do not touch Photon!
Photon is only used by the in-game client and should not be touched. Doing so may result in permanent account termination.
ℹ️ API Key and Authentication
The API Key has always been the same and is currently JlE5Jldo5Jibnk5O5hTx6XVqsJu4WJ26. Read Authentication for how to log in.
# Using the API For simply exploring what the API can do it is strongly recommended to download [Insomnia](https://insomnia.rest/download), a free and open-source API client that\'s great for sending requests to the API in an orderly fashion. Insomnia allows you to send data in the format that\'s required for VRChat\'s API. It is also possible to try out the API in your browser, by first logging in at [vrchat.com/home](https://vrchat.com/home/) and then going to [vrchat.com/api/1/auth/user](https://vrchat.com/api/1/auth/user), but the information will be much harder to work with. For more permanent operation such as software development it is instead recommended to use one of the existing language SDKs. This community project maintains API libraries in several languages, which allows you to interact with the API with simple function calls rather than having to implement the HTTP protocol yourself. Most of these libraries are automatically generated from the API specification, sometimes with additional helpful wrapper code to make usage easier. This allows them to be almost automatically updated and expanded upon as soon as a new feature is introduced in the specification itself. The libraries can be found on [GitHub](https://github.com/vrchatapi) or following: * [NodeJS (JavaScript)](https://www.npmjs.com/package/vrchat) * [Dart](https://pub.dev/packages/vrchat_dart) * [Rust](https://crates.io/crates/vrchatapi) * [C#](https://github.com/vrchatapi/vrchatapi-csharp) * [Python](https://github.com/vrchatapi/VRChatPython) # Pagination Most endpoints enforce pagination, meaning they will only return 10 entries by default, and never more than 100.
Using both the limit and offset parameters allows you to easily paginate through a large number of objects. | Query Parameter | Type | Description | | ----------|--|------- | | `limit` | integer | The number of objects to return. This value often defaults to 10. Highest limit is always 100.| | `offset` | integer | A zero-based offset from the default object sorting.| If a request returns fewer objects than the `limit` parameter, there are no more items available to return. # Contribution Do you want to get involved in the documentation effort? Do you want to help improve one of the language API libraries? This project is an [OPEN Open Source Project](https://openopensource.org)! This means that individuals making significant and valuable contributions are given commit-access to the project. It also means we are very open and welcoming of new people making contributions, unlike some more guarded open-source projects. [![Discord](https://img.shields.io/static/v1?label=vrchatapi&message=discord&color=blueviolet&style=for-the-badge)](https://discord.gg/qjZE9C9fkB) * - * The version of the OpenAPI document: 1.0.2 + * The version of the OpenAPI document: 1.1.2 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -838,10 +838,10 @@ export interface CurrentUser { statusDescription: string; /** * - * @type {Array} + * @type {Array} * @memberof CurrentUser */ - pastDisplayNames: Array; + pastDisplayNames: Array; /** * * @type {boolean} @@ -2064,13 +2064,13 @@ export interface InlineResponse2007 { /** * * @export - * @interface InlineResponse401 + * @interface InlineResponse403 */ -export interface InlineResponse401 { +export interface InlineResponse403 { /** * * @type {Error} - * @memberof InlineResponse401 + * @memberof InlineResponse403 */ error: Error; } @@ -2633,6 +2633,56 @@ export enum NotificationType { Votetokick = 'votetokick' } +/** + * + * @export + * @interface PastDisplayName + */ +export interface PastDisplayName { + /** + * + * @type {string} + * @memberof PastDisplayName + */ + displayName: string; + /** + * + * @type {string} + * @memberof PastDisplayName + */ + updated_at: string; +} +/** + * + * @export + * @interface Permission + */ +export interface Permission { + /** + * + * @type {string} + * @memberof Permission + */ + id: string; + /** + * + * @type {string} + * @memberof Permission + */ + ownerId: string; + /** + * + * @type {string} + * @memberof Permission + */ + name: string; + /** + * + * @type {object} + * @memberof Permission + */ + data?: object; +} /** * * @export @@ -3279,7 +3329,7 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf }; }, /** - * Invalidates the auth cookie. + * Invalidates the login session. * @summary Logout * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -3297,8 +3347,6 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -3367,8 +3415,6 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -3450,7 +3496,7 @@ export const AuthenticationApiFp = function(configuration?: Configuration) { return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Invalidates the auth cookie. + * Invalidates the login session. * @summary Logout * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -3521,7 +3567,7 @@ export const AuthenticationApiFactory = function (configuration?: Configuration, return localVarFp.getCurrentUser(options).then((request) => request(axios, basePath)); }, /** - * Invalidates the auth cookie. + * Invalidates the login session. * @summary Logout * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -3592,7 +3638,7 @@ export class AuthenticationApi extends BaseAPI { } /** - * Invalidates the auth cookie. + * Invalidates the login session. * @summary Logout * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -6762,6 +6808,179 @@ export class NotificationsApi extends BaseAPI { } +/** + * PermissionsApi - axios parameter creator + * @export + */ +export const PermissionsApiAxiosParamCreator = function (configuration?: Configuration) { + return { + /** + * Returns a list of all permissions currently granted by the user. Permissions are assigned e.g. by subscribing to VRC+. + * @summary Get Assigned Permission + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getAssignedPermissions: async (options: any = {}): Promise => { + const localVarPath = `/auth/permissions`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Returns a single permission. This endpoint is pretty useless, as it returns the exact same information as `/auth/permissions`. + * @summary Get Permission + * @param {string} permissionId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getPermission: async (permissionId: string, options: any = {}): Promise => { + // verify required parameter 'permissionId' is not null or undefined + assertParamExists('getPermission', 'permissionId', permissionId) + const localVarPath = `/permissions/{permissionId}` + .replace(`{${"permissionId"}}`, encodeURIComponent(String(permissionId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + } +}; + +/** + * PermissionsApi - functional programming interface + * @export + */ +export const PermissionsApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = PermissionsApiAxiosParamCreator(configuration) + return { + /** + * Returns a list of all permissions currently granted by the user. Permissions are assigned e.g. by subscribing to VRC+. + * @summary Get Assigned Permission + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getAssignedPermissions(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getAssignedPermissions(options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Returns a single permission. This endpoint is pretty useless, as it returns the exact same information as `/auth/permissions`. + * @summary Get Permission + * @param {string} permissionId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getPermission(permissionId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getPermission(permissionId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + } +}; + +/** + * PermissionsApi - factory interface + * @export + */ +export const PermissionsApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = PermissionsApiFp(configuration) + return { + /** + * Returns a list of all permissions currently granted by the user. Permissions are assigned e.g. by subscribing to VRC+. + * @summary Get Assigned Permission + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getAssignedPermissions(options?: any): AxiosPromise> { + return localVarFp.getAssignedPermissions(options).then((request) => request(axios, basePath)); + }, + /** + * Returns a single permission. This endpoint is pretty useless, as it returns the exact same information as `/auth/permissions`. + * @summary Get Permission + * @param {string} permissionId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getPermission(permissionId: string, options?: any): AxiosPromise { + return localVarFp.getPermission(permissionId, options).then((request) => request(axios, basePath)); + }, + }; +}; + +/** + * PermissionsApi - object-oriented interface + * @export + * @class PermissionsApi + * @extends {BaseAPI} + */ +export class PermissionsApi extends BaseAPI { + /** + * Returns a list of all permissions currently granted by the user. Permissions are assigned e.g. by subscribing to VRC+. + * @summary Get Assigned Permission + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof PermissionsApi + */ + public getAssignedPermissions(options?: any) { + return PermissionsApiFp(this.configuration).getAssignedPermissions(options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Returns a single permission. This endpoint is pretty useless, as it returns the exact same information as `/auth/permissions`. + * @summary Get Permission + * @param {string} permissionId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof PermissionsApi + */ + public getPermission(permissionId: string, options?: any) { + return PermissionsApiFp(this.configuration).getPermission(permissionId, options).then((request) => request(this.axios, this.basePath)); + } +} + + /** * PlayermoderationApi - axios parameter creator * @export diff --git a/base.ts b/base.ts index 559b043..d0bb565 100644 --- a/base.ts +++ b/base.ts @@ -2,9 +2,9 @@ /* eslint-disable */ /** * VRChat API Documentation - * ![VRChat API Banner](https://vrchatapi.github.io/assets/img/api_banner_1500x400.png) # Welcome to the VRChat API Before we begin, we would like to state this is a **COMMUNITY DRIVEN PROJECT**. This means that everything you read on here was written by the community itself and is **not** officially supported by VRChat. The documentation is provided \"AS IS\", and any action you take towards VRChat is completely your own responsibility. The documentation and additional libraries SHALL ONLY be used for applications interacting with VRChat\'s API in accordance with their [Terms of Service](https://github.com/VRChatAPI), and MUST NOT be used for modifying the client, \"avatar ripping\", or other illegal activities. Malicious usage or spamming the API may result in account termination. Certain parts of the API are also more sensitive than others, for example moderation, so please read tread extra carefully and read the warnings when present. ![Tupper Policy on API](https://i.imgur.com/yLlW7Ok.png) Finally, use of the API using applications other than the approved methods (website, VRChat application, Unity SDK) is not officially supported. VRChat provides no guarantee or support for external applications using the API. Access to API endpoints may break **at any time, without notice**. Therefore, please **do not ping** VRChat Staff in the VRChat Discord if you are having API problems, as they do not provide API support. We will make a best effort in keeping this documentation and associated language libraries up to date, but things might be outdated or missing. If you find that something is no longer valid, please contact us on Discord or [create an issue](https://github.com/vrchatapi/specification/issues) and tell us so we can fix it. # Getting Started The VRChat API can be used to programmatically retrieve or update information regarding your profile, friends, avatars, worlds and more. The API consists of two parts, \"Photon\" which is only used in-game, and the \"Web API\" which is used by both the game and the website. This documentation focuses only on the Web API. The API is designed around the REST ideology, providing semi-simple and usually predictable URIs to access and modify objects. Requests support standard HTTP methods like GET, PUT, POST, and DELETE and standard status codes. Response bodies are always UTF-8 encoded JSON objects, unless explicitly documented otherwise.
🛑 Warning! Do not touch Photon!
Photon is only used by the in-game client and should not be touched. Doing so may result in permanent account termination.
ℹ️ API Key and Authentication
The API Key has always been the same and is currently JlE5Jldo5Jibnk5O5hTx6XVqsJu4WJ26. Read Authentication for how to log in.
# Using the API For simply exploring what the API can do it is strongly recommended to download [Insomnia](https://insomnia.rest/download), a free and open-source API client that\'s great for sending requests to the API in an orderly fashion. Insomnia allows you to send data in the format that\'s required for VRChat\'s API. It is also possible to try out the API in your browser, by first logging in at [vrchat.com/home](https://vrchat.com/home/) and then going to [vrchat.com/api/1/auth/user](https://vrchat.com/api/1/auth/user), but the information will be much harder to work with. For more permanent operation such as software development it is instead recommended to use one of the existing language SDKs. This community project maintains API libraries in several languages, which allows you to interact with the API with simple function calls rather than having to implement the HTTP protocol yourself. Most of these libraries are automatically generated from the API specification, sometimes with additional helpful wrapper code to make usage easier. This allows them to be almost automatically updated and expanded upon as soon as a new feature is introduced in the specification itself. The libraries can be found on [GitHub](https://github.com/vrchatapi) or following: * [NodeJS (JavaScript)](https://www.npmjs.com/package/vrchat) * [Dart](https://pub.dev/packages/vrchat_dart) * [Rust](https://crates.io/crates/vrchatapi) * [C#](github.com/vrchatapi/vrchatapi-csharp) * [Python](https://github.com/vrchatapi/VRChatPython) # Pagination Most endpoints enforce pagination, meaning they will only return 10 entries by default, and never more than 100.
Using both the limit and offset parameters allows you to easily paginate through a large number of objects. | Query Parameter | Type | Description | | ----------|--|------- | | `limit` | integer | The number of objects to return. This value often defaults to 10. Highest limit is always 100.| | `offset` | integer | A zero-based offset from the default object sorting.| If a request returns fewer objects than the `limit` parameter, there are no more items available to return. # Contribution Do you want to get involved in the documentation effort? Do you want to help improve one of the language API libraries? This project is an [OPEN Open Source Project](https://openopensource.org)! This means that individuals making significant and valuable contributions are given commit-access to the project. It also means we are very open and welcoming of new people making contributions, unlike some more guarded open-source projects. [![Discord](https://img.shields.io/static/v1?label=vrchatapi&message=discord&color=blueviolet&style=for-the-badge)](https://discord.gg/qjZE9C9fkB) + * ![VRChat API Banner](https://vrchatapi.github.io/assets/img/api_banner_1500x400.png) # Welcome to the VRChat API Before we begin, we would like to state this is a **COMMUNITY DRIVEN PROJECT**. This means that everything you read on here was written by the community itself and is **not** officially supported by VRChat. The documentation is provided \"AS IS\", and any action you take towards VRChat is completely your own responsibility. The documentation and additional libraries SHALL ONLY be used for applications interacting with VRChat\'s API in accordance with their [Terms of Service](https://github.com/VRChatAPI), and MUST NOT be used for modifying the client, \"avatar ripping\", or other illegal activities. Malicious usage or spamming the API may result in account termination. Certain parts of the API are also more sensitive than others, for example moderation, so please tread extra carefully and read the warnings when present. ![Tupper Policy on API](https://i.imgur.com/yLlW7Ok.png) Finally, use of the API using applications other than the approved methods (website, VRChat application, Unity SDK) is not officially supported. VRChat provides no guarantee or support for external applications using the API. Access to API endpoints may break **at any time, without notice**. Therefore, please **do not ping** VRChat Staff in the VRChat Discord if you are having API problems, as they do not provide API support. We will make a best effort in keeping this documentation and associated language libraries up to date, but things might be outdated or missing. If you find that something is no longer valid, please contact us on Discord or [create an issue](https://github.com/vrchatapi/specification/issues) and tell us so we can fix it. # Getting Started The VRChat API can be used to programmatically retrieve or update information regarding your profile, friends, avatars, worlds and more. The API consists of two parts, \"Photon\" which is only used in-game, and the \"Web API\" which is used by both the game and the website. This documentation focuses only on the Web API. The API is designed around the REST ideology, providing semi-simple and usually predictable URIs to access and modify objects. Requests support standard HTTP methods like GET, PUT, POST, and DELETE and standard status codes. Response bodies are always UTF-8 encoded JSON objects, unless explicitly documented otherwise.
🛑 Warning! Do not touch Photon!
Photon is only used by the in-game client and should not be touched. Doing so may result in permanent account termination.
ℹ️ API Key and Authentication
The API Key has always been the same and is currently JlE5Jldo5Jibnk5O5hTx6XVqsJu4WJ26. Read Authentication for how to log in.
# Using the API For simply exploring what the API can do it is strongly recommended to download [Insomnia](https://insomnia.rest/download), a free and open-source API client that\'s great for sending requests to the API in an orderly fashion. Insomnia allows you to send data in the format that\'s required for VRChat\'s API. It is also possible to try out the API in your browser, by first logging in at [vrchat.com/home](https://vrchat.com/home/) and then going to [vrchat.com/api/1/auth/user](https://vrchat.com/api/1/auth/user), but the information will be much harder to work with. For more permanent operation such as software development it is instead recommended to use one of the existing language SDKs. This community project maintains API libraries in several languages, which allows you to interact with the API with simple function calls rather than having to implement the HTTP protocol yourself. Most of these libraries are automatically generated from the API specification, sometimes with additional helpful wrapper code to make usage easier. This allows them to be almost automatically updated and expanded upon as soon as a new feature is introduced in the specification itself. The libraries can be found on [GitHub](https://github.com/vrchatapi) or following: * [NodeJS (JavaScript)](https://www.npmjs.com/package/vrchat) * [Dart](https://pub.dev/packages/vrchat_dart) * [Rust](https://crates.io/crates/vrchatapi) * [C#](https://github.com/vrchatapi/vrchatapi-csharp) * [Python](https://github.com/vrchatapi/VRChatPython) # Pagination Most endpoints enforce pagination, meaning they will only return 10 entries by default, and never more than 100.
Using both the limit and offset parameters allows you to easily paginate through a large number of objects. | Query Parameter | Type | Description | | ----------|--|------- | | `limit` | integer | The number of objects to return. This value often defaults to 10. Highest limit is always 100.| | `offset` | integer | A zero-based offset from the default object sorting.| If a request returns fewer objects than the `limit` parameter, there are no more items available to return. # Contribution Do you want to get involved in the documentation effort? Do you want to help improve one of the language API libraries? This project is an [OPEN Open Source Project](https://openopensource.org)! This means that individuals making significant and valuable contributions are given commit-access to the project. It also means we are very open and welcoming of new people making contributions, unlike some more guarded open-source projects. [![Discord](https://img.shields.io/static/v1?label=vrchatapi&message=discord&color=blueviolet&style=for-the-badge)](https://discord.gg/qjZE9C9fkB) * - * The version of the OpenAPI document: 1.0.2 + * The version of the OpenAPI document: 1.1.2 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index 4d3c92d..2cfdb5d 100644 --- a/common.ts +++ b/common.ts @@ -2,9 +2,9 @@ /* eslint-disable */ /** * VRChat API Documentation - * ![VRChat API Banner](https://vrchatapi.github.io/assets/img/api_banner_1500x400.png) # Welcome to the VRChat API Before we begin, we would like to state this is a **COMMUNITY DRIVEN PROJECT**. This means that everything you read on here was written by the community itself and is **not** officially supported by VRChat. The documentation is provided \"AS IS\", and any action you take towards VRChat is completely your own responsibility. The documentation and additional libraries SHALL ONLY be used for applications interacting with VRChat\'s API in accordance with their [Terms of Service](https://github.com/VRChatAPI), and MUST NOT be used for modifying the client, \"avatar ripping\", or other illegal activities. Malicious usage or spamming the API may result in account termination. Certain parts of the API are also more sensitive than others, for example moderation, so please read tread extra carefully and read the warnings when present. ![Tupper Policy on API](https://i.imgur.com/yLlW7Ok.png) Finally, use of the API using applications other than the approved methods (website, VRChat application, Unity SDK) is not officially supported. VRChat provides no guarantee or support for external applications using the API. Access to API endpoints may break **at any time, without notice**. Therefore, please **do not ping** VRChat Staff in the VRChat Discord if you are having API problems, as they do not provide API support. We will make a best effort in keeping this documentation and associated language libraries up to date, but things might be outdated or missing. If you find that something is no longer valid, please contact us on Discord or [create an issue](https://github.com/vrchatapi/specification/issues) and tell us so we can fix it. # Getting Started The VRChat API can be used to programmatically retrieve or update information regarding your profile, friends, avatars, worlds and more. The API consists of two parts, \"Photon\" which is only used in-game, and the \"Web API\" which is used by both the game and the website. This documentation focuses only on the Web API. The API is designed around the REST ideology, providing semi-simple and usually predictable URIs to access and modify objects. Requests support standard HTTP methods like GET, PUT, POST, and DELETE and standard status codes. Response bodies are always UTF-8 encoded JSON objects, unless explicitly documented otherwise.
🛑 Warning! Do not touch Photon!
Photon is only used by the in-game client and should not be touched. Doing so may result in permanent account termination.
ℹ️ API Key and Authentication
The API Key has always been the same and is currently JlE5Jldo5Jibnk5O5hTx6XVqsJu4WJ26. Read Authentication for how to log in.
# Using the API For simply exploring what the API can do it is strongly recommended to download [Insomnia](https://insomnia.rest/download), a free and open-source API client that\'s great for sending requests to the API in an orderly fashion. Insomnia allows you to send data in the format that\'s required for VRChat\'s API. It is also possible to try out the API in your browser, by first logging in at [vrchat.com/home](https://vrchat.com/home/) and then going to [vrchat.com/api/1/auth/user](https://vrchat.com/api/1/auth/user), but the information will be much harder to work with. For more permanent operation such as software development it is instead recommended to use one of the existing language SDKs. This community project maintains API libraries in several languages, which allows you to interact with the API with simple function calls rather than having to implement the HTTP protocol yourself. Most of these libraries are automatically generated from the API specification, sometimes with additional helpful wrapper code to make usage easier. This allows them to be almost automatically updated and expanded upon as soon as a new feature is introduced in the specification itself. The libraries can be found on [GitHub](https://github.com/vrchatapi) or following: * [NodeJS (JavaScript)](https://www.npmjs.com/package/vrchat) * [Dart](https://pub.dev/packages/vrchat_dart) * [Rust](https://crates.io/crates/vrchatapi) * [C#](github.com/vrchatapi/vrchatapi-csharp) * [Python](https://github.com/vrchatapi/VRChatPython) # Pagination Most endpoints enforce pagination, meaning they will only return 10 entries by default, and never more than 100.
Using both the limit and offset parameters allows you to easily paginate through a large number of objects. | Query Parameter | Type | Description | | ----------|--|------- | | `limit` | integer | The number of objects to return. This value often defaults to 10. Highest limit is always 100.| | `offset` | integer | A zero-based offset from the default object sorting.| If a request returns fewer objects than the `limit` parameter, there are no more items available to return. # Contribution Do you want to get involved in the documentation effort? Do you want to help improve one of the language API libraries? This project is an [OPEN Open Source Project](https://openopensource.org)! This means that individuals making significant and valuable contributions are given commit-access to the project. It also means we are very open and welcoming of new people making contributions, unlike some more guarded open-source projects. [![Discord](https://img.shields.io/static/v1?label=vrchatapi&message=discord&color=blueviolet&style=for-the-badge)](https://discord.gg/qjZE9C9fkB) + * ![VRChat API Banner](https://vrchatapi.github.io/assets/img/api_banner_1500x400.png) # Welcome to the VRChat API Before we begin, we would like to state this is a **COMMUNITY DRIVEN PROJECT**. This means that everything you read on here was written by the community itself and is **not** officially supported by VRChat. The documentation is provided \"AS IS\", and any action you take towards VRChat is completely your own responsibility. The documentation and additional libraries SHALL ONLY be used for applications interacting with VRChat\'s API in accordance with their [Terms of Service](https://github.com/VRChatAPI), and MUST NOT be used for modifying the client, \"avatar ripping\", or other illegal activities. Malicious usage or spamming the API may result in account termination. Certain parts of the API are also more sensitive than others, for example moderation, so please tread extra carefully and read the warnings when present. ![Tupper Policy on API](https://i.imgur.com/yLlW7Ok.png) Finally, use of the API using applications other than the approved methods (website, VRChat application, Unity SDK) is not officially supported. VRChat provides no guarantee or support for external applications using the API. Access to API endpoints may break **at any time, without notice**. Therefore, please **do not ping** VRChat Staff in the VRChat Discord if you are having API problems, as they do not provide API support. We will make a best effort in keeping this documentation and associated language libraries up to date, but things might be outdated or missing. If you find that something is no longer valid, please contact us on Discord or [create an issue](https://github.com/vrchatapi/specification/issues) and tell us so we can fix it. # Getting Started The VRChat API can be used to programmatically retrieve or update information regarding your profile, friends, avatars, worlds and more. The API consists of two parts, \"Photon\" which is only used in-game, and the \"Web API\" which is used by both the game and the website. This documentation focuses only on the Web API. The API is designed around the REST ideology, providing semi-simple and usually predictable URIs to access and modify objects. Requests support standard HTTP methods like GET, PUT, POST, and DELETE and standard status codes. Response bodies are always UTF-8 encoded JSON objects, unless explicitly documented otherwise.
🛑 Warning! Do not touch Photon!
Photon is only used by the in-game client and should not be touched. Doing so may result in permanent account termination.
ℹ️ API Key and Authentication
The API Key has always been the same and is currently JlE5Jldo5Jibnk5O5hTx6XVqsJu4WJ26. Read Authentication for how to log in.
# Using the API For simply exploring what the API can do it is strongly recommended to download [Insomnia](https://insomnia.rest/download), a free and open-source API client that\'s great for sending requests to the API in an orderly fashion. Insomnia allows you to send data in the format that\'s required for VRChat\'s API. It is also possible to try out the API in your browser, by first logging in at [vrchat.com/home](https://vrchat.com/home/) and then going to [vrchat.com/api/1/auth/user](https://vrchat.com/api/1/auth/user), but the information will be much harder to work with. For more permanent operation such as software development it is instead recommended to use one of the existing language SDKs. This community project maintains API libraries in several languages, which allows you to interact with the API with simple function calls rather than having to implement the HTTP protocol yourself. Most of these libraries are automatically generated from the API specification, sometimes with additional helpful wrapper code to make usage easier. This allows them to be almost automatically updated and expanded upon as soon as a new feature is introduced in the specification itself. The libraries can be found on [GitHub](https://github.com/vrchatapi) or following: * [NodeJS (JavaScript)](https://www.npmjs.com/package/vrchat) * [Dart](https://pub.dev/packages/vrchat_dart) * [Rust](https://crates.io/crates/vrchatapi) * [C#](https://github.com/vrchatapi/vrchatapi-csharp) * [Python](https://github.com/vrchatapi/VRChatPython) # Pagination Most endpoints enforce pagination, meaning they will only return 10 entries by default, and never more than 100.
Using both the limit and offset parameters allows you to easily paginate through a large number of objects. | Query Parameter | Type | Description | | ----------|--|------- | | `limit` | integer | The number of objects to return. This value often defaults to 10. Highest limit is always 100.| | `offset` | integer | A zero-based offset from the default object sorting.| If a request returns fewer objects than the `limit` parameter, there are no more items available to return. # Contribution Do you want to get involved in the documentation effort? Do you want to help improve one of the language API libraries? This project is an [OPEN Open Source Project](https://openopensource.org)! This means that individuals making significant and valuable contributions are given commit-access to the project. It also means we are very open and welcoming of new people making contributions, unlike some more guarded open-source projects. [![Discord](https://img.shields.io/static/v1?label=vrchatapi&message=discord&color=blueviolet&style=for-the-badge)](https://discord.gg/qjZE9C9fkB) * - * The version of the OpenAPI document: 1.0.2 + * The version of the OpenAPI document: 1.1.2 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -14,7 +14,7 @@ import { Configuration } from "./configuration"; -import { RequiredError, RequestArgs } from "./base"; +import { RequiredError, RequestArgs } from "./base"; import { AxiosInstance } from 'axios'; /** diff --git a/configuration.ts b/configuration.ts index c7a00a8..9ba199b 100644 --- a/configuration.ts +++ b/configuration.ts @@ -2,9 +2,9 @@ /* eslint-disable */ /** * VRChat API Documentation - * ![VRChat API Banner](https://vrchatapi.github.io/assets/img/api_banner_1500x400.png) # Welcome to the VRChat API Before we begin, we would like to state this is a **COMMUNITY DRIVEN PROJECT**. This means that everything you read on here was written by the community itself and is **not** officially supported by VRChat. The documentation is provided \"AS IS\", and any action you take towards VRChat is completely your own responsibility. The documentation and additional libraries SHALL ONLY be used for applications interacting with VRChat\'s API in accordance with their [Terms of Service](https://github.com/VRChatAPI), and MUST NOT be used for modifying the client, \"avatar ripping\", or other illegal activities. Malicious usage or spamming the API may result in account termination. Certain parts of the API are also more sensitive than others, for example moderation, so please read tread extra carefully and read the warnings when present. ![Tupper Policy on API](https://i.imgur.com/yLlW7Ok.png) Finally, use of the API using applications other than the approved methods (website, VRChat application, Unity SDK) is not officially supported. VRChat provides no guarantee or support for external applications using the API. Access to API endpoints may break **at any time, without notice**. Therefore, please **do not ping** VRChat Staff in the VRChat Discord if you are having API problems, as they do not provide API support. We will make a best effort in keeping this documentation and associated language libraries up to date, but things might be outdated or missing. If you find that something is no longer valid, please contact us on Discord or [create an issue](https://github.com/vrchatapi/specification/issues) and tell us so we can fix it. # Getting Started The VRChat API can be used to programmatically retrieve or update information regarding your profile, friends, avatars, worlds and more. The API consists of two parts, \"Photon\" which is only used in-game, and the \"Web API\" which is used by both the game and the website. This documentation focuses only on the Web API. The API is designed around the REST ideology, providing semi-simple and usually predictable URIs to access and modify objects. Requests support standard HTTP methods like GET, PUT, POST, and DELETE and standard status codes. Response bodies are always UTF-8 encoded JSON objects, unless explicitly documented otherwise.
🛑 Warning! Do not touch Photon!
Photon is only used by the in-game client and should not be touched. Doing so may result in permanent account termination.
ℹ️ API Key and Authentication
The API Key has always been the same and is currently JlE5Jldo5Jibnk5O5hTx6XVqsJu4WJ26. Read Authentication for how to log in.
# Using the API For simply exploring what the API can do it is strongly recommended to download [Insomnia](https://insomnia.rest/download), a free and open-source API client that\'s great for sending requests to the API in an orderly fashion. Insomnia allows you to send data in the format that\'s required for VRChat\'s API. It is also possible to try out the API in your browser, by first logging in at [vrchat.com/home](https://vrchat.com/home/) and then going to [vrchat.com/api/1/auth/user](https://vrchat.com/api/1/auth/user), but the information will be much harder to work with. For more permanent operation such as software development it is instead recommended to use one of the existing language SDKs. This community project maintains API libraries in several languages, which allows you to interact with the API with simple function calls rather than having to implement the HTTP protocol yourself. Most of these libraries are automatically generated from the API specification, sometimes with additional helpful wrapper code to make usage easier. This allows them to be almost automatically updated and expanded upon as soon as a new feature is introduced in the specification itself. The libraries can be found on [GitHub](https://github.com/vrchatapi) or following: * [NodeJS (JavaScript)](https://www.npmjs.com/package/vrchat) * [Dart](https://pub.dev/packages/vrchat_dart) * [Rust](https://crates.io/crates/vrchatapi) * [C#](github.com/vrchatapi/vrchatapi-csharp) * [Python](https://github.com/vrchatapi/VRChatPython) # Pagination Most endpoints enforce pagination, meaning they will only return 10 entries by default, and never more than 100.
Using both the limit and offset parameters allows you to easily paginate through a large number of objects. | Query Parameter | Type | Description | | ----------|--|------- | | `limit` | integer | The number of objects to return. This value often defaults to 10. Highest limit is always 100.| | `offset` | integer | A zero-based offset from the default object sorting.| If a request returns fewer objects than the `limit` parameter, there are no more items available to return. # Contribution Do you want to get involved in the documentation effort? Do you want to help improve one of the language API libraries? This project is an [OPEN Open Source Project](https://openopensource.org)! This means that individuals making significant and valuable contributions are given commit-access to the project. It also means we are very open and welcoming of new people making contributions, unlike some more guarded open-source projects. [![Discord](https://img.shields.io/static/v1?label=vrchatapi&message=discord&color=blueviolet&style=for-the-badge)](https://discord.gg/qjZE9C9fkB) + * ![VRChat API Banner](https://vrchatapi.github.io/assets/img/api_banner_1500x400.png) # Welcome to the VRChat API Before we begin, we would like to state this is a **COMMUNITY DRIVEN PROJECT**. This means that everything you read on here was written by the community itself and is **not** officially supported by VRChat. The documentation is provided \"AS IS\", and any action you take towards VRChat is completely your own responsibility. The documentation and additional libraries SHALL ONLY be used for applications interacting with VRChat\'s API in accordance with their [Terms of Service](https://github.com/VRChatAPI), and MUST NOT be used for modifying the client, \"avatar ripping\", or other illegal activities. Malicious usage or spamming the API may result in account termination. Certain parts of the API are also more sensitive than others, for example moderation, so please tread extra carefully and read the warnings when present. ![Tupper Policy on API](https://i.imgur.com/yLlW7Ok.png) Finally, use of the API using applications other than the approved methods (website, VRChat application, Unity SDK) is not officially supported. VRChat provides no guarantee or support for external applications using the API. Access to API endpoints may break **at any time, without notice**. Therefore, please **do not ping** VRChat Staff in the VRChat Discord if you are having API problems, as they do not provide API support. We will make a best effort in keeping this documentation and associated language libraries up to date, but things might be outdated or missing. If you find that something is no longer valid, please contact us on Discord or [create an issue](https://github.com/vrchatapi/specification/issues) and tell us so we can fix it. # Getting Started The VRChat API can be used to programmatically retrieve or update information regarding your profile, friends, avatars, worlds and more. The API consists of two parts, \"Photon\" which is only used in-game, and the \"Web API\" which is used by both the game and the website. This documentation focuses only on the Web API. The API is designed around the REST ideology, providing semi-simple and usually predictable URIs to access and modify objects. Requests support standard HTTP methods like GET, PUT, POST, and DELETE and standard status codes. Response bodies are always UTF-8 encoded JSON objects, unless explicitly documented otherwise.
🛑 Warning! Do not touch Photon!
Photon is only used by the in-game client and should not be touched. Doing so may result in permanent account termination.
ℹ️ API Key and Authentication
The API Key has always been the same and is currently JlE5Jldo5Jibnk5O5hTx6XVqsJu4WJ26. Read Authentication for how to log in.
# Using the API For simply exploring what the API can do it is strongly recommended to download [Insomnia](https://insomnia.rest/download), a free and open-source API client that\'s great for sending requests to the API in an orderly fashion. Insomnia allows you to send data in the format that\'s required for VRChat\'s API. It is also possible to try out the API in your browser, by first logging in at [vrchat.com/home](https://vrchat.com/home/) and then going to [vrchat.com/api/1/auth/user](https://vrchat.com/api/1/auth/user), but the information will be much harder to work with. For more permanent operation such as software development it is instead recommended to use one of the existing language SDKs. This community project maintains API libraries in several languages, which allows you to interact with the API with simple function calls rather than having to implement the HTTP protocol yourself. Most of these libraries are automatically generated from the API specification, sometimes with additional helpful wrapper code to make usage easier. This allows them to be almost automatically updated and expanded upon as soon as a new feature is introduced in the specification itself. The libraries can be found on [GitHub](https://github.com/vrchatapi) or following: * [NodeJS (JavaScript)](https://www.npmjs.com/package/vrchat) * [Dart](https://pub.dev/packages/vrchat_dart) * [Rust](https://crates.io/crates/vrchatapi) * [C#](https://github.com/vrchatapi/vrchatapi-csharp) * [Python](https://github.com/vrchatapi/VRChatPython) # Pagination Most endpoints enforce pagination, meaning they will only return 10 entries by default, and never more than 100.
Using both the limit and offset parameters allows you to easily paginate through a large number of objects. | Query Parameter | Type | Description | | ----------|--|------- | | `limit` | integer | The number of objects to return. This value often defaults to 10. Highest limit is always 100.| | `offset` | integer | A zero-based offset from the default object sorting.| If a request returns fewer objects than the `limit` parameter, there are no more items available to return. # Contribution Do you want to get involved in the documentation effort? Do you want to help improve one of the language API libraries? This project is an [OPEN Open Source Project](https://openopensource.org)! This means that individuals making significant and valuable contributions are given commit-access to the project. It also means we are very open and welcoming of new people making contributions, unlike some more guarded open-source projects. [![Discord](https://img.shields.io/static/v1?label=vrchatapi&message=discord&color=blueviolet&style=for-the-badge)](https://discord.gg/qjZE9C9fkB) * - * The version of the OpenAPI document: 1.0.2 + * The version of the OpenAPI document: 1.1.2 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/git_push.sh b/git_push.sh index 814e51d..8f084d8 100644 --- a/git_push.sh +++ b/git_push.sh @@ -1,7 +1,7 @@ #!/bin/sh # ref: https://help.github.com/articles/adding-an-existing-project-to-github-using-the-command-line/ # -# Usage example: /bin/sh ./git_push.sh wing328 openapi-pestore-perl "minor update" "gitlab.com" +# Usage example: /bin/sh ./git_push.sh wing328 openapi-petstore-perl "minor update" "gitlab.com" git_user_id=$1 git_repo_id=$2 @@ -55,4 +55,3 @@ git pull origin master # Pushes (Forces) the changes in the local repository up to the remote repository echo "Git pushing to https://${git_host}/${git_user_id}/${git_repo_id}.git" git push origin master 2>&1 | grep -v 'To https' - diff --git a/index.ts b/index.ts index aa009fa..35fa22e 100644 --- a/index.ts +++ b/index.ts @@ -2,9 +2,9 @@ /* eslint-disable */ /** * VRChat API Documentation - * ![VRChat API Banner](https://vrchatapi.github.io/assets/img/api_banner_1500x400.png) # Welcome to the VRChat API Before we begin, we would like to state this is a **COMMUNITY DRIVEN PROJECT**. This means that everything you read on here was written by the community itself and is **not** officially supported by VRChat. The documentation is provided \"AS IS\", and any action you take towards VRChat is completely your own responsibility. The documentation and additional libraries SHALL ONLY be used for applications interacting with VRChat\'s API in accordance with their [Terms of Service](https://github.com/VRChatAPI), and MUST NOT be used for modifying the client, \"avatar ripping\", or other illegal activities. Malicious usage or spamming the API may result in account termination. Certain parts of the API are also more sensitive than others, for example moderation, so please read tread extra carefully and read the warnings when present. ![Tupper Policy on API](https://i.imgur.com/yLlW7Ok.png) Finally, use of the API using applications other than the approved methods (website, VRChat application, Unity SDK) is not officially supported. VRChat provides no guarantee or support for external applications using the API. Access to API endpoints may break **at any time, without notice**. Therefore, please **do not ping** VRChat Staff in the VRChat Discord if you are having API problems, as they do not provide API support. We will make a best effort in keeping this documentation and associated language libraries up to date, but things might be outdated or missing. If you find that something is no longer valid, please contact us on Discord or [create an issue](https://github.com/vrchatapi/specification/issues) and tell us so we can fix it. # Getting Started The VRChat API can be used to programmatically retrieve or update information regarding your profile, friends, avatars, worlds and more. The API consists of two parts, \"Photon\" which is only used in-game, and the \"Web API\" which is used by both the game and the website. This documentation focuses only on the Web API. The API is designed around the REST ideology, providing semi-simple and usually predictable URIs to access and modify objects. Requests support standard HTTP methods like GET, PUT, POST, and DELETE and standard status codes. Response bodies are always UTF-8 encoded JSON objects, unless explicitly documented otherwise.
🛑 Warning! Do not touch Photon!
Photon is only used by the in-game client and should not be touched. Doing so may result in permanent account termination.
ℹ️ API Key and Authentication
The API Key has always been the same and is currently JlE5Jldo5Jibnk5O5hTx6XVqsJu4WJ26. Read Authentication for how to log in.
# Using the API For simply exploring what the API can do it is strongly recommended to download [Insomnia](https://insomnia.rest/download), a free and open-source API client that\'s great for sending requests to the API in an orderly fashion. Insomnia allows you to send data in the format that\'s required for VRChat\'s API. It is also possible to try out the API in your browser, by first logging in at [vrchat.com/home](https://vrchat.com/home/) and then going to [vrchat.com/api/1/auth/user](https://vrchat.com/api/1/auth/user), but the information will be much harder to work with. For more permanent operation such as software development it is instead recommended to use one of the existing language SDKs. This community project maintains API libraries in several languages, which allows you to interact with the API with simple function calls rather than having to implement the HTTP protocol yourself. Most of these libraries are automatically generated from the API specification, sometimes with additional helpful wrapper code to make usage easier. This allows them to be almost automatically updated and expanded upon as soon as a new feature is introduced in the specification itself. The libraries can be found on [GitHub](https://github.com/vrchatapi) or following: * [NodeJS (JavaScript)](https://www.npmjs.com/package/vrchat) * [Dart](https://pub.dev/packages/vrchat_dart) * [Rust](https://crates.io/crates/vrchatapi) * [C#](github.com/vrchatapi/vrchatapi-csharp) * [Python](https://github.com/vrchatapi/VRChatPython) # Pagination Most endpoints enforce pagination, meaning they will only return 10 entries by default, and never more than 100.
Using both the limit and offset parameters allows you to easily paginate through a large number of objects. | Query Parameter | Type | Description | | ----------|--|------- | | `limit` | integer | The number of objects to return. This value often defaults to 10. Highest limit is always 100.| | `offset` | integer | A zero-based offset from the default object sorting.| If a request returns fewer objects than the `limit` parameter, there are no more items available to return. # Contribution Do you want to get involved in the documentation effort? Do you want to help improve one of the language API libraries? This project is an [OPEN Open Source Project](https://openopensource.org)! This means that individuals making significant and valuable contributions are given commit-access to the project. It also means we are very open and welcoming of new people making contributions, unlike some more guarded open-source projects. [![Discord](https://img.shields.io/static/v1?label=vrchatapi&message=discord&color=blueviolet&style=for-the-badge)](https://discord.gg/qjZE9C9fkB) + * ![VRChat API Banner](https://vrchatapi.github.io/assets/img/api_banner_1500x400.png) # Welcome to the VRChat API Before we begin, we would like to state this is a **COMMUNITY DRIVEN PROJECT**. This means that everything you read on here was written by the community itself and is **not** officially supported by VRChat. The documentation is provided \"AS IS\", and any action you take towards VRChat is completely your own responsibility. The documentation and additional libraries SHALL ONLY be used for applications interacting with VRChat\'s API in accordance with their [Terms of Service](https://github.com/VRChatAPI), and MUST NOT be used for modifying the client, \"avatar ripping\", or other illegal activities. Malicious usage or spamming the API may result in account termination. Certain parts of the API are also more sensitive than others, for example moderation, so please tread extra carefully and read the warnings when present. ![Tupper Policy on API](https://i.imgur.com/yLlW7Ok.png) Finally, use of the API using applications other than the approved methods (website, VRChat application, Unity SDK) is not officially supported. VRChat provides no guarantee or support for external applications using the API. Access to API endpoints may break **at any time, without notice**. Therefore, please **do not ping** VRChat Staff in the VRChat Discord if you are having API problems, as they do not provide API support. We will make a best effort in keeping this documentation and associated language libraries up to date, but things might be outdated or missing. If you find that something is no longer valid, please contact us on Discord or [create an issue](https://github.com/vrchatapi/specification/issues) and tell us so we can fix it. # Getting Started The VRChat API can be used to programmatically retrieve or update information regarding your profile, friends, avatars, worlds and more. The API consists of two parts, \"Photon\" which is only used in-game, and the \"Web API\" which is used by both the game and the website. This documentation focuses only on the Web API. The API is designed around the REST ideology, providing semi-simple and usually predictable URIs to access and modify objects. Requests support standard HTTP methods like GET, PUT, POST, and DELETE and standard status codes. Response bodies are always UTF-8 encoded JSON objects, unless explicitly documented otherwise.
🛑 Warning! Do not touch Photon!
Photon is only used by the in-game client and should not be touched. Doing so may result in permanent account termination.
ℹ️ API Key and Authentication
The API Key has always been the same and is currently JlE5Jldo5Jibnk5O5hTx6XVqsJu4WJ26. Read Authentication for how to log in.
# Using the API For simply exploring what the API can do it is strongly recommended to download [Insomnia](https://insomnia.rest/download), a free and open-source API client that\'s great for sending requests to the API in an orderly fashion. Insomnia allows you to send data in the format that\'s required for VRChat\'s API. It is also possible to try out the API in your browser, by first logging in at [vrchat.com/home](https://vrchat.com/home/) and then going to [vrchat.com/api/1/auth/user](https://vrchat.com/api/1/auth/user), but the information will be much harder to work with. For more permanent operation such as software development it is instead recommended to use one of the existing language SDKs. This community project maintains API libraries in several languages, which allows you to interact with the API with simple function calls rather than having to implement the HTTP protocol yourself. Most of these libraries are automatically generated from the API specification, sometimes with additional helpful wrapper code to make usage easier. This allows them to be almost automatically updated and expanded upon as soon as a new feature is introduced in the specification itself. The libraries can be found on [GitHub](https://github.com/vrchatapi) or following: * [NodeJS (JavaScript)](https://www.npmjs.com/package/vrchat) * [Dart](https://pub.dev/packages/vrchat_dart) * [Rust](https://crates.io/crates/vrchatapi) * [C#](https://github.com/vrchatapi/vrchatapi-csharp) * [Python](https://github.com/vrchatapi/VRChatPython) # Pagination Most endpoints enforce pagination, meaning they will only return 10 entries by default, and never more than 100.
Using both the limit and offset parameters allows you to easily paginate through a large number of objects. | Query Parameter | Type | Description | | ----------|--|------- | | `limit` | integer | The number of objects to return. This value often defaults to 10. Highest limit is always 100.| | `offset` | integer | A zero-based offset from the default object sorting.| If a request returns fewer objects than the `limit` parameter, there are no more items available to return. # Contribution Do you want to get involved in the documentation effort? Do you want to help improve one of the language API libraries? This project is an [OPEN Open Source Project](https://openopensource.org)! This means that individuals making significant and valuable contributions are given commit-access to the project. It also means we are very open and welcoming of new people making contributions, unlike some more guarded open-source projects. [![Discord](https://img.shields.io/static/v1?label=vrchatapi&message=discord&color=blueviolet&style=for-the-badge)](https://discord.gg/qjZE9C9fkB) * - * The version of the OpenAPI document: 1.0.2 + * The version of the OpenAPI document: 1.1.2 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index 9addae0..a3a983f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.0.2", + "version": "1.1.2", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/package.json b/package.json index df1d6ac..cfd6d2d 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.0.2", + "version": "1.1.2", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "keywords": [ From 842ad629382548474d10c8e6da244549e0fa8ad1 Mon Sep 17 00:00:00 2001 From: Foorack Date: Sat, 4 Sep 2021 20:02:31 +0200 Subject: [PATCH 028/130] Remove unused git_push.sh --- .openapi-generator-ignore | 3 ++- .openapi-generator/FILES | 1 - git_push.sh | 57 --------------------------------------- 3 files changed, 2 insertions(+), 59 deletions(-) delete mode 100644 git_push.sh diff --git a/.openapi-generator-ignore b/.openapi-generator-ignore index 2101329..dec024f 100644 --- a/.openapi-generator-ignore +++ b/.openapi-generator-ignore @@ -25,4 +25,5 @@ # VRChatAPI: Do not modify .gitignore to avoid comitting "dist" .gitignore -README.md \ No newline at end of file +README.md +git_push.sh \ No newline at end of file diff --git a/.openapi-generator/FILES b/.openapi-generator/FILES index 35b5a98..e56809e 100644 --- a/.openapi-generator/FILES +++ b/.openapi-generator/FILES @@ -3,7 +3,6 @@ api.ts base.ts common.ts configuration.ts -git_push.sh index.ts package.json tsconfig.json diff --git a/git_push.sh b/git_push.sh deleted file mode 100644 index 8f084d8..0000000 --- a/git_push.sh +++ /dev/null @@ -1,57 +0,0 @@ -#!/bin/sh -# ref: https://help.github.com/articles/adding-an-existing-project-to-github-using-the-command-line/ -# -# Usage example: /bin/sh ./git_push.sh wing328 openapi-petstore-perl "minor update" "gitlab.com" - -git_user_id=$1 -git_repo_id=$2 -release_note=$3 -git_host=$4 - -if [ "$git_host" = "" ]; then - git_host="github.com" - echo "[INFO] No command line input provided. Set \$git_host to $git_host" -fi - -if [ "$git_user_id" = "" ]; then - git_user_id="vrchatapi" - echo "[INFO] No command line input provided. Set \$git_user_id to $git_user_id" -fi - -if [ "$git_repo_id" = "" ]; then - git_repo_id="vrchatapi-javascript" - echo "[INFO] No command line input provided. Set \$git_repo_id to $git_repo_id" -fi - -if [ "$release_note" = "" ]; then - release_note="Minor update" - echo "[INFO] No command line input provided. Set \$release_note to $release_note" -fi - -# Initialize the local directory as a Git repository -git init - -# Adds the files in the local repository and stages them for commit. -git add . - -# Commits the tracked changes and prepares them to be pushed to a remote repository. -git commit -m "$release_note" - -# Sets the new remote -git_remote=`git remote` -if [ "$git_remote" = "" ]; then # git remote not defined - - if [ "$GIT_TOKEN" = "" ]; then - echo "[INFO] \$GIT_TOKEN (environment variable) is not set. Using the git credential in your environment." - git remote add origin https://${git_host}/${git_user_id}/${git_repo_id}.git - else - git remote add origin https://${git_user_id}:${GIT_TOKEN}@${git_host}/${git_user_id}/${git_repo_id}.git - fi - -fi - -git pull origin master - -# Pushes (Forces) the changes in the local repository up to the remote repository -echo "Git pushing to https://${git_host}/${git_user_id}/${git_repo_id}.git" -git push origin master 2>&1 | grep -v 'To https' From 28bac8c60d061974f895cffc0b4bdd64388ee8c6 Mon Sep 17 00:00:00 2001 From: Foorack Date: Sat, 11 Sep 2021 14:04:37 +0200 Subject: [PATCH 029/130] Upgrade Node SDK to spec 1.2.2 --- .openapi-generator/VERSION | 2 +- api.ts | 696 ++++++++++++++++++++++++++----------- base.ts | 3 +- common.ts | 5 +- configuration.ts | 3 +- generate.sh | 5 + index.ts | 3 +- package-lock.json | 142 +++++++- package.json | 8 +- 9 files changed, 644 insertions(+), 223 deletions(-) diff --git a/.openapi-generator/VERSION b/.openapi-generator/VERSION index 4b448de..7cbea07 100644 --- a/.openapi-generator/VERSION +++ b/.openapi-generator/VERSION @@ -1 +1 @@ -5.3.0-SNAPSHOT \ No newline at end of file +5.2.0 \ No newline at end of file diff --git a/api.ts b/api.ts index 3c38b29..4752d57 100644 --- a/api.ts +++ b/api.ts @@ -2,9 +2,8 @@ /* eslint-disable */ /** * VRChat API Documentation - * ![VRChat API Banner](https://vrchatapi.github.io/assets/img/api_banner_1500x400.png) # Welcome to the VRChat API Before we begin, we would like to state this is a **COMMUNITY DRIVEN PROJECT**. This means that everything you read on here was written by the community itself and is **not** officially supported by VRChat. The documentation is provided \"AS IS\", and any action you take towards VRChat is completely your own responsibility. The documentation and additional libraries SHALL ONLY be used for applications interacting with VRChat\'s API in accordance with their [Terms of Service](https://github.com/VRChatAPI), and MUST NOT be used for modifying the client, \"avatar ripping\", or other illegal activities. Malicious usage or spamming the API may result in account termination. Certain parts of the API are also more sensitive than others, for example moderation, so please tread extra carefully and read the warnings when present. ![Tupper Policy on API](https://i.imgur.com/yLlW7Ok.png) Finally, use of the API using applications other than the approved methods (website, VRChat application, Unity SDK) is not officially supported. VRChat provides no guarantee or support for external applications using the API. Access to API endpoints may break **at any time, without notice**. Therefore, please **do not ping** VRChat Staff in the VRChat Discord if you are having API problems, as they do not provide API support. We will make a best effort in keeping this documentation and associated language libraries up to date, but things might be outdated or missing. If you find that something is no longer valid, please contact us on Discord or [create an issue](https://github.com/vrchatapi/specification/issues) and tell us so we can fix it. # Getting Started The VRChat API can be used to programmatically retrieve or update information regarding your profile, friends, avatars, worlds and more. The API consists of two parts, \"Photon\" which is only used in-game, and the \"Web API\" which is used by both the game and the website. This documentation focuses only on the Web API. The API is designed around the REST ideology, providing semi-simple and usually predictable URIs to access and modify objects. Requests support standard HTTP methods like GET, PUT, POST, and DELETE and standard status codes. Response bodies are always UTF-8 encoded JSON objects, unless explicitly documented otherwise.
🛑 Warning! Do not touch Photon!
Photon is only used by the in-game client and should not be touched. Doing so may result in permanent account termination.
ℹ️ API Key and Authentication
The API Key has always been the same and is currently JlE5Jldo5Jibnk5O5hTx6XVqsJu4WJ26. Read Authentication for how to log in.
# Using the API For simply exploring what the API can do it is strongly recommended to download [Insomnia](https://insomnia.rest/download), a free and open-source API client that\'s great for sending requests to the API in an orderly fashion. Insomnia allows you to send data in the format that\'s required for VRChat\'s API. It is also possible to try out the API in your browser, by first logging in at [vrchat.com/home](https://vrchat.com/home/) and then going to [vrchat.com/api/1/auth/user](https://vrchat.com/api/1/auth/user), but the information will be much harder to work with. For more permanent operation such as software development it is instead recommended to use one of the existing language SDKs. This community project maintains API libraries in several languages, which allows you to interact with the API with simple function calls rather than having to implement the HTTP protocol yourself. Most of these libraries are automatically generated from the API specification, sometimes with additional helpful wrapper code to make usage easier. This allows them to be almost automatically updated and expanded upon as soon as a new feature is introduced in the specification itself. The libraries can be found on [GitHub](https://github.com/vrchatapi) or following: * [NodeJS (JavaScript)](https://www.npmjs.com/package/vrchat) * [Dart](https://pub.dev/packages/vrchat_dart) * [Rust](https://crates.io/crates/vrchatapi) * [C#](https://github.com/vrchatapi/vrchatapi-csharp) * [Python](https://github.com/vrchatapi/VRChatPython) # Pagination Most endpoints enforce pagination, meaning they will only return 10 entries by default, and never more than 100.
Using both the limit and offset parameters allows you to easily paginate through a large number of objects. | Query Parameter | Type | Description | | ----------|--|------- | | `limit` | integer | The number of objects to return. This value often defaults to 10. Highest limit is always 100.| | `offset` | integer | A zero-based offset from the default object sorting.| If a request returns fewer objects than the `limit` parameter, there are no more items available to return. # Contribution Do you want to get involved in the documentation effort? Do you want to help improve one of the language API libraries? This project is an [OPEN Open Source Project](https://openopensource.org)! This means that individuals making significant and valuable contributions are given commit-access to the project. It also means we are very open and welcoming of new people making contributions, unlike some more guarded open-source projects. [![Discord](https://img.shields.io/static/v1?label=vrchatapi&message=discord&color=blueviolet&style=for-the-badge)](https://discord.gg/qjZE9C9fkB) * - * The version of the OpenAPI document: 1.1.2 + * The version of the OpenAPI document: 1.2.2 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -1012,11 +1011,11 @@ export interface CurrentUser { */ last_login: string; /** - * - * @type {Platform} + * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. + * @type {string} * @memberof CurrentUser */ - last_platform: Platform; + last_platform: string; /** * * @type {boolean} @@ -1323,6 +1322,31 @@ export interface FileVersion { */ deleted?: boolean; } +/** + * + * @export + * @interface FriendStatus + */ +export interface FriendStatus { + /** + * + * @type {boolean} + * @memberof FriendStatus + */ + isFriend: boolean; + /** + * + * @type {boolean} + * @memberof FriendStatus + */ + outgoingRequest: boolean; + /** + * + * @type {boolean} + * @memberof FriendStatus + */ + incomingRequest: boolean; +} /** * * @export @@ -1720,11 +1744,11 @@ export interface InlineObject6 { */ name: string; /** - * - * @type {Platform} + * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. + * @type {string} * @memberof InlineObject6 */ - platform?: Platform; + platform?: string; /** * * @type {ReleaseStatus} @@ -1811,11 +1835,11 @@ export interface InlineObject7 { */ name?: string; /** - * - * @type {Platform} + * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. + * @type {string} * @memberof InlineObject7 */ - platform?: Platform; + platform?: string; /** * * @type {ReleaseStatus} @@ -1954,123 +1978,98 @@ export interface InlineResponse2002 { * @interface InlineResponse2003 */ export interface InlineResponse2003 { - /** - * - * @type {boolean} - * @memberof InlineResponse2003 - */ - isFriend: boolean; - /** - * - * @type {boolean} - * @memberof InlineResponse2003 - */ - outgoingRequest: boolean; - /** - * - * @type {boolean} - * @memberof InlineResponse2003 - */ - incomingRequest: boolean; -} -/** - * - * @export - * @interface InlineResponse2004 - */ -export interface InlineResponse2004 { /** * * @type {string} - * @memberof InlineResponse2004 + * @memberof InlineResponse2003 */ uploadId: string; /** * * @type {string} - * @memberof InlineResponse2004 + * @memberof InlineResponse2003 */ fileName: string; /** * * @type {number} - * @memberof InlineResponse2004 + * @memberof InlineResponse2003 */ nextPartNumber: number; /** * * @type {number} - * @memberof InlineResponse2004 + * @memberof InlineResponse2003 */ maxParts: number; /** * * @type {Array} - * @memberof InlineResponse2004 + * @memberof InlineResponse2003 */ parts: Array; /** * Unknown * @type {Array} - * @memberof InlineResponse2004 + * @memberof InlineResponse2003 */ etags: Array; } /** * * @export - * @interface InlineResponse2005 + * @interface InlineResponse2004 */ -export interface InlineResponse2005 { +export interface InlineResponse2004 { /** * * @type {string} - * @memberof InlineResponse2005 + * @memberof InlineResponse2004 */ url: string; } /** * * @export - * @interface InlineResponse2006 + * @interface InlineResponse2005 */ -export interface InlineResponse2006 { +export interface InlineResponse2005 { /** * * @type {string} - * @memberof InlineResponse2006 + * @memberof InlineResponse2005 */ id: string; /** * * @type {object} - * @memberof InlineResponse2006 + * @memberof InlineResponse2005 */ metadata: object; } /** * * @export - * @interface InlineResponse2007 + * @interface InlineResponse2006 */ -export interface InlineResponse2007 { +export interface InlineResponse2006 { /** * * @type {boolean} - * @memberof InlineResponse2007 + * @memberof InlineResponse2006 */ canPubilsh: boolean; } /** * * @export - * @interface InlineResponse403 + * @interface InlineResponse400 */ -export interface InlineResponse403 { +export interface InlineResponse400 { /** * * @type {Error} - * @memberof InlineResponse403 + * @memberof InlineResponse400 */ error: Error; } @@ -2234,6 +2233,65 @@ export interface InstancePlatforms { */ standalonewindows: number; } +/** + * + * @export + * @interface InviteMessage + */ +export interface InviteMessage { + /** + * + * @type {string} + * @memberof InviteMessage + */ + id: string; + /** + * + * @type {number} + * @memberof InviteMessage + */ + slot: number; + /** + * + * @type {string} + * @memberof InviteMessage + */ + message: string; + /** + * + * @type {InviteMessageType} + * @memberof InviteMessage + */ + messageType: InviteMessageType; + /** + * + * @type {string} + * @memberof InviteMessage + */ + updatedAt: string; + /** + * Changes to 60 when updated, although probably server-side configurable. + * @type {number} + * @memberof InviteMessage + */ + remainingCooldownMinutes: number; + /** + * + * @type {boolean} + * @memberof InviteMessage + */ + canBeUpdated: boolean; +} +/** + * + * @export + * @enum {string} + */ + +export enum InviteMessageType { + Message = 'message' +} + /** * * @export @@ -2241,11 +2299,11 @@ export interface InstancePlatforms { */ export interface LimitedUnityPackage { /** - * - * @type {Platform} + * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. + * @type {string} * @memberof LimitedUnityPackage */ - platform: Platform; + platform: string; /** * * @type {string} @@ -2326,11 +2384,11 @@ export interface LimitedUser { */ developerType: DeveloperType; /** - * - * @type {Platform} + * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. + * @type {string} * @memberof LimitedUser */ - last_platform: Platform; + last_platform: string; /** * * @type {UserStatus} @@ -2343,12 +2401,6 @@ export interface LimitedUser { * @memberof LimitedUser */ isFriend: boolean; - /** - * - * @type {string} - * @memberof LimitedUser - */ - location: string; /** * <- Always empty. * @type {Array} @@ -2683,17 +2735,6 @@ export interface Permission { */ data?: object; } -/** - * - * @export - * @enum {string} - */ - -export enum Platform { - Standalonewindows = 'standalonewindows', - Android = 'android' -} - /** * * @export @@ -2781,7 +2822,7 @@ export interface Response { * @type {string} * @memberof Response */ - message: string; + message?: string; /** * * @type {number} @@ -2857,11 +2898,11 @@ export interface UnityPackage { */ assetVersion: number; /** - * - * @type {Platform} + * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. + * @type {string} * @memberof UnityPackage */ - platform: Platform; + platform: string; /** * * @type {string} @@ -2966,11 +3007,11 @@ export interface User { */ last_login: string; /** - * - * @type {Platform} + * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. + * @type {string} * @memberof User */ - last_platform: Platform; + last_platform: string; /** * * @type {boolean} @@ -4145,7 +4186,7 @@ export const AvatarsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getFavoritedAvatars(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async getFavoritedAvatars(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.getFavoritedAvatars(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -4254,7 +4295,7 @@ export const AvatarsApiFactory = function (configuration?: Configuration, basePa * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFavoritedAvatars(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any): AxiosPromise { + getFavoritedAvatars(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any): AxiosPromise> { return localVarFp.getFavoritedAvatars(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options).then((request) => request(axios, basePath)); }, /** @@ -4816,7 +4857,7 @@ export const FavoritesApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async clearFavoriteGroup(favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async clearFavoriteGroup(favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.clearFavoriteGroup(favoriteGroupType, favoriteGroupName, userId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -4878,7 +4919,7 @@ export const FavoritesApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async removeFavorite(favoriteId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async removeFavorite(favoriteId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.removeFavorite(favoriteId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -4925,7 +4966,7 @@ export const FavoritesApiFactory = function (configuration?: Configuration, base * @param {*} [options] Override http request option. * @throws {RequiredError} */ - clearFavoriteGroup(favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, options?: any): AxiosPromise { + clearFavoriteGroup(favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, options?: any): AxiosPromise { return localVarFp.clearFavoriteGroup(favoriteGroupType, favoriteGroupName, userId, options).then((request) => request(axios, basePath)); }, /** @@ -4982,7 +5023,7 @@ export const FavoritesApiFactory = function (configuration?: Configuration, base * @param {*} [options] Override http request option. * @throws {RequiredError} */ - removeFavorite(favoriteId: string, options?: any): AxiosPromise { + removeFavorite(favoriteId: string, options?: any): AxiosPromise { return localVarFp.removeFavorite(favoriteId, options).then((request) => request(axios, basePath)); }, /** @@ -5669,7 +5710,7 @@ export const FilesApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getFileDataUploadStatus(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async getFileDataUploadStatus(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getFileDataUploadStatus(fileId, versionId, fileType, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -5697,7 +5738,7 @@ export const FilesApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async startFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', partNumber: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async startFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', partNumber: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.startFileDataUpload(fileId, versionId, fileType, partNumber, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -5796,7 +5837,7 @@ export const FilesApiFactory = function (configuration?: Configuration, basePath * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFileDataUploadStatus(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', options?: any): AxiosPromise { + getFileDataUploadStatus(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', options?: any): AxiosPromise { return localVarFp.getFileDataUploadStatus(fileId, versionId, fileType, options).then((request) => request(axios, basePath)); }, /** @@ -5822,7 +5863,7 @@ export const FilesApiFactory = function (configuration?: Configuration, basePath * @param {*} [options] Override http request option. * @throws {RequiredError} */ - startFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', partNumber: number, options?: any): AxiosPromise { + startFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', partNumber: number, options?: any): AxiosPromise { return localVarFp.startFileDataUpload(fileId, versionId, fileType, partNumber, options).then((request) => request(axios, basePath)); }, }; @@ -6217,7 +6258,7 @@ export const FriendsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getFriendStatus(userId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async getFriendStatus(userId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getFriendStatus(userId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -6282,7 +6323,7 @@ export const FriendsApiFactory = function (configuration?: Configuration, basePa * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFriendStatus(userId: string, options?: any): AxiosPromise { + getFriendStatus(userId: string, options?: any): AxiosPromise { return localVarFp.getFriendStatus(userId, options).then((request) => request(axios, basePath)); }, /** @@ -6381,6 +6422,349 @@ export class FriendsApi extends BaseAPI { } +/** + * InviteApi - axios parameter creator + * @export + */ +export const InviteApiAxiosParamCreator = function (configuration?: Configuration) { + return { + /** + * Returns a single Invite Message. This returns the exact same information but less than `getInviteMessages`. Admin Credentials are required to view messages of other users! + * @summary Get Invite Messages + * @param {string} userId + * @param {number} messageId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getInviteMessage: async (userId: string, messageId: number, options: any = {}): Promise => { + // verify required parameter 'userId' is not null or undefined + assertParamExists('getInviteMessage', 'userId', userId) + // verify required parameter 'messageId' is not null or undefined + assertParamExists('getInviteMessage', 'messageId', messageId) + const localVarPath = `/message/{userId}/message/{messageId}` + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))) + .replace(`{${"messageId"}}`, encodeURIComponent(String(messageId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Returns a list of all that users Invite Messages. Admin Credentials are required to view messages of other users! + * @summary List Invite Messages + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getInviteMessages: async (userId: string, options: any = {}): Promise => { + // verify required parameter 'userId' is not null or undefined + assertParamExists('getInviteMessages', 'userId', userId) + const localVarPath = `/message/{userId}/message` + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Resets a single Invite Message back to it\'s original message, and then returns a list of all of them. Admin Credentials are required to update messages of other users! Resetting a message respects the rate-limit, but resetting it does not set the rate-limit to 60 like when editing it. It is possible to edit it right after resetting it. Trying to edit a message before the cooldown timer expires results in a 429 Too Fast Error. + * @summary Reset Invite Message + * @param {string} userId + * @param {number} messageId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + resetInviteMessage: async (userId: string, messageId: number, options: any = {}): Promise => { + // verify required parameter 'userId' is not null or undefined + assertParamExists('resetInviteMessage', 'userId', userId) + // verify required parameter 'messageId' is not null or undefined + assertParamExists('resetInviteMessage', 'messageId', messageId) + const localVarPath = `/message/{userId}/message/{messageId}` + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))) + .replace(`{${"messageId"}}`, encodeURIComponent(String(messageId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Updates a single Invite Message and then returns a list of all of them. Admin Credentials are required to update messages of other users! Updating a message automatically sets the cooldown timer to 60 minutes. Trying to edit a message before the cooldown timer expires results in a 429 Too Fast Error. + * @summary Update Invite Message + * @param {string} userId + * @param {number} messageId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + updateInviteMessage: async (userId: string, messageId: number, options: any = {}): Promise => { + // verify required parameter 'userId' is not null or undefined + assertParamExists('updateInviteMessage', 'userId', userId) + // verify required parameter 'messageId' is not null or undefined + assertParamExists('updateInviteMessage', 'messageId', messageId) + const localVarPath = `/message/{userId}/message/{messageId}` + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))) + .replace(`{${"messageId"}}`, encodeURIComponent(String(messageId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + } +}; + +/** + * InviteApi - functional programming interface + * @export + */ +export const InviteApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = InviteApiAxiosParamCreator(configuration) + return { + /** + * Returns a single Invite Message. This returns the exact same information but less than `getInviteMessages`. Admin Credentials are required to view messages of other users! + * @summary Get Invite Messages + * @param {string} userId + * @param {number} messageId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getInviteMessage(userId: string, messageId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getInviteMessage(userId, messageId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Returns a list of all that users Invite Messages. Admin Credentials are required to view messages of other users! + * @summary List Invite Messages + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getInviteMessages(userId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getInviteMessages(userId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Resets a single Invite Message back to it\'s original message, and then returns a list of all of them. Admin Credentials are required to update messages of other users! Resetting a message respects the rate-limit, but resetting it does not set the rate-limit to 60 like when editing it. It is possible to edit it right after resetting it. Trying to edit a message before the cooldown timer expires results in a 429 Too Fast Error. + * @summary Reset Invite Message + * @param {string} userId + * @param {number} messageId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async resetInviteMessage(userId: string, messageId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.resetInviteMessage(userId, messageId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Updates a single Invite Message and then returns a list of all of them. Admin Credentials are required to update messages of other users! Updating a message automatically sets the cooldown timer to 60 minutes. Trying to edit a message before the cooldown timer expires results in a 429 Too Fast Error. + * @summary Update Invite Message + * @param {string} userId + * @param {number} messageId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async updateInviteMessage(userId: string, messageId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.updateInviteMessage(userId, messageId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + } +}; + +/** + * InviteApi - factory interface + * @export + */ +export const InviteApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = InviteApiFp(configuration) + return { + /** + * Returns a single Invite Message. This returns the exact same information but less than `getInviteMessages`. Admin Credentials are required to view messages of other users! + * @summary Get Invite Messages + * @param {string} userId + * @param {number} messageId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getInviteMessage(userId: string, messageId: number, options?: any): AxiosPromise { + return localVarFp.getInviteMessage(userId, messageId, options).then((request) => request(axios, basePath)); + }, + /** + * Returns a list of all that users Invite Messages. Admin Credentials are required to view messages of other users! + * @summary List Invite Messages + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getInviteMessages(userId: string, options?: any): AxiosPromise> { + return localVarFp.getInviteMessages(userId, options).then((request) => request(axios, basePath)); + }, + /** + * Resets a single Invite Message back to it\'s original message, and then returns a list of all of them. Admin Credentials are required to update messages of other users! Resetting a message respects the rate-limit, but resetting it does not set the rate-limit to 60 like when editing it. It is possible to edit it right after resetting it. Trying to edit a message before the cooldown timer expires results in a 429 Too Fast Error. + * @summary Reset Invite Message + * @param {string} userId + * @param {number} messageId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + resetInviteMessage(userId: string, messageId: number, options?: any): AxiosPromise> { + return localVarFp.resetInviteMessage(userId, messageId, options).then((request) => request(axios, basePath)); + }, + /** + * Updates a single Invite Message and then returns a list of all of them. Admin Credentials are required to update messages of other users! Updating a message automatically sets the cooldown timer to 60 minutes. Trying to edit a message before the cooldown timer expires results in a 429 Too Fast Error. + * @summary Update Invite Message + * @param {string} userId + * @param {number} messageId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + updateInviteMessage(userId: string, messageId: number, options?: any): AxiosPromise> { + return localVarFp.updateInviteMessage(userId, messageId, options).then((request) => request(axios, basePath)); + }, + }; +}; + +/** + * InviteApi - object-oriented interface + * @export + * @class InviteApi + * @extends {BaseAPI} + */ +export class InviteApi extends BaseAPI { + /** + * Returns a single Invite Message. This returns the exact same information but less than `getInviteMessages`. Admin Credentials are required to view messages of other users! + * @summary Get Invite Messages + * @param {string} userId + * @param {number} messageId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof InviteApi + */ + public getInviteMessage(userId: string, messageId: number, options?: any) { + return InviteApiFp(this.configuration).getInviteMessage(userId, messageId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Returns a list of all that users Invite Messages. Admin Credentials are required to view messages of other users! + * @summary List Invite Messages + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof InviteApi + */ + public getInviteMessages(userId: string, options?: any) { + return InviteApiFp(this.configuration).getInviteMessages(userId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Resets a single Invite Message back to it\'s original message, and then returns a list of all of them. Admin Credentials are required to update messages of other users! Resetting a message respects the rate-limit, but resetting it does not set the rate-limit to 60 like when editing it. It is possible to edit it right after resetting it. Trying to edit a message before the cooldown timer expires results in a 429 Too Fast Error. + * @summary Reset Invite Message + * @param {string} userId + * @param {number} messageId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof InviteApi + */ + public resetInviteMessage(userId: string, messageId: number, options?: any) { + return InviteApiFp(this.configuration).resetInviteMessage(userId, messageId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Updates a single Invite Message and then returns a list of all of them. Admin Credentials are required to update messages of other users! Updating a message automatically sets the cooldown timer to 60 minutes. Trying to edit a message before the cooldown timer expires results in a 429 Too Fast Error. + * @summary Update Invite Message + * @param {string} userId + * @param {number} messageId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof InviteApi + */ + public updateInviteMessage(userId: string, messageId: number, options?: any) { + return InviteApiFp(this.configuration).updateInviteMessage(userId, messageId, options).then((request) => request(this.axios, this.basePath)); + } +} + + /** * NotificationsApi - axios parameter creator * @export @@ -7244,7 +7628,7 @@ export const PlayermoderationApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async deletePlayerModeration(playerModerationId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async deletePlayerModeration(playerModerationId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.deletePlayerModeration(playerModerationId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -7289,7 +7673,7 @@ export const PlayermoderationApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async unmoderateUser(inlineObject13?: InlineObject13, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async unmoderateUser(inlineObject13?: InlineObject13, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.unmoderateUser(inlineObject13, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -7319,7 +7703,7 @@ export const PlayermoderationApiFactory = function (configuration?: Configuratio * @param {*} [options] Override http request option. * @throws {RequiredError} */ - deletePlayerModeration(playerModerationId: string, options?: any): AxiosPromise { + deletePlayerModeration(playerModerationId: string, options?: any): AxiosPromise { return localVarFp.deletePlayerModeration(playerModerationId, options).then((request) => request(axios, basePath)); }, /** @@ -7360,7 +7744,7 @@ export const PlayermoderationApiFactory = function (configuration?: Configuratio * @param {*} [options] Override http request option. * @throws {RequiredError} */ - unmoderateUser(inlineObject13?: InlineObject13, options?: any): AxiosPromise { + unmoderateUser(inlineObject13?: InlineObject13, options?: any): AxiosPromise { return localVarFp.unmoderateUser(inlineObject13, options).then((request) => request(axios, basePath)); }, }; @@ -7798,63 +8182,6 @@ export const UsersApiAxiosParamCreator = function (configuration?: Configuration - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); - let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; - localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - - return { - url: toPathString(localVarUrlObj), - options: localVarRequestOptions, - }; - }, - /** - * Search and list any Active users by text query. **Has been locked down and now always respond with \"Invalid Admin Credentials\".** - * @summary Search Active Users - * @param {string} search Username to search for - * @param {string} [developerType] Active user by developer type, none for normal users and internal for moderators - * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. - * @param {number} [n] The number of objects to return. - * @param {*} [options] Override http request option. - * @deprecated - * @throws {RequiredError} - */ - searchActiveUsers: async (search: string, developerType?: string, offset?: number, n?: number, options: any = {}): Promise => { - // verify required parameter 'search' is not null or undefined - assertParamExists('searchActiveUsers', 'search', search) - const localVarPath = `/users/active`; - // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); - let baseOptions; - if (configuration) { - baseOptions = configuration.baseOptions; - } - - const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; - const localVarHeaderParameter = {} as any; - const localVarQueryParameter = {} as any; - - // authentication apiKeyCookie required - - // authentication authCookie required - - if (search !== undefined) { - localVarQueryParameter['search'] = search; - } - - if (developerType !== undefined) { - localVarQueryParameter['developerType'] = developerType; - } - - if (offset !== undefined) { - localVarQueryParameter['offset'] = offset; - } - - if (n !== undefined) { - localVarQueryParameter['n'] = n; - } - - - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -7992,21 +8319,6 @@ export const UsersApiFp = function(configuration?: Configuration) { const localVarAxiosArgs = await localVarAxiosParamCreator.getUserByName(username, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, - /** - * Search and list any Active users by text query. **Has been locked down and now always respond with \"Invalid Admin Credentials\".** - * @summary Search Active Users - * @param {string} search Username to search for - * @param {string} [developerType] Active user by developer type, none for normal users and internal for moderators - * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. - * @param {number} [n] The number of objects to return. - * @param {*} [options] Override http request option. - * @deprecated - * @throws {RequiredError} - */ - async searchActiveUsers(search: string, developerType?: string, offset?: number, n?: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { - const localVarAxiosArgs = await localVarAxiosParamCreator.searchActiveUsers(search, developerType, offset, n, options); - return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); - }, /** * Search and list any users by text query * @summary Search All Users @@ -8063,20 +8375,6 @@ export const UsersApiFactory = function (configuration?: Configuration, basePath getUserByName(username: string, options?: any): AxiosPromise { return localVarFp.getUserByName(username, options).then((request) => request(axios, basePath)); }, - /** - * Search and list any Active users by text query. **Has been locked down and now always respond with \"Invalid Admin Credentials\".** - * @summary Search Active Users - * @param {string} search Username to search for - * @param {string} [developerType] Active user by developer type, none for normal users and internal for moderators - * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. - * @param {number} [n] The number of objects to return. - * @param {*} [options] Override http request option. - * @deprecated - * @throws {RequiredError} - */ - searchActiveUsers(search: string, developerType?: string, offset?: number, n?: number, options?: any): AxiosPromise> { - return localVarFp.searchActiveUsers(search, developerType, offset, n, options).then((request) => request(axios, basePath)); - }, /** * Search and list any users by text query * @summary Search All Users @@ -8135,22 +8433,6 @@ export class UsersApi extends BaseAPI { return UsersApiFp(this.configuration).getUserByName(username, options).then((request) => request(this.axios, this.basePath)); } - /** - * Search and list any Active users by text query. **Has been locked down and now always respond with \"Invalid Admin Credentials\".** - * @summary Search Active Users - * @param {string} search Username to search for - * @param {string} [developerType] Active user by developer type, none for normal users and internal for moderators - * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. - * @param {number} [n] The number of objects to return. - * @param {*} [options] Override http request option. - * @deprecated - * @throws {RequiredError} - * @memberof UsersApi - */ - public searchActiveUsers(search: string, developerType?: string, offset?: number, n?: number, options?: any) { - return UsersApiFp(this.configuration).searchActiveUsers(search, developerType, offset, n, options).then((request) => request(this.axios, this.basePath)); - } - /** * Search and list any users by text query * @summary Search All Users @@ -9057,7 +9339,7 @@ export const WorldsApiFp = function(configuration?: Configuration) { * @deprecated * @throws {RequiredError} */ - async getWorldMetadata(worldId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async getWorldMetadata(worldId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getWorldMetadata(worldId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -9068,7 +9350,7 @@ export const WorldsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getWorldPublishStatus(worldId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async getWorldPublishStatus(worldId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getWorldPublishStatus(worldId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -9254,7 +9536,7 @@ export const WorldsApiFactory = function (configuration?: Configuration, basePat * @deprecated * @throws {RequiredError} */ - getWorldMetadata(worldId: string, options?: any): AxiosPromise { + getWorldMetadata(worldId: string, options?: any): AxiosPromise { return localVarFp.getWorldMetadata(worldId, options).then((request) => request(axios, basePath)); }, /** @@ -9264,7 +9546,7 @@ export const WorldsApiFactory = function (configuration?: Configuration, basePat * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getWorldPublishStatus(worldId: string, options?: any): AxiosPromise { + getWorldPublishStatus(worldId: string, options?: any): AxiosPromise { return localVarFp.getWorldPublishStatus(worldId, options).then((request) => request(axios, basePath)); }, /** diff --git a/base.ts b/base.ts index d0bb565..22548bf 100644 --- a/base.ts +++ b/base.ts @@ -2,9 +2,8 @@ /* eslint-disable */ /** * VRChat API Documentation - * ![VRChat API Banner](https://vrchatapi.github.io/assets/img/api_banner_1500x400.png) # Welcome to the VRChat API Before we begin, we would like to state this is a **COMMUNITY DRIVEN PROJECT**. This means that everything you read on here was written by the community itself and is **not** officially supported by VRChat. The documentation is provided \"AS IS\", and any action you take towards VRChat is completely your own responsibility. The documentation and additional libraries SHALL ONLY be used for applications interacting with VRChat\'s API in accordance with their [Terms of Service](https://github.com/VRChatAPI), and MUST NOT be used for modifying the client, \"avatar ripping\", or other illegal activities. Malicious usage or spamming the API may result in account termination. Certain parts of the API are also more sensitive than others, for example moderation, so please tread extra carefully and read the warnings when present. ![Tupper Policy on API](https://i.imgur.com/yLlW7Ok.png) Finally, use of the API using applications other than the approved methods (website, VRChat application, Unity SDK) is not officially supported. VRChat provides no guarantee or support for external applications using the API. Access to API endpoints may break **at any time, without notice**. Therefore, please **do not ping** VRChat Staff in the VRChat Discord if you are having API problems, as they do not provide API support. We will make a best effort in keeping this documentation and associated language libraries up to date, but things might be outdated or missing. If you find that something is no longer valid, please contact us on Discord or [create an issue](https://github.com/vrchatapi/specification/issues) and tell us so we can fix it. # Getting Started The VRChat API can be used to programmatically retrieve or update information regarding your profile, friends, avatars, worlds and more. The API consists of two parts, \"Photon\" which is only used in-game, and the \"Web API\" which is used by both the game and the website. This documentation focuses only on the Web API. The API is designed around the REST ideology, providing semi-simple and usually predictable URIs to access and modify objects. Requests support standard HTTP methods like GET, PUT, POST, and DELETE and standard status codes. Response bodies are always UTF-8 encoded JSON objects, unless explicitly documented otherwise.
🛑 Warning! Do not touch Photon!
Photon is only used by the in-game client and should not be touched. Doing so may result in permanent account termination.
ℹ️ API Key and Authentication
The API Key has always been the same and is currently JlE5Jldo5Jibnk5O5hTx6XVqsJu4WJ26. Read Authentication for how to log in.
# Using the API For simply exploring what the API can do it is strongly recommended to download [Insomnia](https://insomnia.rest/download), a free and open-source API client that\'s great for sending requests to the API in an orderly fashion. Insomnia allows you to send data in the format that\'s required for VRChat\'s API. It is also possible to try out the API in your browser, by first logging in at [vrchat.com/home](https://vrchat.com/home/) and then going to [vrchat.com/api/1/auth/user](https://vrchat.com/api/1/auth/user), but the information will be much harder to work with. For more permanent operation such as software development it is instead recommended to use one of the existing language SDKs. This community project maintains API libraries in several languages, which allows you to interact with the API with simple function calls rather than having to implement the HTTP protocol yourself. Most of these libraries are automatically generated from the API specification, sometimes with additional helpful wrapper code to make usage easier. This allows them to be almost automatically updated and expanded upon as soon as a new feature is introduced in the specification itself. The libraries can be found on [GitHub](https://github.com/vrchatapi) or following: * [NodeJS (JavaScript)](https://www.npmjs.com/package/vrchat) * [Dart](https://pub.dev/packages/vrchat_dart) * [Rust](https://crates.io/crates/vrchatapi) * [C#](https://github.com/vrchatapi/vrchatapi-csharp) * [Python](https://github.com/vrchatapi/VRChatPython) # Pagination Most endpoints enforce pagination, meaning they will only return 10 entries by default, and never more than 100.
Using both the limit and offset parameters allows you to easily paginate through a large number of objects. | Query Parameter | Type | Description | | ----------|--|------- | | `limit` | integer | The number of objects to return. This value often defaults to 10. Highest limit is always 100.| | `offset` | integer | A zero-based offset from the default object sorting.| If a request returns fewer objects than the `limit` parameter, there are no more items available to return. # Contribution Do you want to get involved in the documentation effort? Do you want to help improve one of the language API libraries? This project is an [OPEN Open Source Project](https://openopensource.org)! This means that individuals making significant and valuable contributions are given commit-access to the project. It also means we are very open and welcoming of new people making contributions, unlike some more guarded open-source projects. [![Discord](https://img.shields.io/static/v1?label=vrchatapi&message=discord&color=blueviolet&style=for-the-badge)](https://discord.gg/qjZE9C9fkB) * - * The version of the OpenAPI document: 1.1.2 + * The version of the OpenAPI document: 1.2.2 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index 2cfdb5d..73d8e50 100644 --- a/common.ts +++ b/common.ts @@ -2,9 +2,8 @@ /* eslint-disable */ /** * VRChat API Documentation - * ![VRChat API Banner](https://vrchatapi.github.io/assets/img/api_banner_1500x400.png) # Welcome to the VRChat API Before we begin, we would like to state this is a **COMMUNITY DRIVEN PROJECT**. This means that everything you read on here was written by the community itself and is **not** officially supported by VRChat. The documentation is provided \"AS IS\", and any action you take towards VRChat is completely your own responsibility. The documentation and additional libraries SHALL ONLY be used for applications interacting with VRChat\'s API in accordance with their [Terms of Service](https://github.com/VRChatAPI), and MUST NOT be used for modifying the client, \"avatar ripping\", or other illegal activities. Malicious usage or spamming the API may result in account termination. Certain parts of the API are also more sensitive than others, for example moderation, so please tread extra carefully and read the warnings when present. ![Tupper Policy on API](https://i.imgur.com/yLlW7Ok.png) Finally, use of the API using applications other than the approved methods (website, VRChat application, Unity SDK) is not officially supported. VRChat provides no guarantee or support for external applications using the API. Access to API endpoints may break **at any time, without notice**. Therefore, please **do not ping** VRChat Staff in the VRChat Discord if you are having API problems, as they do not provide API support. We will make a best effort in keeping this documentation and associated language libraries up to date, but things might be outdated or missing. If you find that something is no longer valid, please contact us on Discord or [create an issue](https://github.com/vrchatapi/specification/issues) and tell us so we can fix it. # Getting Started The VRChat API can be used to programmatically retrieve or update information regarding your profile, friends, avatars, worlds and more. The API consists of two parts, \"Photon\" which is only used in-game, and the \"Web API\" which is used by both the game and the website. This documentation focuses only on the Web API. The API is designed around the REST ideology, providing semi-simple and usually predictable URIs to access and modify objects. Requests support standard HTTP methods like GET, PUT, POST, and DELETE and standard status codes. Response bodies are always UTF-8 encoded JSON objects, unless explicitly documented otherwise.
🛑 Warning! Do not touch Photon!
Photon is only used by the in-game client and should not be touched. Doing so may result in permanent account termination.
ℹ️ API Key and Authentication
The API Key has always been the same and is currently JlE5Jldo5Jibnk5O5hTx6XVqsJu4WJ26. Read Authentication for how to log in.
# Using the API For simply exploring what the API can do it is strongly recommended to download [Insomnia](https://insomnia.rest/download), a free and open-source API client that\'s great for sending requests to the API in an orderly fashion. Insomnia allows you to send data in the format that\'s required for VRChat\'s API. It is also possible to try out the API in your browser, by first logging in at [vrchat.com/home](https://vrchat.com/home/) and then going to [vrchat.com/api/1/auth/user](https://vrchat.com/api/1/auth/user), but the information will be much harder to work with. For more permanent operation such as software development it is instead recommended to use one of the existing language SDKs. This community project maintains API libraries in several languages, which allows you to interact with the API with simple function calls rather than having to implement the HTTP protocol yourself. Most of these libraries are automatically generated from the API specification, sometimes with additional helpful wrapper code to make usage easier. This allows them to be almost automatically updated and expanded upon as soon as a new feature is introduced in the specification itself. The libraries can be found on [GitHub](https://github.com/vrchatapi) or following: * [NodeJS (JavaScript)](https://www.npmjs.com/package/vrchat) * [Dart](https://pub.dev/packages/vrchat_dart) * [Rust](https://crates.io/crates/vrchatapi) * [C#](https://github.com/vrchatapi/vrchatapi-csharp) * [Python](https://github.com/vrchatapi/VRChatPython) # Pagination Most endpoints enforce pagination, meaning they will only return 10 entries by default, and never more than 100.
Using both the limit and offset parameters allows you to easily paginate through a large number of objects. | Query Parameter | Type | Description | | ----------|--|------- | | `limit` | integer | The number of objects to return. This value often defaults to 10. Highest limit is always 100.| | `offset` | integer | A zero-based offset from the default object sorting.| If a request returns fewer objects than the `limit` parameter, there are no more items available to return. # Contribution Do you want to get involved in the documentation effort? Do you want to help improve one of the language API libraries? This project is an [OPEN Open Source Project](https://openopensource.org)! This means that individuals making significant and valuable contributions are given commit-access to the project. It also means we are very open and welcoming of new people making contributions, unlike some more guarded open-source projects. [![Discord](https://img.shields.io/static/v1?label=vrchatapi&message=discord&color=blueviolet&style=for-the-badge)](https://discord.gg/qjZE9C9fkB) * - * The version of the OpenAPI document: 1.1.2 + * The version of the OpenAPI document: 1.2.2 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -14,7 +13,7 @@ import { Configuration } from "./configuration"; -import { RequiredError, RequestArgs } from "./base"; +import { RequiredError, RequestArgs } from "./base"; import { AxiosInstance } from 'axios'; /** diff --git a/configuration.ts b/configuration.ts index 9ba199b..af726ce 100644 --- a/configuration.ts +++ b/configuration.ts @@ -2,9 +2,8 @@ /* eslint-disable */ /** * VRChat API Documentation - * ![VRChat API Banner](https://vrchatapi.github.io/assets/img/api_banner_1500x400.png) # Welcome to the VRChat API Before we begin, we would like to state this is a **COMMUNITY DRIVEN PROJECT**. This means that everything you read on here was written by the community itself and is **not** officially supported by VRChat. The documentation is provided \"AS IS\", and any action you take towards VRChat is completely your own responsibility. The documentation and additional libraries SHALL ONLY be used for applications interacting with VRChat\'s API in accordance with their [Terms of Service](https://github.com/VRChatAPI), and MUST NOT be used for modifying the client, \"avatar ripping\", or other illegal activities. Malicious usage or spamming the API may result in account termination. Certain parts of the API are also more sensitive than others, for example moderation, so please tread extra carefully and read the warnings when present. ![Tupper Policy on API](https://i.imgur.com/yLlW7Ok.png) Finally, use of the API using applications other than the approved methods (website, VRChat application, Unity SDK) is not officially supported. VRChat provides no guarantee or support for external applications using the API. Access to API endpoints may break **at any time, without notice**. Therefore, please **do not ping** VRChat Staff in the VRChat Discord if you are having API problems, as they do not provide API support. We will make a best effort in keeping this documentation and associated language libraries up to date, but things might be outdated or missing. If you find that something is no longer valid, please contact us on Discord or [create an issue](https://github.com/vrchatapi/specification/issues) and tell us so we can fix it. # Getting Started The VRChat API can be used to programmatically retrieve or update information regarding your profile, friends, avatars, worlds and more. The API consists of two parts, \"Photon\" which is only used in-game, and the \"Web API\" which is used by both the game and the website. This documentation focuses only on the Web API. The API is designed around the REST ideology, providing semi-simple and usually predictable URIs to access and modify objects. Requests support standard HTTP methods like GET, PUT, POST, and DELETE and standard status codes. Response bodies are always UTF-8 encoded JSON objects, unless explicitly documented otherwise.
🛑 Warning! Do not touch Photon!
Photon is only used by the in-game client and should not be touched. Doing so may result in permanent account termination.
ℹ️ API Key and Authentication
The API Key has always been the same and is currently JlE5Jldo5Jibnk5O5hTx6XVqsJu4WJ26. Read Authentication for how to log in.
# Using the API For simply exploring what the API can do it is strongly recommended to download [Insomnia](https://insomnia.rest/download), a free and open-source API client that\'s great for sending requests to the API in an orderly fashion. Insomnia allows you to send data in the format that\'s required for VRChat\'s API. It is also possible to try out the API in your browser, by first logging in at [vrchat.com/home](https://vrchat.com/home/) and then going to [vrchat.com/api/1/auth/user](https://vrchat.com/api/1/auth/user), but the information will be much harder to work with. For more permanent operation such as software development it is instead recommended to use one of the existing language SDKs. This community project maintains API libraries in several languages, which allows you to interact with the API with simple function calls rather than having to implement the HTTP protocol yourself. Most of these libraries are automatically generated from the API specification, sometimes with additional helpful wrapper code to make usage easier. This allows them to be almost automatically updated and expanded upon as soon as a new feature is introduced in the specification itself. The libraries can be found on [GitHub](https://github.com/vrchatapi) or following: * [NodeJS (JavaScript)](https://www.npmjs.com/package/vrchat) * [Dart](https://pub.dev/packages/vrchat_dart) * [Rust](https://crates.io/crates/vrchatapi) * [C#](https://github.com/vrchatapi/vrchatapi-csharp) * [Python](https://github.com/vrchatapi/VRChatPython) # Pagination Most endpoints enforce pagination, meaning they will only return 10 entries by default, and never more than 100.
Using both the limit and offset parameters allows you to easily paginate through a large number of objects. | Query Parameter | Type | Description | | ----------|--|------- | | `limit` | integer | The number of objects to return. This value often defaults to 10. Highest limit is always 100.| | `offset` | integer | A zero-based offset from the default object sorting.| If a request returns fewer objects than the `limit` parameter, there are no more items available to return. # Contribution Do you want to get involved in the documentation effort? Do you want to help improve one of the language API libraries? This project is an [OPEN Open Source Project](https://openopensource.org)! This means that individuals making significant and valuable contributions are given commit-access to the project. It also means we are very open and welcoming of new people making contributions, unlike some more guarded open-source projects. [![Discord](https://img.shields.io/static/v1?label=vrchatapi&message=discord&color=blueviolet&style=for-the-badge)](https://discord.gg/qjZE9C9fkB) * - * The version of the OpenAPI document: 1.1.2 + * The version of the OpenAPI document: 1.2.2 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/generate.sh b/generate.sh index 8ab810c..e93b3e6 100644 --- a/generate.sh +++ b/generate.sh @@ -21,5 +21,10 @@ sed -i '/"dependencies"/a "@types/tough-cookie": "^4.0.1",' ./package.json sed -i '/"dependencies"/a "axios-cookiejar-support": "^1.0.1",' ./package.json sed -i '/"dependencies"/a "tough-cookie": "^4.0.0",' ./package.json +# Remove messily pasted markdown at top of every file +for i in *.ts; do + sed -i '/VRChat API Banner/d' $i +done + npm install npm run build \ No newline at end of file diff --git a/index.ts b/index.ts index 35fa22e..f65d0de 100644 --- a/index.ts +++ b/index.ts @@ -2,9 +2,8 @@ /* eslint-disable */ /** * VRChat API Documentation - * ![VRChat API Banner](https://vrchatapi.github.io/assets/img/api_banner_1500x400.png) # Welcome to the VRChat API Before we begin, we would like to state this is a **COMMUNITY DRIVEN PROJECT**. This means that everything you read on here was written by the community itself and is **not** officially supported by VRChat. The documentation is provided \"AS IS\", and any action you take towards VRChat is completely your own responsibility. The documentation and additional libraries SHALL ONLY be used for applications interacting with VRChat\'s API in accordance with their [Terms of Service](https://github.com/VRChatAPI), and MUST NOT be used for modifying the client, \"avatar ripping\", or other illegal activities. Malicious usage or spamming the API may result in account termination. Certain parts of the API are also more sensitive than others, for example moderation, so please tread extra carefully and read the warnings when present. ![Tupper Policy on API](https://i.imgur.com/yLlW7Ok.png) Finally, use of the API using applications other than the approved methods (website, VRChat application, Unity SDK) is not officially supported. VRChat provides no guarantee or support for external applications using the API. Access to API endpoints may break **at any time, without notice**. Therefore, please **do not ping** VRChat Staff in the VRChat Discord if you are having API problems, as they do not provide API support. We will make a best effort in keeping this documentation and associated language libraries up to date, but things might be outdated or missing. If you find that something is no longer valid, please contact us on Discord or [create an issue](https://github.com/vrchatapi/specification/issues) and tell us so we can fix it. # Getting Started The VRChat API can be used to programmatically retrieve or update information regarding your profile, friends, avatars, worlds and more. The API consists of two parts, \"Photon\" which is only used in-game, and the \"Web API\" which is used by both the game and the website. This documentation focuses only on the Web API. The API is designed around the REST ideology, providing semi-simple and usually predictable URIs to access and modify objects. Requests support standard HTTP methods like GET, PUT, POST, and DELETE and standard status codes. Response bodies are always UTF-8 encoded JSON objects, unless explicitly documented otherwise.
🛑 Warning! Do not touch Photon!
Photon is only used by the in-game client and should not be touched. Doing so may result in permanent account termination.
ℹ️ API Key and Authentication
The API Key has always been the same and is currently JlE5Jldo5Jibnk5O5hTx6XVqsJu4WJ26. Read Authentication for how to log in.
# Using the API For simply exploring what the API can do it is strongly recommended to download [Insomnia](https://insomnia.rest/download), a free and open-source API client that\'s great for sending requests to the API in an orderly fashion. Insomnia allows you to send data in the format that\'s required for VRChat\'s API. It is also possible to try out the API in your browser, by first logging in at [vrchat.com/home](https://vrchat.com/home/) and then going to [vrchat.com/api/1/auth/user](https://vrchat.com/api/1/auth/user), but the information will be much harder to work with. For more permanent operation such as software development it is instead recommended to use one of the existing language SDKs. This community project maintains API libraries in several languages, which allows you to interact with the API with simple function calls rather than having to implement the HTTP protocol yourself. Most of these libraries are automatically generated from the API specification, sometimes with additional helpful wrapper code to make usage easier. This allows them to be almost automatically updated and expanded upon as soon as a new feature is introduced in the specification itself. The libraries can be found on [GitHub](https://github.com/vrchatapi) or following: * [NodeJS (JavaScript)](https://www.npmjs.com/package/vrchat) * [Dart](https://pub.dev/packages/vrchat_dart) * [Rust](https://crates.io/crates/vrchatapi) * [C#](https://github.com/vrchatapi/vrchatapi-csharp) * [Python](https://github.com/vrchatapi/VRChatPython) # Pagination Most endpoints enforce pagination, meaning they will only return 10 entries by default, and never more than 100.
Using both the limit and offset parameters allows you to easily paginate through a large number of objects. | Query Parameter | Type | Description | | ----------|--|------- | | `limit` | integer | The number of objects to return. This value often defaults to 10. Highest limit is always 100.| | `offset` | integer | A zero-based offset from the default object sorting.| If a request returns fewer objects than the `limit` parameter, there are no more items available to return. # Contribution Do you want to get involved in the documentation effort? Do you want to help improve one of the language API libraries? This project is an [OPEN Open Source Project](https://openopensource.org)! This means that individuals making significant and valuable contributions are given commit-access to the project. It also means we are very open and welcoming of new people making contributions, unlike some more guarded open-source projects. [![Discord](https://img.shields.io/static/v1?label=vrchatapi&message=discord&color=blueviolet&style=for-the-badge)](https://discord.gg/qjZE9C9fkB) * - * The version of the OpenAPI document: 1.1.2 + * The version of the OpenAPI document: 1.2.2 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index a3a983f..3bf422a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,8 +1,146 @@ { "name": "vrchat", - "version": "1.1.2", - "lockfileVersion": 1, + "version": "1.2.2", + "lockfileVersion": 2, "requires": true, + "packages": { + "": { + "name": "vrchat", + "version": "1.2.2", + "license": "MIT", + "dependencies": { + "@types/tough-cookie": "^4.0.1", + "axios": "^0.21.1", + "axios-cookiejar-support": "^1.0.1", + "tough-cookie": "^4.0.0" + }, + "devDependencies": { + "@types/node": "^12.11.5", + "typescript": "^3.6.4" + } + }, + "node_modules/@types/node": { + "version": "12.20.19", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.19.tgz", + "integrity": "sha512-niAuZrwrjKck4+XhoCw6AAVQBENHftpXw9F4ryk66fTgYaKQ53R4FI7c9vUGGw5vQis1HKBHDR1gcYI/Bq1xvw==", + "dev": true + }, + "node_modules/@types/tough-cookie": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-4.0.1.tgz", + "integrity": "sha512-Y0K95ThC3esLEYD6ZuqNek29lNX2EM1qxV8y2FTLUB0ff5wWrk7az+mLrnNFUnaXcgKye22+sFBRXOgpPILZNg==" + }, + "node_modules/axios": { + "version": "0.21.1", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.1.tgz", + "integrity": "sha512-dKQiRHxGD9PPRIUNIWvZhPTPpl1rf/OxTYKsqKUDjBwYylTvV7SjSHJb9ratfyzM6wCdLCOYLzs73qpg5c4iGA==", + "dependencies": { + "follow-redirects": "^1.10.0" + } + }, + "node_modules/axios-cookiejar-support": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/axios-cookiejar-support/-/axios-cookiejar-support-1.0.1.tgz", + "integrity": "sha512-IZJxnAJ99XxiLqNeMOqrPbfR7fRyIfaoSLdPUf4AMQEGkH8URs0ghJK/xtqBsD+KsSr3pKl4DEQjCn834pHMig==", + "dependencies": { + "is-redirect": "^1.0.0", + "pify": "^5.0.0" + }, + "engines": { + "node": ">= 10.0.0" + }, + "peerDependencies": { + "@types/tough-cookie": ">=2.3.3", + "axios": ">=0.16.2", + "tough-cookie": ">=2.3.3" + } + }, + "node_modules/follow-redirects": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.1.tgz", + "integrity": "sha512-HWqDgT7ZEkqRzBvc2s64vSZ/hfOceEol3ac/7tKwzuvEyWx3/4UegXh5oBOIotkGsObyk3xznnSRVADBgWSQVg==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/is-redirect": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-redirect/-/is-redirect-1.0.0.tgz", + "integrity": "sha1-HQPd7VO9jbDzDCbk+V02/HyH3CQ=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/pify": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-5.0.0.tgz", + "integrity": "sha512-eW/gHNMlxdSP6dmG6uJip6FXN0EQBwm2clYYd8Wul42Cwu/DK8HEftzsapcNdYe2MfLiIwZqsDk2RDEsTE79hA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/psl": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", + "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==" + }, + "node_modules/punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "engines": { + "node": ">=6" + } + }, + "node_modules/tough-cookie": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.0.0.tgz", + "integrity": "sha512-tHdtEpQCMrc1YLrMaqXXcj6AxhYi/xgit6mZu1+EDWUn+qhUf8wMQoFIy9NXuq23zAwtcB0t/MjACGR18pcRbg==", + "dependencies": { + "psl": "^1.1.33", + "punycode": "^2.1.1", + "universalify": "^0.1.2" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/typescript": { + "version": "3.9.10", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz", + "integrity": "sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==", + "dev": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.0" + } + }, + "node_modules/universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "engines": { + "node": ">= 4.0.0" + } + } + }, "dependencies": { "@types/node": { "version": "12.20.19", diff --git a/package.json b/package.json index cfd6d2d..17d7e31 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.1.2", + "version": "1.2.2", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "keywords": [ @@ -18,9 +18,9 @@ "prepublishOnly": "npm run build" }, "dependencies": { - "tough-cookie": "^4.0.0", - "axios-cookiejar-support": "^1.0.1", - "@types/tough-cookie": "^4.0.1", +"tough-cookie": "^4.0.0", +"axios-cookiejar-support": "^1.0.1", +"@types/tough-cookie": "^4.0.1", "axios": "^0.21.1" }, "devDependencies": { From fe383a5f51b1d4bc4976469204abdfe7ee4f9563 Mon Sep 17 00:00:00 2001 From: Foorack Date: Sun, 12 Sep 2021 13:18:10 +0200 Subject: [PATCH 030/130] Upgrade Node SDK to spec 1.3.0 --- api.ts | 222 ++++++++++++++++++++++++++++++++++++++++++++-- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 +- package.json | 2 +- 7 files changed, 224 insertions(+), 12 deletions(-) diff --git a/api.ts b/api.ts index 4752d57..c8ef5b8 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.2.2 + * The version of the OpenAPI document: 1.3.0 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -2676,12 +2676,11 @@ export interface Notification { */ export enum NotificationType { - All = 'all', - Broadcast = 'broadcast', FriendRequest = 'friendRequest', Invite = 'invite', - Message = 'message', - RequestInvite = 'RequestInvite', + InviteResponse = 'inviteResponse', + RequestInvite = 'requestInvite', + RequestInviteResponse = 'requestInviteResponse', Votetokick = 'votetokick' } @@ -6499,6 +6498,82 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Sends an invite to a user. Returns the Notification of type `invite` that was sent. + * @summary Invite User + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + inviteUser: async (userId: string, options: any = {}): Promise => { + // verify required parameter 'userId' is not null or undefined + assertParamExists('inviteUser', 'userId', userId) + const localVarPath = `/invite/{userId}` + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Requests an invite from a user. Returns the Notification of type `requestInvite` that was sent. + * @summary Request Invite + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + requestInvite: async (userId: string, options: any = {}): Promise => { + // verify required parameter 'userId' is not null or undefined + assertParamExists('requestInvite', 'userId', userId) + const localVarPath = `/requestInvite/{userId}` + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -6541,6 +6616,44 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Sends a world invite to a user. + * @summary Respond Invite + * @param {string} notificationId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + respondInvite: async (notificationId: string, options: any = {}): Promise => { + // verify required parameter 'notificationId' is not null or undefined + assertParamExists('respondInvite', 'notificationId', notificationId) + const localVarPath = `/invite/{notificationId}/response` + .replace(`{${"notificationId"}}`, encodeURIComponent(String(notificationId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -6625,6 +6738,28 @@ export const InviteApiFp = function(configuration?: Configuration) { const localVarAxiosArgs = await localVarAxiosParamCreator.getInviteMessages(userId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, + /** + * Sends an invite to a user. Returns the Notification of type `invite` that was sent. + * @summary Invite User + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async inviteUser(userId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.inviteUser(userId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Requests an invite from a user. Returns the Notification of type `requestInvite` that was sent. + * @summary Request Invite + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async requestInvite(userId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.requestInvite(userId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** * Resets a single Invite Message back to it\'s original message, and then returns a list of all of them. Admin Credentials are required to update messages of other users! Resetting a message respects the rate-limit, but resetting it does not set the rate-limit to 60 like when editing it. It is possible to edit it right after resetting it. Trying to edit a message before the cooldown timer expires results in a 429 Too Fast Error. * @summary Reset Invite Message @@ -6637,6 +6772,17 @@ export const InviteApiFp = function(configuration?: Configuration) { const localVarAxiosArgs = await localVarAxiosParamCreator.resetInviteMessage(userId, messageId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, + /** + * Sends a world invite to a user. + * @summary Respond Invite + * @param {string} notificationId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async respondInvite(notificationId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.respondInvite(notificationId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** * Updates a single Invite Message and then returns a list of all of them. Admin Credentials are required to update messages of other users! Updating a message automatically sets the cooldown timer to 60 minutes. Trying to edit a message before the cooldown timer expires results in a 429 Too Fast Error. * @summary Update Invite Message @@ -6680,6 +6826,26 @@ export const InviteApiFactory = function (configuration?: Configuration, basePat getInviteMessages(userId: string, options?: any): AxiosPromise> { return localVarFp.getInviteMessages(userId, options).then((request) => request(axios, basePath)); }, + /** + * Sends an invite to a user. Returns the Notification of type `invite` that was sent. + * @summary Invite User + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + inviteUser(userId: string, options?: any): AxiosPromise { + return localVarFp.inviteUser(userId, options).then((request) => request(axios, basePath)); + }, + /** + * Requests an invite from a user. Returns the Notification of type `requestInvite` that was sent. + * @summary Request Invite + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + requestInvite(userId: string, options?: any): AxiosPromise { + return localVarFp.requestInvite(userId, options).then((request) => request(axios, basePath)); + }, /** * Resets a single Invite Message back to it\'s original message, and then returns a list of all of them. Admin Credentials are required to update messages of other users! Resetting a message respects the rate-limit, but resetting it does not set the rate-limit to 60 like when editing it. It is possible to edit it right after resetting it. Trying to edit a message before the cooldown timer expires results in a 429 Too Fast Error. * @summary Reset Invite Message @@ -6691,6 +6857,16 @@ export const InviteApiFactory = function (configuration?: Configuration, basePat resetInviteMessage(userId: string, messageId: number, options?: any): AxiosPromise> { return localVarFp.resetInviteMessage(userId, messageId, options).then((request) => request(axios, basePath)); }, + /** + * Sends a world invite to a user. + * @summary Respond Invite + * @param {string} notificationId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + respondInvite(notificationId: string, options?: any): AxiosPromise { + return localVarFp.respondInvite(notificationId, options).then((request) => request(axios, basePath)); + }, /** * Updates a single Invite Message and then returns a list of all of them. Admin Credentials are required to update messages of other users! Updating a message automatically sets the cooldown timer to 60 minutes. Trying to edit a message before the cooldown timer expires results in a 429 Too Fast Error. * @summary Update Invite Message @@ -6737,6 +6913,30 @@ export class InviteApi extends BaseAPI { return InviteApiFp(this.configuration).getInviteMessages(userId, options).then((request) => request(this.axios, this.basePath)); } + /** + * Sends an invite to a user. Returns the Notification of type `invite` that was sent. + * @summary Invite User + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof InviteApi + */ + public inviteUser(userId: string, options?: any) { + return InviteApiFp(this.configuration).inviteUser(userId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Requests an invite from a user. Returns the Notification of type `requestInvite` that was sent. + * @summary Request Invite + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof InviteApi + */ + public requestInvite(userId: string, options?: any) { + return InviteApiFp(this.configuration).requestInvite(userId, options).then((request) => request(this.axios, this.basePath)); + } + /** * Resets a single Invite Message back to it\'s original message, and then returns a list of all of them. Admin Credentials are required to update messages of other users! Resetting a message respects the rate-limit, but resetting it does not set the rate-limit to 60 like when editing it. It is possible to edit it right after resetting it. Trying to edit a message before the cooldown timer expires results in a 429 Too Fast Error. * @summary Reset Invite Message @@ -6750,6 +6950,18 @@ export class InviteApi extends BaseAPI { return InviteApiFp(this.configuration).resetInviteMessage(userId, messageId, options).then((request) => request(this.axios, this.basePath)); } + /** + * Sends a world invite to a user. + * @summary Respond Invite + * @param {string} notificationId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof InviteApi + */ + public respondInvite(notificationId: string, options?: any) { + return InviteApiFp(this.configuration).respondInvite(notificationId, options).then((request) => request(this.axios, this.basePath)); + } + /** * Updates a single Invite Message and then returns a list of all of them. Admin Credentials are required to update messages of other users! Updating a message automatically sets the cooldown timer to 60 minutes. Trying to edit a message before the cooldown timer expires results in a 429 Too Fast Error. * @summary Update Invite Message diff --git a/base.ts b/base.ts index 22548bf..0c30a4c 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.2.2 + * The version of the OpenAPI document: 1.3.0 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index 73d8e50..fad9c96 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.2.2 + * The version of the OpenAPI document: 1.3.0 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index af726ce..4694cc7 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.2.2 + * The version of the OpenAPI document: 1.3.0 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index f65d0de..b48f26b 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.2.2 + * The version of the OpenAPI document: 1.3.0 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index 3bf422a..aa6a1b5 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.2.2", + "version": "1.3.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.2.2", + "version": "1.3.0", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index 17d7e31..dff7236 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.2.2", + "version": "1.3.0", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "keywords": [ From 57a0b56248a8dfac76d9c14ae4c3ca08f67570ff Mon Sep 17 00:00:00 2001 From: Foorack Date: Thu, 16 Sep 2021 23:26:20 +0200 Subject: [PATCH 031/130] Automatically upload to NPM --- .github/upload.yaml | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 .github/upload.yaml diff --git a/.github/upload.yaml b/.github/upload.yaml new file mode 100644 index 0000000..1d9e8b8 --- /dev/null +++ b/.github/upload.yaml @@ -0,0 +1,17 @@ +on: push + +name: Upload to NPM + +jobs: + publish: + if: ${{ startsWith(github.ref, 'refs/tags/') }} + runs-on: ubuntu-latest + name: Upload to NPM + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-node@v2 + with: + node-version: '14' + - uses: JS-DevTools/npm-publish@v1 + with: + token: ${{ secrets.NPM_TOKEN }} \ No newline at end of file From 3142644cff035b57243ea81d8c281722c59c1699 Mon Sep 17 00:00:00 2001 From: Foorack Date: Thu, 16 Sep 2021 23:29:28 +0200 Subject: [PATCH 032/130] Upgrade Node SDK to spec 1.3.1 --- api.ts | 80 +++++++++++++++++++++++++++++++++++------------ base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 +-- package.json | 2 +- 7 files changed, 67 insertions(+), 27 deletions(-) diff --git a/api.ts b/api.ts index c8ef5b8..ecece90 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.3.0 + * The version of the OpenAPI document: 1.3.1 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -925,7 +925,7 @@ export interface CurrentUser { * @type {string} * @memberof CurrentUser */ - fallbackAvatar: string; + fallbackAvatar?: string; /** * * @type {string} @@ -2292,6 +2292,32 @@ export enum InviteMessageType { Message = 'message' } +/** + * + * @export + * @interface InviteRequest + */ +export interface InviteRequest { + /** + * + * @type {string} + * @memberof InviteRequest + */ + instanceId: string; +} +/** + * + * @export + * @interface InviteResponse + */ +export interface InviteResponse { + /** + * + * @type {number} + * @memberof InviteResponse + */ + responseSlot: number; +} /** * * @export @@ -3331,7 +3357,7 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf }; }, /** - * Login and/or Get user data from your VRChat account. If `Authorization` header is present then a new login session will be generated, and a new `auth` cookie is returned. **WARNING: Session Limit:** Each authentication with login credentials counts as a separate session, out of which you have a limited amount. Make sure to save and reuse the `auth` cookie whenever you can, and avoid sending the Authorization header unless strictly neccesary. While the exact number of simultaneous open sessions is secret, expect to **very fast** run into the rate-limit and be temporarily blocked from making new sessions until the old ones expire. + * This endpoint does the following two operations: 1) Checks if you are already logged in by looking for a valid `auth` cookie. If you are have a valid auth cookie then no additional auth-related actions are taken. If you are **not** logged in then it will log you in with the `Authorization` header and set the `auth` cookie. The `auth` cookie will only be sent once. 2) If logged in, this function will also return the CurrentUser object containing detailed information about the currently logged in user. **WARNING: Session Limit:** Each authentication with login credentials counts as a separate session, out of which you have a limited amount. Make sure to save and reuse the `auth` cookie if you are often restarting the program. The provided API libraries automatically save cookies during runtime, but does not persist during restart. While it can be fine to use username/password during development, expect in production to very fast run into the rate-limit and be temporarily blocked from making new sessions until older ones expire. The exact number of simultaneous sessions is unknown/undisclosed. * @summary Login and/or Get Current User Info * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -3526,7 +3552,7 @@ export const AuthenticationApiFp = function(configuration?: Configuration) { return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Login and/or Get user data from your VRChat account. If `Authorization` header is present then a new login session will be generated, and a new `auth` cookie is returned. **WARNING: Session Limit:** Each authentication with login credentials counts as a separate session, out of which you have a limited amount. Make sure to save and reuse the `auth` cookie whenever you can, and avoid sending the Authorization header unless strictly neccesary. While the exact number of simultaneous open sessions is secret, expect to **very fast** run into the rate-limit and be temporarily blocked from making new sessions until the old ones expire. + * This endpoint does the following two operations: 1) Checks if you are already logged in by looking for a valid `auth` cookie. If you are have a valid auth cookie then no additional auth-related actions are taken. If you are **not** logged in then it will log you in with the `Authorization` header and set the `auth` cookie. The `auth` cookie will only be sent once. 2) If logged in, this function will also return the CurrentUser object containing detailed information about the currently logged in user. **WARNING: Session Limit:** Each authentication with login credentials counts as a separate session, out of which you have a limited amount. Make sure to save and reuse the `auth` cookie if you are often restarting the program. The provided API libraries automatically save cookies during runtime, but does not persist during restart. While it can be fine to use username/password during development, expect in production to very fast run into the rate-limit and be temporarily blocked from making new sessions until older ones expire. The exact number of simultaneous sessions is unknown/undisclosed. * @summary Login and/or Get Current User Info * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -3598,7 +3624,7 @@ export const AuthenticationApiFactory = function (configuration?: Configuration, return localVarFp.deleteUser(userId, options).then((request) => request(axios, basePath)); }, /** - * Login and/or Get user data from your VRChat account. If `Authorization` header is present then a new login session will be generated, and a new `auth` cookie is returned. **WARNING: Session Limit:** Each authentication with login credentials counts as a separate session, out of which you have a limited amount. Make sure to save and reuse the `auth` cookie whenever you can, and avoid sending the Authorization header unless strictly neccesary. While the exact number of simultaneous open sessions is secret, expect to **very fast** run into the rate-limit and be temporarily blocked from making new sessions until the old ones expire. + * This endpoint does the following two operations: 1) Checks if you are already logged in by looking for a valid `auth` cookie. If you are have a valid auth cookie then no additional auth-related actions are taken. If you are **not** logged in then it will log you in with the `Authorization` header and set the `auth` cookie. The `auth` cookie will only be sent once. 2) If logged in, this function will also return the CurrentUser object containing detailed information about the currently logged in user. **WARNING: Session Limit:** Each authentication with login credentials counts as a separate session, out of which you have a limited amount. Make sure to save and reuse the `auth` cookie if you are often restarting the program. The provided API libraries automatically save cookies during runtime, but does not persist during restart. While it can be fine to use username/password during development, expect in production to very fast run into the rate-limit and be temporarily blocked from making new sessions until older ones expire. The exact number of simultaneous sessions is unknown/undisclosed. * @summary Login and/or Get Current User Info * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -3667,7 +3693,7 @@ export class AuthenticationApi extends BaseAPI { } /** - * Login and/or Get user data from your VRChat account. If `Authorization` header is present then a new login session will be generated, and a new `auth` cookie is returned. **WARNING: Session Limit:** Each authentication with login credentials counts as a separate session, out of which you have a limited amount. Make sure to save and reuse the `auth` cookie whenever you can, and avoid sending the Authorization header unless strictly neccesary. While the exact number of simultaneous open sessions is secret, expect to **very fast** run into the rate-limit and be temporarily blocked from making new sessions until the old ones expire. + * This endpoint does the following two operations: 1) Checks if you are already logged in by looking for a valid `auth` cookie. If you are have a valid auth cookie then no additional auth-related actions are taken. If you are **not** logged in then it will log you in with the `Authorization` header and set the `auth` cookie. The `auth` cookie will only be sent once. 2) If logged in, this function will also return the CurrentUser object containing detailed information about the currently logged in user. **WARNING: Session Limit:** Each authentication with login credentials counts as a separate session, out of which you have a limited amount. Make sure to save and reuse the `auth` cookie if you are often restarting the program. The provided API libraries automatically save cookies during runtime, but does not persist during restart. While it can be fine to use username/password during development, expect in production to very fast run into the rate-limit and be temporarily blocked from making new sessions until older ones expire. The exact number of simultaneous sessions is unknown/undisclosed. * @summary Login and/or Get Current User Info * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -6511,10 +6537,11 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio * Sends an invite to a user. Returns the Notification of type `invite` that was sent. * @summary Invite User * @param {string} userId + * @param {InviteRequest} [inviteRequest] Instance ID when inviting a user. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - inviteUser: async (userId: string, options: any = {}): Promise => { + inviteUser: async (userId: string, inviteRequest?: InviteRequest, options: any = {}): Promise => { // verify required parameter 'userId' is not null or undefined assertParamExists('inviteUser', 'userId', userId) const localVarPath = `/invite/{userId}` @@ -6536,9 +6563,12 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio + localVarHeaderParameter['Content-Type'] = 'application/json'; + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(inviteRequest, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), @@ -6629,10 +6659,11 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio * Sends a world invite to a user. * @summary Respond Invite * @param {string} notificationId + * @param {InviteResponse} [inviteResponse] Instance ID when inviting a user. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - respondInvite: async (notificationId: string, options: any = {}): Promise => { + respondInvite: async (notificationId: string, inviteResponse?: InviteResponse, options: any = {}): Promise => { // verify required parameter 'notificationId' is not null or undefined assertParamExists('respondInvite', 'notificationId', notificationId) const localVarPath = `/invite/{notificationId}/response` @@ -6654,9 +6685,12 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio + localVarHeaderParameter['Content-Type'] = 'application/json'; + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(inviteResponse, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), @@ -6742,11 +6776,12 @@ export const InviteApiFp = function(configuration?: Configuration) { * Sends an invite to a user. Returns the Notification of type `invite` that was sent. * @summary Invite User * @param {string} userId + * @param {InviteRequest} [inviteRequest] Instance ID when inviting a user. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async inviteUser(userId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.inviteUser(userId, options); + async inviteUser(userId: string, inviteRequest?: InviteRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.inviteUser(userId, inviteRequest, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** @@ -6776,11 +6811,12 @@ export const InviteApiFp = function(configuration?: Configuration) { * Sends a world invite to a user. * @summary Respond Invite * @param {string} notificationId + * @param {InviteResponse} [inviteResponse] Instance ID when inviting a user. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async respondInvite(notificationId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.respondInvite(notificationId, options); + async respondInvite(notificationId: string, inviteResponse?: InviteResponse, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.respondInvite(notificationId, inviteResponse, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** @@ -6830,11 +6866,12 @@ export const InviteApiFactory = function (configuration?: Configuration, basePat * Sends an invite to a user. Returns the Notification of type `invite` that was sent. * @summary Invite User * @param {string} userId + * @param {InviteRequest} [inviteRequest] Instance ID when inviting a user. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - inviteUser(userId: string, options?: any): AxiosPromise { - return localVarFp.inviteUser(userId, options).then((request) => request(axios, basePath)); + inviteUser(userId: string, inviteRequest?: InviteRequest, options?: any): AxiosPromise { + return localVarFp.inviteUser(userId, inviteRequest, options).then((request) => request(axios, basePath)); }, /** * Requests an invite from a user. Returns the Notification of type `requestInvite` that was sent. @@ -6861,11 +6898,12 @@ export const InviteApiFactory = function (configuration?: Configuration, basePat * Sends a world invite to a user. * @summary Respond Invite * @param {string} notificationId + * @param {InviteResponse} [inviteResponse] Instance ID when inviting a user. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - respondInvite(notificationId: string, options?: any): AxiosPromise { - return localVarFp.respondInvite(notificationId, options).then((request) => request(axios, basePath)); + respondInvite(notificationId: string, inviteResponse?: InviteResponse, options?: any): AxiosPromise { + return localVarFp.respondInvite(notificationId, inviteResponse, options).then((request) => request(axios, basePath)); }, /** * Updates a single Invite Message and then returns a list of all of them. Admin Credentials are required to update messages of other users! Updating a message automatically sets the cooldown timer to 60 minutes. Trying to edit a message before the cooldown timer expires results in a 429 Too Fast Error. @@ -6917,12 +6955,13 @@ export class InviteApi extends BaseAPI { * Sends an invite to a user. Returns the Notification of type `invite` that was sent. * @summary Invite User * @param {string} userId + * @param {InviteRequest} [inviteRequest] Instance ID when inviting a user. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof InviteApi */ - public inviteUser(userId: string, options?: any) { - return InviteApiFp(this.configuration).inviteUser(userId, options).then((request) => request(this.axios, this.basePath)); + public inviteUser(userId: string, inviteRequest?: InviteRequest, options?: any) { + return InviteApiFp(this.configuration).inviteUser(userId, inviteRequest, options).then((request) => request(this.axios, this.basePath)); } /** @@ -6954,12 +6993,13 @@ export class InviteApi extends BaseAPI { * Sends a world invite to a user. * @summary Respond Invite * @param {string} notificationId + * @param {InviteResponse} [inviteResponse] Instance ID when inviting a user. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof InviteApi */ - public respondInvite(notificationId: string, options?: any) { - return InviteApiFp(this.configuration).respondInvite(notificationId, options).then((request) => request(this.axios, this.basePath)); + public respondInvite(notificationId: string, inviteResponse?: InviteResponse, options?: any) { + return InviteApiFp(this.configuration).respondInvite(notificationId, inviteResponse, options).then((request) => request(this.axios, this.basePath)); } /** diff --git a/base.ts b/base.ts index 0c30a4c..b13fa6a 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.3.0 + * The version of the OpenAPI document: 1.3.1 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index fad9c96..eb5c621 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.3.0 + * The version of the OpenAPI document: 1.3.1 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index 4694cc7..4023b32 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.3.0 + * The version of the OpenAPI document: 1.3.1 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index b48f26b..6bb4b7e 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.3.0 + * The version of the OpenAPI document: 1.3.1 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index aa6a1b5..4e621d1 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.3.0", + "version": "1.3.1", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.3.0", + "version": "1.3.1", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index dff7236..8146dce 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.3.0", + "version": "1.3.1", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "keywords": [ From 7179bcff4f8faa79d2c85c1d839223a07569ed83 Mon Sep 17 00:00:00 2001 From: Foorack Date: Thu, 16 Sep 2021 23:34:05 +0200 Subject: [PATCH 033/130] Move upload.yaml to workflows folder --- .github/{ => workflows}/upload.yaml | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename .github/{ => workflows}/upload.yaml (100%) diff --git a/.github/upload.yaml b/.github/workflows/upload.yaml similarity index 100% rename from .github/upload.yaml rename to .github/workflows/upload.yaml From cea6230eeac8ba71330f15c2aabc008009c6a878 Mon Sep 17 00:00:00 2001 From: Foorack Date: Thu, 16 Sep 2021 23:39:33 +0200 Subject: [PATCH 034/130] Install dependencies during publish --- .github/workflows/upload.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/upload.yaml b/.github/workflows/upload.yaml index 1d9e8b8..6053ca0 100644 --- a/.github/workflows/upload.yaml +++ b/.github/workflows/upload.yaml @@ -12,6 +12,7 @@ jobs: - uses: actions/setup-node@v2 with: node-version: '14' + - run: npm install - uses: JS-DevTools/npm-publish@v1 with: token: ${{ secrets.NPM_TOKEN }} \ No newline at end of file From 595881749ad4b60db0e9921af0e31efc8467209c Mon Sep 17 00:00:00 2001 From: Foorack Date: Fri, 24 Sep 2021 19:41:20 +0200 Subject: [PATCH 035/130] Create ci.yaml --- .github/workflows/ci.yaml | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 .github/workflows/ci.yaml diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml new file mode 100644 index 0000000..54c9777 --- /dev/null +++ b/.github/workflows/ci.yaml @@ -0,0 +1,32 @@ +#on: +# repository_dispatch: +# types: [spec_release] +on: push + +name: Generate VRChat API SDK + +jobs: + generate: + runs-on: ubuntu-latest + name: Generate OpenAPI Client + steps: + - uses: actions/setup-node@v1 + with: + node-version: 14 + - uses: actions/checkout@v2 + - name: 'Cache node_modules' + uses: actions/cache@v2 + with: + path: node_modules + key: ${{ runner.os }}-node-v14-${{ hashFiles('**/generate.sh') }} + restore-keys: | + ${{ runner.os }}-node-v14 + - name: Install OpenAPI Generator CLI + run: npm install @openapitools/openapi-generator-cli + - name: Generate SDK Client + run: bash ./generate.sh + - name: Deploy SDK back into main branch + uses: JamesIves/github-pages-deploy-action@4.1.4 + with: + branch: main + folder: . \ No newline at end of file From 1b1b073e1c3cf385eb986dc9550c3f61b992b73b Mon Sep 17 00:00:00 2001 From: Foorack Date: Fri, 24 Sep 2021 19:46:45 +0200 Subject: [PATCH 036/130] ci: use local openapi-generator-cli install --- generate.sh | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/generate.sh b/generate.sh index e93b3e6..ffdb41e 100644 --- a/generate.sh +++ b/generate.sh @@ -1,7 +1,9 @@ #!/bin/bash +npm install @openapitools/openapi-generator-cli + rm *.ts -rf -openapi-generator-cli generate \ +./node_modules/\@openapitools/openapi-generator-cli/main.js generate \ -g typescript-axios \ --additional-properties=npmName=vrchat \ --git-user-id=vrchatapi \ From 908b6d91927f95b78284cf62d065bb4430bb0f99 Mon Sep 17 00:00:00 2001 From: Foorack Date: Fri, 24 Sep 2021 17:47:54 +0000 Subject: [PATCH 037/130] =?UTF-8?q?Deploying=20to=20main=20from=20@=20vrch?= =?UTF-8?q?atapi/vrchatapi-javascript@1b1b073e1c3cf385eb986dc9550c3f61b992?= =?UTF-8?q?b73b=20=F0=9F=9A=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- api.ts | 127 ++++++++++++++++++++++++++++++++++++++--- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 142 +--------------------------------------------- package.json | 8 +-- 7 files changed, 128 insertions(+), 157 deletions(-) diff --git a/api.ts b/api.ts index ecece90..f436b79 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.3.1 + * The version of the OpenAPI document: 1.3.2 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -3086,6 +3086,19 @@ export interface User { */ location: string; } +/** + * Status object representing if a queried user by username or userId exists or not. This model is primarily used by the `/auth/exists` endpoint, which in turn is used during registration. Please see the documentation on that endpoint for more information on usage. + * @export + * @interface UserExists + */ +export interface UserExists { + /** + * Status if a user exist with that username or userId. + * @type {boolean} + * @memberof UserExists + */ + userExists: boolean; +} /** * * \"online\" User is online in VRChat * \"active\" User is online, but not in VRChat * \"offline\" User is offline Always offline when returned through `getCurrentUser` (/auth/user). * @export @@ -3318,6 +3331,58 @@ export interface World { */ export const AuthenticationApiAxiosParamCreator = function (configuration?: Configuration) { return { + /** + * Checks if a user by a given `username`, `displayName` or `email` exist. This is used during registration to check if a username has already been taken, during change of displayName to check if a displayName is available, and during change of email to check if the email is already used. In the later two cases the `excludeUserId` is used to exclude oneself, otherwise the result would always be true. It is **REQUIRED** to include **AT LEAST** `username`, `displayName` **or** `email` query parameter. Although they can be combined - in addition with `excludeUserId` (generally to exclude yourself) - to further fine-tune the search. + * @summary Check User Exists + * @param {string} [email] Filter by email. + * @param {string} [displayName] Filter by displayName. + * @param {string} [userId] Filter by UserID. + * @param {string} [excludeUserId] Exclude by UserID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + checkUserExists: async (email?: string, displayName?: string, userId?: string, excludeUserId?: string, options: any = {}): Promise => { + const localVarPath = `/auth/exists`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + if (email !== undefined) { + localVarQueryParameter['email'] = email; + } + + if (displayName !== undefined) { + localVarQueryParameter['displayName'] = displayName; + } + + if (userId !== undefined) { + localVarQueryParameter['userId'] = userId; + } + + if (excludeUserId !== undefined) { + localVarQueryParameter['excludeUserId'] = excludeUserId; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, /** * Deletes the account with given ID. Normal users only have permission to delete their own account. Account deletion is 14 days from this request, and will be cancelled if you do an authenticated request with the account afterwards. **VRC+ NOTE:** Despite the 14-days cooldown, any VRC+ subscription will be cancelled **immediately**. **METHOD NOTE:** Despite this being a Delete action, the method type required is PUT. * @summary Delete User @@ -3540,6 +3605,20 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf export const AuthenticationApiFp = function(configuration?: Configuration) { const localVarAxiosParamCreator = AuthenticationApiAxiosParamCreator(configuration) return { + /** + * Checks if a user by a given `username`, `displayName` or `email` exist. This is used during registration to check if a username has already been taken, during change of displayName to check if a displayName is available, and during change of email to check if the email is already used. In the later two cases the `excludeUserId` is used to exclude oneself, otherwise the result would always be true. It is **REQUIRED** to include **AT LEAST** `username`, `displayName` **or** `email` query parameter. Although they can be combined - in addition with `excludeUserId` (generally to exclude yourself) - to further fine-tune the search. + * @summary Check User Exists + * @param {string} [email] Filter by email. + * @param {string} [displayName] Filter by displayName. + * @param {string} [userId] Filter by UserID. + * @param {string} [excludeUserId] Exclude by UserID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async checkUserExists(email?: string, displayName?: string, userId?: string, excludeUserId?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.checkUserExists(email, displayName, userId, excludeUserId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** * Deletes the account with given ID. Normal users only have permission to delete their own account. Account deletion is 14 days from this request, and will be cancelled if you do an authenticated request with the account afterwards. **VRC+ NOTE:** Despite the 14-days cooldown, any VRC+ subscription will be cancelled **immediately**. **METHOD NOTE:** Despite this being a Delete action, the method type required is PUT. * @summary Delete User @@ -3613,6 +3692,19 @@ export const AuthenticationApiFp = function(configuration?: Configuration) { export const AuthenticationApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { const localVarFp = AuthenticationApiFp(configuration) return { + /** + * Checks if a user by a given `username`, `displayName` or `email` exist. This is used during registration to check if a username has already been taken, during change of displayName to check if a displayName is available, and during change of email to check if the email is already used. In the later two cases the `excludeUserId` is used to exclude oneself, otherwise the result would always be true. It is **REQUIRED** to include **AT LEAST** `username`, `displayName` **or** `email` query parameter. Although they can be combined - in addition with `excludeUserId` (generally to exclude yourself) - to further fine-tune the search. + * @summary Check User Exists + * @param {string} [email] Filter by email. + * @param {string} [displayName] Filter by displayName. + * @param {string} [userId] Filter by UserID. + * @param {string} [excludeUserId] Exclude by UserID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + checkUserExists(email?: string, displayName?: string, userId?: string, excludeUserId?: string, options?: any): AxiosPromise { + return localVarFp.checkUserExists(email, displayName, userId, excludeUserId, options).then((request) => request(axios, basePath)); + }, /** * Deletes the account with given ID. Normal users only have permission to delete their own account. Account deletion is 14 days from this request, and will be cancelled if you do an authenticated request with the account afterwards. **VRC+ NOTE:** Despite the 14-days cooldown, any VRC+ subscription will be cancelled **immediately**. **METHOD NOTE:** Despite this being a Delete action, the method type required is PUT. * @summary Delete User @@ -3680,6 +3772,21 @@ export const AuthenticationApiFactory = function (configuration?: Configuration, * @extends {BaseAPI} */ export class AuthenticationApi extends BaseAPI { + /** + * Checks if a user by a given `username`, `displayName` or `email` exist. This is used during registration to check if a username has already been taken, during change of displayName to check if a displayName is available, and during change of email to check if the email is already used. In the later two cases the `excludeUserId` is used to exclude oneself, otherwise the result would always be true. It is **REQUIRED** to include **AT LEAST** `username`, `displayName` **or** `email` query parameter. Although they can be combined - in addition with `excludeUserId` (generally to exclude yourself) - to further fine-tune the search. + * @summary Check User Exists + * @param {string} [email] Filter by email. + * @param {string} [displayName] Filter by displayName. + * @param {string} [userId] Filter by UserID. + * @param {string} [excludeUserId] Exclude by UserID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AuthenticationApi + */ + public checkUserExists(email?: string, displayName?: string, userId?: string, excludeUserId?: string, options?: any) { + return AuthenticationApiFp(this.configuration).checkUserExists(email, displayName, userId, excludeUserId, options).then((request) => request(this.axios, this.basePath)); + } + /** * Deletes the account with given ID. Normal users only have permission to delete their own account. Account deletion is 14 days from this request, and will be cancelled if you do an authenticated request with the account afterwards. **VRC+ NOTE:** Despite the 14-days cooldown, any VRC+ subscription will be cancelled **immediately**. **METHOD NOTE:** Despite this being a Delete action, the method type required is PUT. * @summary Delete User @@ -3976,7 +4083,7 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati * @param {string} [featured] Filters on featured results. * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] * @param {'me'} [user] Set to `me` for searching own avatars. - * @param {string} [userId] Filter by author UserID + * @param {string} [userId] Filter by UserID. * @param {number} [n] The number of objects to return. * @param {'ascending' | 'descending'} [order] * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. @@ -4221,7 +4328,7 @@ export const AvatarsApiFp = function(configuration?: Configuration) { * @param {string} [featured] Filters on featured results. * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] * @param {'me'} [user] Set to `me` for searching own avatars. - * @param {string} [userId] Filter by author UserID + * @param {string} [userId] Filter by UserID. * @param {number} [n] The number of objects to return. * @param {'ascending' | 'descending'} [order] * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. @@ -4329,7 +4436,7 @@ export const AvatarsApiFactory = function (configuration?: Configuration, basePa * @param {string} [featured] Filters on featured results. * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] * @param {'me'} [user] Set to `me` for searching own avatars. - * @param {string} [userId] Filter by author UserID + * @param {string} [userId] Filter by UserID. * @param {number} [n] The number of objects to return. * @param {'ascending' | 'descending'} [order] * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. @@ -4442,7 +4549,7 @@ export class AvatarsApi extends BaseAPI { * @param {string} [featured] Filters on featured results. * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] * @param {'me'} [user] Set to `me` for searching own avatars. - * @param {string} [userId] Filter by author UserID + * @param {string} [userId] Filter by UserID. * @param {number} [n] The number of objects to return. * @param {'ascending' | 'descending'} [order] * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. @@ -9108,6 +9215,8 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; + // authentication apiKeyCookie required + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); @@ -9282,7 +9391,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio * @param {string} [featured] Filters on featured results. * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] * @param {'me'} [user] Set to `me` for searching own worlds. - * @param {string} [userId] Filter by author UserID + * @param {string} [userId] Filter by UserID. * @param {number} [n] The number of objects to return. * @param {'ascending' | 'descending'} [order] * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. @@ -9623,7 +9732,7 @@ export const WorldsApiFp = function(configuration?: Configuration) { * @param {string} [featured] Filters on featured results. * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] * @param {'me'} [user] Set to `me` for searching own worlds. - * @param {string} [userId] Filter by author UserID + * @param {string} [userId] Filter by UserID. * @param {number} [n] The number of objects to return. * @param {'ascending' | 'descending'} [order] * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. @@ -9817,7 +9926,7 @@ export const WorldsApiFactory = function (configuration?: Configuration, basePat * @param {string} [featured] Filters on featured results. * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] * @param {'me'} [user] Set to `me` for searching own worlds. - * @param {string} [userId] Filter by author UserID + * @param {string} [userId] Filter by UserID. * @param {number} [n] The number of objects to return. * @param {'ascending' | 'descending'} [order] * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. @@ -10028,7 +10137,7 @@ export class WorldsApi extends BaseAPI { * @param {string} [featured] Filters on featured results. * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] * @param {'me'} [user] Set to `me` for searching own worlds. - * @param {string} [userId] Filter by author UserID + * @param {string} [userId] Filter by UserID. * @param {number} [n] The number of objects to return. * @param {'ascending' | 'descending'} [order] * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. diff --git a/base.ts b/base.ts index b13fa6a..81e9d53 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.3.1 + * The version of the OpenAPI document: 1.3.2 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index eb5c621..143e255 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.3.1 + * The version of the OpenAPI document: 1.3.2 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index 4023b32..721f63e 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.3.1 + * The version of the OpenAPI document: 1.3.2 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index 6bb4b7e..b2ea781 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.3.1 + * The version of the OpenAPI document: 1.3.2 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index 4e621d1..913eac0 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,146 +1,8 @@ { "name": "vrchat", - "version": "1.3.1", - "lockfileVersion": 2, + "version": "1.3.2", + "lockfileVersion": 1, "requires": true, - "packages": { - "": { - "name": "vrchat", - "version": "1.3.1", - "license": "MIT", - "dependencies": { - "@types/tough-cookie": "^4.0.1", - "axios": "^0.21.1", - "axios-cookiejar-support": "^1.0.1", - "tough-cookie": "^4.0.0" - }, - "devDependencies": { - "@types/node": "^12.11.5", - "typescript": "^3.6.4" - } - }, - "node_modules/@types/node": { - "version": "12.20.19", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.19.tgz", - "integrity": "sha512-niAuZrwrjKck4+XhoCw6AAVQBENHftpXw9F4ryk66fTgYaKQ53R4FI7c9vUGGw5vQis1HKBHDR1gcYI/Bq1xvw==", - "dev": true - }, - "node_modules/@types/tough-cookie": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-4.0.1.tgz", - "integrity": "sha512-Y0K95ThC3esLEYD6ZuqNek29lNX2EM1qxV8y2FTLUB0ff5wWrk7az+mLrnNFUnaXcgKye22+sFBRXOgpPILZNg==" - }, - "node_modules/axios": { - "version": "0.21.1", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.1.tgz", - "integrity": "sha512-dKQiRHxGD9PPRIUNIWvZhPTPpl1rf/OxTYKsqKUDjBwYylTvV7SjSHJb9ratfyzM6wCdLCOYLzs73qpg5c4iGA==", - "dependencies": { - "follow-redirects": "^1.10.0" - } - }, - "node_modules/axios-cookiejar-support": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/axios-cookiejar-support/-/axios-cookiejar-support-1.0.1.tgz", - "integrity": "sha512-IZJxnAJ99XxiLqNeMOqrPbfR7fRyIfaoSLdPUf4AMQEGkH8URs0ghJK/xtqBsD+KsSr3pKl4DEQjCn834pHMig==", - "dependencies": { - "is-redirect": "^1.0.0", - "pify": "^5.0.0" - }, - "engines": { - "node": ">= 10.0.0" - }, - "peerDependencies": { - "@types/tough-cookie": ">=2.3.3", - "axios": ">=0.16.2", - "tough-cookie": ">=2.3.3" - } - }, - "node_modules/follow-redirects": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.1.tgz", - "integrity": "sha512-HWqDgT7ZEkqRzBvc2s64vSZ/hfOceEol3ac/7tKwzuvEyWx3/4UegXh5oBOIotkGsObyk3xznnSRVADBgWSQVg==", - "funding": [ - { - "type": "individual", - "url": "https://github.com/sponsors/RubenVerborgh" - } - ], - "engines": { - "node": ">=4.0" - }, - "peerDependenciesMeta": { - "debug": { - "optional": true - } - } - }, - "node_modules/is-redirect": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-redirect/-/is-redirect-1.0.0.tgz", - "integrity": "sha1-HQPd7VO9jbDzDCbk+V02/HyH3CQ=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/pify": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-5.0.0.tgz", - "integrity": "sha512-eW/gHNMlxdSP6dmG6uJip6FXN0EQBwm2clYYd8Wul42Cwu/DK8HEftzsapcNdYe2MfLiIwZqsDk2RDEsTE79hA==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/psl": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", - "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==" - }, - "node_modules/punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "engines": { - "node": ">=6" - } - }, - "node_modules/tough-cookie": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.0.0.tgz", - "integrity": "sha512-tHdtEpQCMrc1YLrMaqXXcj6AxhYi/xgit6mZu1+EDWUn+qhUf8wMQoFIy9NXuq23zAwtcB0t/MjACGR18pcRbg==", - "dependencies": { - "psl": "^1.1.33", - "punycode": "^2.1.1", - "universalify": "^0.1.2" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/typescript": { - "version": "3.9.10", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz", - "integrity": "sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==", - "dev": true, - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=4.2.0" - } - }, - "node_modules/universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "engines": { - "node": ">= 4.0.0" - } - } - }, "dependencies": { "@types/node": { "version": "12.20.19", diff --git a/package.json b/package.json index 8146dce..5cf46ed 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.3.1", + "version": "1.3.2", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "keywords": [ @@ -18,9 +18,9 @@ "prepublishOnly": "npm run build" }, "dependencies": { -"tough-cookie": "^4.0.0", -"axios-cookiejar-support": "^1.0.1", -"@types/tough-cookie": "^4.0.1", + "tough-cookie": "^4.0.0", + "axios-cookiejar-support": "^1.0.1", + "@types/tough-cookie": "^4.0.1", "axios": "^0.21.1" }, "devDependencies": { From 919a100594847e20082b45a712b36f08fcee0a0e Mon Sep 17 00:00:00 2001 From: Foorack Date: Fri, 24 Sep 2021 19:57:36 +0200 Subject: [PATCH 038/130] ci: upgrade CI to Node 16 --- .github/workflows/ci.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 54c9777..4024a07 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -12,15 +12,15 @@ jobs: steps: - uses: actions/setup-node@v1 with: - node-version: 14 + node-version: 16 - uses: actions/checkout@v2 - name: 'Cache node_modules' uses: actions/cache@v2 with: path: node_modules - key: ${{ runner.os }}-node-v14-${{ hashFiles('**/generate.sh') }} + key: ${{ runner.os }}-node-v16-${{ hashFiles('**/generate.sh') }} restore-keys: | - ${{ runner.os }}-node-v14 + ${{ runner.os }}-node-v16 - name: Install OpenAPI Generator CLI run: npm install @openapitools/openapi-generator-cli - name: Generate SDK Client From 7f87e9ea8b72555211c0b2b87d0e9fdd9f842213 Mon Sep 17 00:00:00 2001 From: Foorack Date: Fri, 24 Sep 2021 17:58:45 +0000 Subject: [PATCH 039/130] =?UTF-8?q?Deploying=20to=20main=20from=20@=20vrch?= =?UTF-8?q?atapi/vrchatapi-javascript@919a100594847e20082b45a712b36f08fcee?= =?UTF-8?q?0a0e=20=F0=9F=9A=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package-lock.json | 148 ++++++++++++++++++++++++++++++++++++++++++++-- package.json | 6 +- 2 files changed, 146 insertions(+), 8 deletions(-) diff --git a/package-lock.json b/package-lock.json index 913eac0..a0a5675 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,8 +1,146 @@ { "name": "vrchat", "version": "1.3.2", - "lockfileVersion": 1, + "lockfileVersion": 2, "requires": true, + "packages": { + "": { + "name": "vrchat", + "version": "1.3.2", + "license": "MIT", + "dependencies": { + "@types/tough-cookie": "^4.0.1", + "axios": "^0.21.1", + "axios-cookiejar-support": "^1.0.1", + "tough-cookie": "^4.0.0" + }, + "devDependencies": { + "@types/node": "^12.11.5", + "typescript": "^3.6.4" + } + }, + "node_modules/@types/node": { + "version": "12.20.19", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.19.tgz", + "integrity": "sha512-niAuZrwrjKck4+XhoCw6AAVQBENHftpXw9F4ryk66fTgYaKQ53R4FI7c9vUGGw5vQis1HKBHDR1gcYI/Bq1xvw==", + "dev": true + }, + "node_modules/@types/tough-cookie": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-4.0.1.tgz", + "integrity": "sha512-Y0K95ThC3esLEYD6ZuqNek29lNX2EM1qxV8y2FTLUB0ff5wWrk7az+mLrnNFUnaXcgKye22+sFBRXOgpPILZNg==" + }, + "node_modules/axios": { + "version": "0.21.4", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz", + "integrity": "sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==", + "dependencies": { + "follow-redirects": "^1.14.0" + } + }, + "node_modules/axios-cookiejar-support": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/axios-cookiejar-support/-/axios-cookiejar-support-1.0.1.tgz", + "integrity": "sha512-IZJxnAJ99XxiLqNeMOqrPbfR7fRyIfaoSLdPUf4AMQEGkH8URs0ghJK/xtqBsD+KsSr3pKl4DEQjCn834pHMig==", + "dependencies": { + "is-redirect": "^1.0.0", + "pify": "^5.0.0" + }, + "engines": { + "node": ">= 10.0.0" + }, + "peerDependencies": { + "@types/tough-cookie": ">=2.3.3", + "axios": ">=0.16.2", + "tough-cookie": ">=2.3.3" + } + }, + "node_modules/follow-redirects": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.1.tgz", + "integrity": "sha512-HWqDgT7ZEkqRzBvc2s64vSZ/hfOceEol3ac/7tKwzuvEyWx3/4UegXh5oBOIotkGsObyk3xznnSRVADBgWSQVg==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/is-redirect": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-redirect/-/is-redirect-1.0.0.tgz", + "integrity": "sha1-HQPd7VO9jbDzDCbk+V02/HyH3CQ=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/pify": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-5.0.0.tgz", + "integrity": "sha512-eW/gHNMlxdSP6dmG6uJip6FXN0EQBwm2clYYd8Wul42Cwu/DK8HEftzsapcNdYe2MfLiIwZqsDk2RDEsTE79hA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/psl": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", + "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==" + }, + "node_modules/punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "engines": { + "node": ">=6" + } + }, + "node_modules/tough-cookie": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.0.0.tgz", + "integrity": "sha512-tHdtEpQCMrc1YLrMaqXXcj6AxhYi/xgit6mZu1+EDWUn+qhUf8wMQoFIy9NXuq23zAwtcB0t/MjACGR18pcRbg==", + "dependencies": { + "psl": "^1.1.33", + "punycode": "^2.1.1", + "universalify": "^0.1.2" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/typescript": { + "version": "3.9.10", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz", + "integrity": "sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==", + "dev": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.0" + } + }, + "node_modules/universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "engines": { + "node": ">= 4.0.0" + } + } + }, "dependencies": { "@types/node": { "version": "12.20.19", @@ -16,11 +154,11 @@ "integrity": "sha512-Y0K95ThC3esLEYD6ZuqNek29lNX2EM1qxV8y2FTLUB0ff5wWrk7az+mLrnNFUnaXcgKye22+sFBRXOgpPILZNg==" }, "axios": { - "version": "0.21.1", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.1.tgz", - "integrity": "sha512-dKQiRHxGD9PPRIUNIWvZhPTPpl1rf/OxTYKsqKUDjBwYylTvV7SjSHJb9ratfyzM6wCdLCOYLzs73qpg5c4iGA==", + "version": "0.21.4", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz", + "integrity": "sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==", "requires": { - "follow-redirects": "^1.10.0" + "follow-redirects": "^1.14.0" } }, "axios-cookiejar-support": { diff --git a/package.json b/package.json index 5cf46ed..2619bb7 100644 --- a/package.json +++ b/package.json @@ -18,9 +18,9 @@ "prepublishOnly": "npm run build" }, "dependencies": { - "tough-cookie": "^4.0.0", - "axios-cookiejar-support": "^1.0.1", - "@types/tough-cookie": "^4.0.1", +"tough-cookie": "^4.0.0", +"axios-cookiejar-support": "^1.0.1", +"@types/tough-cookie": "^4.0.1", "axios": "^0.21.1" }, "devDependencies": { From cee20ce868628752d336276627b99746a48beffd Mon Sep 17 00:00:00 2001 From: Foorack Date: Fri, 24 Sep 2021 20:08:07 +0200 Subject: [PATCH 040/130] ci: automatic version detection --- .github/workflows/ci.yaml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 4024a07..a70b1a0 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -25,8 +25,12 @@ jobs: run: npm install @openapitools/openapi-generator-cli - name: Generate SDK Client run: bash ./generate.sh + - name: Check version number + run: | + echo "spec_version=$(grep "version:" ./openapi/openapi.yaml | cut -d " " -f 4)" >> $GITHUB_ENV - name: Deploy SDK back into main branch uses: JamesIves/github-pages-deploy-action@4.1.4 with: branch: main - folder: . \ No newline at end of file + folder: . + commit-message: "Upgrade SDK to latest spec ${{ env.action_state }}" \ No newline at end of file From 763fa0d89d52e88ebdcf1445b143994724896ba0 Mon Sep 17 00:00:00 2001 From: Foorack Date: Fri, 24 Sep 2021 20:13:12 +0200 Subject: [PATCH 041/130] ci: fix version number detection --- .github/workflows/ci.yaml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index a70b1a0..83ab2ec 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -27,10 +27,12 @@ jobs: run: bash ./generate.sh - name: Check version number run: | - echo "spec_version=$(grep "version:" ./openapi/openapi.yaml | cut -d " " -f 4)" >> $GITHUB_ENV + echo "spec_version=$(grep "version" ./package.json | cut -d "\"" -f 4)" >> $GITHUB_ENV + - name: Print version number + run: echo ${{ env.spec_version }} - name: Deploy SDK back into main branch uses: JamesIves/github-pages-deploy-action@4.1.4 with: branch: main folder: . - commit-message: "Upgrade SDK to latest spec ${{ env.action_state }}" \ No newline at end of file + commit-message: "Upgrade SDK to latest spec ${{ env.spec_version }}" \ No newline at end of file From 491532e44c7a88f0325f7d3169390ec1b8d63cc7 Mon Sep 17 00:00:00 2001 From: Foorack Date: Fri, 24 Sep 2021 20:17:49 +0200 Subject: [PATCH 042/130] ci: auto-tag --- .github/workflows/ci.yaml | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 83ab2ec..7584384 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -35,4 +35,10 @@ jobs: with: branch: main folder: . - commit-message: "Upgrade SDK to latest spec ${{ env.spec_version }}" \ No newline at end of file + commit-message: "Upgrade SDK to latest spec ${{ env.spec_version }}" + - name: Tag commit + uses: tvdias/github-tagger@v0.0.1 + with: + repo-token: "${{ secrets.GITHUB_TOKEN }}" + tag: "${{ env.spec_version }}" + commit-sha: main \ No newline at end of file From 8be455268f99378f6be259dec0ebfc4200fa4264 Mon Sep 17 00:00:00 2001 From: Foorack Date: Fri, 24 Sep 2021 20:21:01 +0200 Subject: [PATCH 043/130] ci: fix auto tagger --- .github/workflows/ci.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 7584384..e3fe0c6 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -37,7 +37,7 @@ jobs: folder: . commit-message: "Upgrade SDK to latest spec ${{ env.spec_version }}" - name: Tag commit - uses: tvdias/github-tagger@v0.0.1 + uses: tvdias/github-tagger@v0.0.2 with: repo-token: "${{ secrets.GITHUB_TOKEN }}" tag: "${{ env.spec_version }}" From 37a982dcfb623b949053f9d78c52db2b52ea0d21 Mon Sep 17 00:00:00 2001 From: Foorack Date: Fri, 24 Sep 2021 20:30:20 +0200 Subject: [PATCH 044/130] ci: remove broken auto-tag --- .github/workflows/ci.yaml | 10 ++-------- api.ts | 2 +- 2 files changed, 3 insertions(+), 9 deletions(-) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index e3fe0c6..da690b7 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -31,14 +31,8 @@ jobs: - name: Print version number run: echo ${{ env.spec_version }} - name: Deploy SDK back into main branch - uses: JamesIves/github-pages-deploy-action@4.1.4 + uses: JamesIves/github-pages-deploy-action@4.1.5 with: branch: main folder: . - commit-message: "Upgrade SDK to latest spec ${{ env.spec_version }}" - - name: Tag commit - uses: tvdias/github-tagger@v0.0.2 - with: - repo-token: "${{ secrets.GITHUB_TOKEN }}" - tag: "${{ env.spec_version }}" - commit-sha: main \ No newline at end of file + commit-message: "Upgrade SDK to latest spec ${{ env.spec_version }}" \ No newline at end of file diff --git a/api.ts b/api.ts index f436b79..1859885 100644 --- a/api.ts +++ b/api.ts @@ -2,7 +2,7 @@ /* eslint-disable */ /** * VRChat API Documentation - * + *boop * The version of the OpenAPI document: 1.3.2 * Contact: me@ruby.js.org * From dce2062ad81a0a78a9d57eb4d115b264a33f27ca Mon Sep 17 00:00:00 2001 From: Foorack Date: Fri, 24 Sep 2021 18:31:16 +0000 Subject: [PATCH 045/130] Upgrade SDK to latest spec 1.3.2 --- api.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/api.ts b/api.ts index 1859885..f436b79 100644 --- a/api.ts +++ b/api.ts @@ -2,7 +2,7 @@ /* eslint-disable */ /** * VRChat API Documentation - *boop + * * The version of the OpenAPI document: 1.3.2 * Contact: me@ruby.js.org * From 6339c883938a453e56420ce20e9d467bed0e96d1 Mon Sep 17 00:00:00 2001 From: Foorack Date: Fri, 24 Sep 2021 20:32:43 +0200 Subject: [PATCH 046/130] ci: hook auto-generator with auto-upload --- .github/workflows/ci.yaml | 8 ++++++-- .github/workflows/upload.yaml | 18 ------------------ 2 files changed, 6 insertions(+), 20 deletions(-) delete mode 100644 .github/workflows/upload.yaml diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index da690b7..848b31c 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -8,7 +8,7 @@ name: Generate VRChat API SDK jobs: generate: runs-on: ubuntu-latest - name: Generate OpenAPI Client + name: Generate VRChat API SDK steps: - uses: actions/setup-node@v1 with: @@ -35,4 +35,8 @@ jobs: with: branch: main folder: . - commit-message: "Upgrade SDK to latest spec ${{ env.spec_version }}" \ No newline at end of file + commit-message: "Upgrade Node SDK to spec ${{ env.spec_version }}" + - name: Upload to NPM + uses: JS-DevTools/npm-publish@v1 + with: + token: ${{ secrets.NPM_TOKEN }} \ No newline at end of file diff --git a/.github/workflows/upload.yaml b/.github/workflows/upload.yaml deleted file mode 100644 index 6053ca0..0000000 --- a/.github/workflows/upload.yaml +++ /dev/null @@ -1,18 +0,0 @@ -on: push - -name: Upload to NPM - -jobs: - publish: - if: ${{ startsWith(github.ref, 'refs/tags/') }} - runs-on: ubuntu-latest - name: Upload to NPM - steps: - - uses: actions/checkout@v2 - - uses: actions/setup-node@v2 - with: - node-version: '14' - - run: npm install - - uses: JS-DevTools/npm-publish@v1 - with: - token: ${{ secrets.NPM_TOKEN }} \ No newline at end of file From eab1c0c1bae817e3ad2ca4299908aa2839ee1be9 Mon Sep 17 00:00:00 2001 From: Foorack Date: Fri, 24 Sep 2021 20:35:37 +0200 Subject: [PATCH 047/130] ci: change CI trigger from push to repository_dispatch --- .github/workflows/ci.yaml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 848b31c..bca5726 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -1,7 +1,7 @@ -#on: -# repository_dispatch: -# types: [spec_release] -on: push +on: + repository_dispatch: + types: [spec_release] +#on: push name: Generate VRChat API SDK From 34afba1c4ca0cd8c8ffd9be93bbce7398176fbb1 Mon Sep 17 00:00:00 2001 From: VRCCat Date: Fri, 24 Sep 2021 19:42:55 +0000 Subject: [PATCH 048/130] Upgrade Node SDK to spec 1.3.3 --- api.ts | 8 +------- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 ++-- package.json | 2 +- 7 files changed, 8 insertions(+), 14 deletions(-) diff --git a/api.ts b/api.ts index f436b79..c42e500 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.3.2 + * The version of the OpenAPI document: 1.3.3 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -3001,12 +3001,6 @@ export interface User { * @memberof User */ currentAvatarThumbnailImageUrl: string; - /** - * - * @type {string} - * @memberof User - */ - fallbackAvatar: string; /** * * @type {UserState} diff --git a/base.ts b/base.ts index 81e9d53..bad9a06 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.3.2 + * The version of the OpenAPI document: 1.3.3 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index 143e255..d167130 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.3.2 + * The version of the OpenAPI document: 1.3.3 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index 721f63e..fb64ccc 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.3.2 + * The version of the OpenAPI document: 1.3.3 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index b2ea781..9f12a5b 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.3.2 + * The version of the OpenAPI document: 1.3.3 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index a0a5675..519278f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.3.2", + "version": "1.3.3", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.3.2", + "version": "1.3.3", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index 2619bb7..b98b8b5 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.3.2", + "version": "1.3.3", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "keywords": [ From 72d7360bfdba77c0d9854c62461eac8c9e744289 Mon Sep 17 00:00:00 2001 From: Foorack Date: Fri, 24 Sep 2021 22:03:01 +0200 Subject: [PATCH 049/130] docs: minor spacing --- generate.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/generate.sh b/generate.sh index ffdb41e..093d26b 100644 --- a/generate.sh +++ b/generate.sh @@ -3,6 +3,7 @@ npm install @openapitools/openapi-generator-cli rm *.ts -rf + ./node_modules/\@openapitools/openapi-generator-cli/main.js generate \ -g typescript-axios \ --additional-properties=npmName=vrchat \ From 8cf43bf54347064d03384e589978210e1744078d Mon Sep 17 00:00:00 2001 From: VRCCat Date: Sun, 26 Sep 2021 13:53:21 +0000 Subject: [PATCH 050/130] Upgrade Node SDK to spec 1.4.0 --- api.ts | 1624 +++++++++++++++++++++++++-------------------- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 +- package.json | 2 +- 7 files changed, 926 insertions(+), 712 deletions(-) diff --git a/api.ts b/api.ts index c42e500..fd260cc 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.3.3 + * The version of the OpenAPI document: 1.4.0 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -24,883 +24,795 @@ import axiosCookieJarSupport from "axios-cookiejar-support";axiosCookieJarSuppor /** * * @export - * @interface Avatar + * @interface APIConfig */ -export interface Avatar { - /** - * Not present from general serach `/avatars`, only on specific requests `/avatars/{avatarId}`. - * @type {string} - * @memberof Avatar - */ - assetUrl?: string; - /** - * Not present from general serach `/avatars`, only on specific requests `/avatars/{avatarId}`. **Deprecation:** `Object` has unknown usage/fields, and is always empty. Use normal `Url` field instead. - * @type {object} - * @memberof Avatar - */ - assetUrlObject?: object; - /** - * - * @type {string} - * @memberof Avatar - */ - authorId: string; - /** - * - * @type {string} - * @memberof Avatar - */ - authorName: string; - /** - * - * @type {string} - * @memberof Avatar - */ - created_at: string; +export interface APIConfig { /** - * - * @type {string} - * @memberof Avatar - */ - description: string; - /** - * + * Unknown, probably voice optimization testing * @type {boolean} - * @memberof Avatar - */ - featured: boolean; - /** - * - * @type {string} - * @memberof Avatar - */ - id: string; - /** - * - * @type {string} - * @memberof Avatar - */ - imageUrl: string; - /** - * - * @type {string} - * @memberof Avatar - */ - name: string; - /** - * - * @type {ReleaseStatus} - * @memberof Avatar + * @memberof APIConfig */ - releaseStatus: ReleaseStatus; - /** - * - * @type {Array} - * @memberof Avatar - */ - tags: Array; - /** - * - * @type {string} - * @memberof Avatar - */ - thumbnailImageUrl: string; - /** - * - * @type {Set} - * @memberof Avatar - */ - unityPackages: Set; - /** - * - * @type {string} - * @memberof Avatar - */ - unityPackageUrl: string; - /** - * - * @type {AvatarUnityPackageUrlObject} - * @memberof Avatar - * @deprecated - */ - unityPackageUrlObject: AvatarUnityPackageUrlObject; + VoiceEnableDegradation: boolean; /** - * - * @type {string} - * @memberof Avatar - */ - updated_at: string; - /** - * - * @type {number} - * @memberof Avatar - */ - version: number; -} -/** - * **Deprecation:** `Object` has unknown usage/fields, and is always empty. Use normal `Url` field instead. - * @export - * @interface AvatarUnityPackageUrlObject - */ -export interface AvatarUnityPackageUrlObject { - /** - * - * @type {string} - * @memberof AvatarUnityPackageUrlObject + * Unknown, probably voice optimization testing + * @type {boolean} + * @memberof APIConfig */ - unityPackageUrl?: string; -} -/** - * - * @export - * @interface Config - */ -export interface Config { + VoiceEnableReceiverLimiting: boolean; /** * VRChat\'s office address * @type {string} - * @memberof Config + * @memberof APIConfig */ address: string; /** * Public Announcements - * @type {Set} - * @memberof Config + * @type {Set} + * @memberof APIConfig */ - announcements: Set; + announcements: Set; /** * apiKey to be used for all other requests * @type {string} - * @memberof Config + * @memberof APIConfig */ apiKey: string; /** * Game name * @type {string} - * @memberof Config + * @memberof APIConfig * @deprecated */ appName: string; /** * Build tag of the API server * @type {string} - * @memberof Config + * @memberof APIConfig */ buildVersionTag: string; /** * apiKey to be used for all other requests * @type {string} - * @memberof Config + * @memberof APIConfig */ clientApiKey: string; /** * Unknown * @type {number} - * @memberof Config + * @memberof APIConfig */ - clientBPSCeiling?: number; + clientBPSCeiling: number; /** * Unknown * @type {number} - * @memberof Config + * @memberof APIConfig */ - clientDisconnectTimeout?: number; + clientDisconnectTimeout: number; /** * Unknown * @type {number} - * @memberof Config + * @memberof APIConfig */ - clientReservedPlayerBPS?: number; + clientReservedPlayerBPS: number; /** * Unknown * @type {number} - * @memberof Config + * @memberof APIConfig */ - clientSentCountAllowance?: number; + clientSentCountAllowance: number; /** * VRChat\'s contact email * @type {string} - * @memberof Config + * @memberof APIConfig */ contactEmail: string; /** * VRChat\'s copyright-issues-related email * @type {string} - * @memberof Config + * @memberof APIConfig */ copyrightEmail: string; /** * Current version number of the Terms of Service * @type {number} - * @memberof Config + * @memberof APIConfig */ currentTOSVersion: number; /** * * @type {string} - * @memberof Config + * @memberof APIConfig */ defaultAvatar: string; /** * * @type {DeploymentGroup} - * @memberof Config + * @memberof APIConfig */ deploymentGroup: DeploymentGroup; /** * Version number for game development build * @type {string} - * @memberof Config + * @memberof APIConfig * @deprecated */ devAppVersionStandalone: string; /** * Developer Download link * @type {string} - * @memberof Config + * @memberof APIConfig * @deprecated */ devDownloadLinkWindows: string; /** * Link to download the development SDK, use downloadUrls instead * @type {string} - * @memberof Config + * @memberof APIConfig * @deprecated */ devSdkUrl: string; /** * Version of the development SDK * @type {string} - * @memberof Config + * @memberof APIConfig * @deprecated */ devSdkVersion: string; /** * Version number for server development build * @type {string} - * @memberof Config + * @memberof APIConfig * @deprecated */ devServerVersionStandalone: string; + /** + * Unknown, \"dis\" maybe for disconnect? + * @type {string} + * @memberof APIConfig + */ + dis_countdown: string; /** * Toggles if copying avatars should be disabled * @type {boolean} - * @memberof Config + * @memberof APIConfig */ disableAvatarCopying: boolean; /** * Toggles if avatar gating should be disabled. Avatar gating restricts uploading of avatars to people with the `system_avatar_access` Tag or `admin_avatar_access` Tag * @type {boolean} - * @memberof Config + * @memberof APIConfig */ disableAvatarGating: boolean; /** * Toggles if the Community Labs should be disabled * @type {boolean} - * @memberof Config + * @memberof APIConfig */ disableCommunityLabs: boolean; /** * Toggles if promotion out of Community Labs should be disabled * @type {boolean} - * @memberof Config + * @memberof APIConfig */ disableCommunityLabsPromotion: boolean; /** * Unknown * @type {boolean} - * @memberof Config + * @memberof APIConfig */ - disableEmail?: boolean; + disableEmail: boolean; /** - * Toggles if Analytics should be disabled (this sreportedly not used in the Client) + * Toggles if Analytics should be disabled. * @type {boolean} - * @memberof Config + * @memberof APIConfig */ disableEventStream: boolean; /** * Toggles if feedback gating should be disabled. Feedback gating restricts submission of feedback (reporting a World or User) to people with the `system_feedback_access` Tag. * @type {boolean} - * @memberof Config + * @memberof APIConfig */ disableFeedbackGating: boolean; + /** + * Unknown, probably toggles compilation of frontend web builds? So internal flag? + * @type {boolean} + * @memberof APIConfig + */ + disableFrontendBuilds: boolean; /** * Unknown * @type {boolean} - * @memberof Config + * @memberof APIConfig + */ + disableHello: boolean; + /** + * Toggles if signing up for Subscriptions in Oculus is disabled or not. + * @type {boolean} + * @memberof APIConfig */ - disableHello?: boolean; + disableOculusSubs: boolean; /** - * Toggles if new user account registration should be disabled + * Toggles if new user account registration should be disabled. * @type {boolean} - * @memberof Config + * @memberof APIConfig */ disableRegistration: boolean; /** * Toggles if Steam Networking should be disabled. VRChat these days uses Photon Unity Networking (PUN) instead. * @type {boolean} - * @memberof Config + * @memberof APIConfig */ disableSteamNetworking: boolean; /** * Toggles if 2FA should be disabled. * @type {boolean} - * @memberof Config + * @memberof APIConfig * @deprecated */ disableTwoFactorAuth: boolean; /** * Toggles if Udon should be universally disabled in-game. * @type {boolean} - * @memberof Config + * @memberof APIConfig */ disableUdon: boolean; /** * Toggles if account upgrading \"linking with Steam/Oculus\" should be disabled. * @type {boolean} - * @memberof Config + * @memberof APIConfig */ disableUpgradeAccount: boolean; /** * Download link for game on the Oculus Rift website. * @type {string} - * @memberof Config + * @memberof APIConfig */ downloadLinkWindows: string; /** * - * @type {ConfigDownloadUrls} - * @memberof Config + * @type {DownloadURLList} + * @memberof APIConfig */ - downloadUrls: ConfigDownloadUrls; + downloadUrls: DownloadURLList; /** * Array of DynamicWorldRow objects, used by the game to display the list of world rows - * @type {Set} - * @memberof Config + * @type {Set} + * @memberof APIConfig */ - dynamicWorldRows: Set; + dynamicWorldRows: Set; /** * - * @type {ConfigEvents} - * @memberof Config + * @type {APIEventConfig} + * @memberof APIConfig */ - events: ConfigEvents; + events: APIEventConfig; /** * Unknown * @type {string} - * @memberof Config + * @memberof APIConfig * @deprecated */ gearDemoRoomId: string; /** - * Redirect target if you try to open the base API domain in your browser + * * @type {string} - * @memberof Config + * @memberof APIConfig */ - homepageRedirectTarget: string; + homeWorldId: string; /** - * + * Redirect target if you try to open the base API domain in your browser * @type {string} - * @memberof Config + * @memberof APIConfig */ - homeWorldId: string; + homepageRedirectTarget: string; /** * * @type {string} - * @memberof Config + * @memberof APIConfig */ hubWorldId: string; /** * VRChat\'s job application email * @type {string} - * @memberof Config + * @memberof APIConfig */ jobsEmail: string; /** * MOTD * @type {string} - * @memberof Config + * @memberof APIConfig * @deprecated */ messageOfTheDay: string; /** * VRChat\'s moderation related email * @type {string} - * @memberof Config + * @memberof APIConfig */ moderationEmail: string; /** * Unknown * @type {number} - * @memberof Config + * @memberof APIConfig */ moderationQueryPeriod: number; /** * Used in-game to notify a user they aren\'t allowed to select avatars in private worlds * @type {string} - * @memberof Config + * @memberof APIConfig */ notAllowedToSelectAvatarInPrivateWorldMessage: string; /** * Extra [plugin](https://doc.photonengine.com/en-us/server/current/plugins/manual) to run in each instance * @type {string} - * @memberof Config + * @memberof APIConfig */ plugin: string; /** * Version number for game release build * @type {string} - * @memberof Config + * @memberof APIConfig * @deprecated */ releaseAppVersionStandalone: string; /** * Link to download the release SDK * @type {string} - * @memberof Config + * @memberof APIConfig * @deprecated */ releaseSdkUrl: string; /** * Version of the release SDK * @type {string} - * @memberof Config + * @memberof APIConfig * @deprecated */ releaseSdkVersion: string; /** * Version number for server release build * @type {string} - * @memberof Config + * @memberof APIConfig * @deprecated */ releaseServerVersionStandalone: string; /** * Link to the developer FAQ * @type {string} - * @memberof Config + * @memberof APIConfig */ sdkDeveloperFaqUrl: string; /** * Link to the official VRChat Discord * @type {string} - * @memberof Config + * @memberof APIConfig */ sdkDiscordUrl: string; /** * Used in the SDK to notify a user they aren\'t allowed to upload avatars/worlds yet * @type {string} - * @memberof Config + * @memberof APIConfig */ sdkNotAllowedToPublishMessage: string; /** * Unity version supported by the SDK * @type {string} - * @memberof Config + * @memberof APIConfig */ sdkUnityVersion: string; /** * Server name of the API server currently responding * @type {string} - * @memberof Config + * @memberof APIConfig */ serverName: string; /** * VRChat\'s support email * @type {string} - * @memberof Config + * @memberof APIConfig */ supportEmail: string; /** * * @type {string} - * @memberof Config + * @memberof APIConfig */ timeOutWorldId: string; /** * * @type {string} - * @memberof Config + * @memberof APIConfig */ tutorialWorldId: string; /** * Unknown * @type {number} - * @memberof Config + * @memberof APIConfig */ updateRateMsMaximum: number; /** * Unknown * @type {number} - * @memberof Config + * @memberof APIConfig */ updateRateMsMinimum: number; /** * Unknown * @type {number} - * @memberof Config + * @memberof APIConfig */ updateRateMsNormal: number; /** * Unknown * @type {number} - * @memberof Config + * @memberof APIConfig */ updateRateMsUdonManual: number; /** * Unknown * @type {number} - * @memberof Config + * @memberof APIConfig */ uploadAnalysisPercent: number; /** * List of allowed URLs that bypass the \"Allow untrusted URL\'s\" setting in-game * @type {Array} - * @memberof Config + * @memberof APIConfig */ urlList: Array; /** * Unknown * @type {boolean} - * @memberof Config + * @memberof APIConfig */ useReliableUdpForVoice: boolean; /** * Unknown * @type {number} - * @memberof Config + * @memberof APIConfig */ userUpdatePeriod: number; /** * Unknown * @type {number} - * @memberof Config + * @memberof APIConfig */ userVerificationDelay: number; /** * Unknown * @type {number} - * @memberof Config + * @memberof APIConfig */ userVerificationRetry: number; /** * Unknown * @type {number} - * @memberof Config + * @memberof APIConfig */ userVerificationTimeout: number; /** * Download link for game on the Steam website. * @type {string} - * @memberof Config + * @memberof APIConfig */ viveWindowsUrl: string; /** * List of allowed URLs that are allowed to host avatar assets * @type {Array} - * @memberof Config + * @memberof APIConfig */ whiteListedAssetUrls: Array; /** * Unknown * @type {number} - * @memberof Config + * @memberof APIConfig */ worldUpdatePeriod: number; /** * Currently used youtube-dl.exe hash in SHA-256-delimited format * @type {string} - * @memberof Config + * @memberof APIConfig */ youtubedl_hash: string; /** * Currently used youtube-dl.exe version * @type {string} - * @memberof Config + * @memberof APIConfig */ youtubedl_version: string; } -/** - * Public Announcement - * @export - * @interface ConfigAnnouncements - */ -export interface ConfigAnnouncements { - /** - * Announcement name - * @type {string} - * @memberof ConfigAnnouncements - */ - name: string; - /** - * Announcement text - * @type {string} - * @memberof ConfigAnnouncements - */ - text: string; -} -/** - * Download links for various development assets - * @export - * @interface ConfigDownloadUrls - */ -export interface ConfigDownloadUrls { - /** - * Download link for legacy SDK2 - * @type {string} - * @memberof ConfigDownloadUrls - * @deprecated - */ - sdk2: string; - /** - * Download link for SDK3 for Avatars - * @type {string} - * @memberof ConfigDownloadUrls - */ - sdk3_avatars: string; - /** - * Download link for SDK3 for Worlds - * @type {string} - * @memberof ConfigDownloadUrls - */ - sdk3_worlds: string; -} -/** - * - * @export - * @interface ConfigDynamicWorldRows - */ -export interface ConfigDynamicWorldRows { - /** - * - * @type {number} - * @memberof ConfigDynamicWorldRows - */ - index: number; - /** - * - * @type {string} - * @memberof ConfigDynamicWorldRows - */ - name: string; - /** - * - * @type {string} - * @memberof ConfigDynamicWorldRows - */ - platform: string; - /** - * - * @type {string} - * @memberof ConfigDynamicWorldRows - */ - sortHeading: string; - /** - * - * @type {string} - * @memberof ConfigDynamicWorldRows - */ - sortOrder: string; - /** - * - * @type {string} - * @memberof ConfigDynamicWorldRows - */ - sortOwnership: string; - /** - * Tag to filter worlds for this row - * @type {string} - * @memberof ConfigDynamicWorldRows - */ - tag?: string; -} /** * * @export - * @interface ConfigEvents + * @interface APIEventConfig */ -export interface ConfigEvents { +export interface APIEventConfig { /** * Unknown * @type {number} - * @memberof ConfigEvents + * @memberof APIEventConfig */ distanceClose: number; /** * Unknown * @type {number} - * @memberof ConfigEvents + * @memberof APIEventConfig */ distanceFactor: number; /** * Unknown * @type {number} - * @memberof ConfigEvents + * @memberof APIEventConfig */ distanceFar: number; /** * Unknown * @type {number} - * @memberof ConfigEvents + * @memberof APIEventConfig */ groupDistance: number; /** * Unknown * @type {number} - * @memberof ConfigEvents + * @memberof APIEventConfig */ maximumBunchSize: number; /** * Unknown * @type {number} - * @memberof ConfigEvents + * @memberof APIEventConfig */ notVisibleFactor: number; /** * Unknown * @type {number} - * @memberof ConfigEvents + * @memberof APIEventConfig */ playerOrderBucketSize: number; /** * Unknown * @type {number} - * @memberof ConfigEvents + * @memberof APIEventConfig */ playerOrderFactor: number; /** * Unknown * @type {number} - * @memberof ConfigEvents + * @memberof APIEventConfig */ slowUpdateFactorThreshold: number; /** * Unknown * @type {number} - * @memberof ConfigEvents + * @memberof APIEventConfig */ viewSegmentLength: number; } /** * * @export - * @interface CurrentUser + * @interface Avatar */ -export interface CurrentUser { +export interface Avatar { /** - * + * Not present from general serach `/avatars`, only on specific requests `/avatars/{avatarId}`. * @type {string} - * @memberof CurrentUser + * @memberof Avatar */ - id: string; + assetUrl?: string; + /** + * Not present from general serach `/avatars`, only on specific requests `/avatars/{avatarId}`. **Deprecation:** `Object` has unknown usage/fields, and is always empty. Use normal `Url` field instead. + * @type {object} + * @memberof Avatar + */ + assetUrlObject?: object; /** * * @type {string} - * @memberof CurrentUser + * @memberof Avatar */ - username: string; + authorId: string; /** * * @type {string} - * @memberof CurrentUser + * @memberof Avatar */ - displayName: string; + authorName: string; /** * * @type {string} - * @memberof CurrentUser + * @memberof Avatar */ - userIcon: string; + created_at: string; /** * * @type {string} - * @memberof CurrentUser + * @memberof Avatar */ - bio: string; + description: string; /** * - * @type {Array} - * @memberof CurrentUser + * @type {boolean} + * @memberof Avatar */ - bioLinks: Array; + featured: boolean; /** * * @type {string} - * @memberof CurrentUser + * @memberof Avatar */ - profilePicOverride: string; + id: string; + /** + * + * @type {string} + * @memberof Avatar + */ + imageUrl: string; + /** + * + * @type {string} + * @memberof Avatar + */ + name: string; + /** + * + * @type {ReleaseStatus} + * @memberof Avatar + */ + releaseStatus: ReleaseStatus; + /** + * + * @type {Array} + * @memberof Avatar + */ + tags: Array; /** * * @type {string} + * @memberof Avatar + */ + thumbnailImageUrl: string; + /** + * + * @type {string} + * @memberof Avatar + */ + unityPackageUrl: string; + /** + * + * @type {AvatarUnityPackageUrlObject} + * @memberof Avatar + * @deprecated + */ + unityPackageUrlObject: AvatarUnityPackageUrlObject; + /** + * + * @type {Set} + * @memberof Avatar + */ + unityPackages: Set; + /** + * + * @type {string} + * @memberof Avatar + */ + updated_at: string; + /** + * + * @type {number} + * @memberof Avatar + */ + version: number; +} +/** + * **Deprecation:** `Object` has unknown usage/fields, and is always empty. Use normal `Url` field instead. + * @export + * @interface AvatarUnityPackageUrlObject + */ +export interface AvatarUnityPackageUrlObject { + /** + * + * @type {string} + * @memberof AvatarUnityPackageUrlObject + */ + unityPackageUrl?: string; +} +/** + * + * @export + * @interface CurrentUser + */ +export interface CurrentUser { + /** + * + * @type {number} * @memberof CurrentUser */ - statusDescription: string; + acceptedTOSVersion: number; /** * - * @type {Array} + * @type {string} * @memberof CurrentUser */ - pastDisplayNames: Array; + accountDeletionDate?: string | null; /** * - * @type {boolean} + * @type {Array} * @memberof CurrentUser */ - hasEmail: boolean; + activeFriends?: Array; /** * * @type {boolean} * @memberof CurrentUser */ - hasPendingEmail: boolean; + allowAvatarCopying: boolean; /** * * @type {string} * @memberof CurrentUser */ - obfuscatedEmail: string; + bio: string; + /** + * + * @type {Array} + * @memberof CurrentUser + */ + bioLinks: Array; /** * * @type {string} * @memberof CurrentUser */ - obfuscatedPendingEmail: string; + currentAvatar: string; /** * - * @type {boolean} + * @type {string} * @memberof CurrentUser */ - emailVerified: boolean; + currentAvatarAssetUrl: string; /** * - * @type {boolean} + * @type {string} * @memberof CurrentUser */ - hasBirthday: boolean; + currentAvatarImageUrl: string; /** * - * @type {boolean} + * @type {string} * @memberof CurrentUser */ - unsubscribe: boolean; + currentAvatarThumbnailImageUrl: string; /** * - * @type {Array} + * @type {string} * @memberof CurrentUser */ - statusHistory: Array; + date_joined: string; + /** + * + * @type {DeveloperType} + * @memberof CurrentUser + */ + developerType: DeveloperType; + /** + * + * @type {string} + * @memberof CurrentUser + */ + displayName: string; /** * * @type {boolean} * @memberof CurrentUser */ - statusFirstTime: boolean; + emailVerified: boolean; /** * - * @type {Array} + * @type {string} * @memberof CurrentUser */ - friends: Array; + fallbackAvatar?: string; /** * Always empty array. * @type {Array} @@ -913,115 +825,115 @@ export interface CurrentUser { * @type {string} * @memberof CurrentUser */ - currentAvatarImageUrl: string; + friendKey: string; /** * - * @type {string} + * @type {Array} * @memberof CurrentUser */ - currentAvatarThumbnailImageUrl: string; + friends: Array; /** * - * @type {string} + * @type {boolean} * @memberof CurrentUser */ - fallbackAvatar?: string; + hasBirthday: boolean; /** * - * @type {string} + * @type {boolean} * @memberof CurrentUser */ - currentAvatar: string; + hasEmail: boolean; /** * - * @type {string} + * @type {boolean} * @memberof CurrentUser */ - currentAvatarAssetUrl: string; + hasLoggedInFromClient: boolean; /** * - * @type {string} + * @type {boolean} * @memberof CurrentUser */ - accountDeletionDate?: string | null; + hasPendingEmail: boolean; /** * - * @type {number} + * @type {string} * @memberof CurrentUser */ - acceptedTOSVersion: number; + homeLocation: string; /** * * @type {string} * @memberof CurrentUser */ - steamId: string; + id: string; /** * - * @type {object} + * @type {boolean} * @memberof CurrentUser */ - steamDetails: object; + isFriend: boolean; /** * * @type {string} * @memberof CurrentUser */ - oculusId: string; + last_login: string; /** - * - * @type {boolean} + * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. + * @type {string} * @memberof CurrentUser */ - hasLoggedInFromClient: boolean; + last_platform: string; /** * * @type {string} * @memberof CurrentUser */ - homeLocation: string; + obfuscatedEmail: string; /** * - * @type {boolean} + * @type {string} * @memberof CurrentUser */ - twoFactorAuthEnabled: boolean; + obfuscatedPendingEmail: string; /** * - * @type {UserState} + * @type {string} * @memberof CurrentUser */ - state: UserState; + oculusId: string; /** * * @type {Array} * @memberof CurrentUser */ - tags: Array; + offlineFriends?: Array; /** * - * @type {DeveloperType} + * @type {Array} * @memberof CurrentUser */ - developerType: DeveloperType; + onlineFriends?: Array; /** * - * @type {string} + * @type {Array} * @memberof CurrentUser */ - last_login: string; + pastDisplayNames: Array; /** - * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. + * * @type {string} * @memberof CurrentUser */ - last_platform: string; + profilePicOverride: string; /** * - * @type {boolean} + * @type {UserState} * @memberof CurrentUser */ - allowAvatarCopying: boolean; + state: UserState; /** * * @type {UserStatus} @@ -1033,37 +945,61 @@ export interface CurrentUser { * @type {string} * @memberof CurrentUser */ - date_joined: string; + statusDescription: string; /** * * @type {boolean} * @memberof CurrentUser */ - isFriend: boolean; + statusFirstTime: boolean; + /** + * + * @type {Array} + * @memberof CurrentUser + */ + statusHistory: Array; + /** + * + * @type {object} + * @memberof CurrentUser + */ + steamDetails: object; /** * * @type {string} * @memberof CurrentUser */ - friendKey: string; + steamId: string; /** * * @type {Array} * @memberof CurrentUser */ - onlineFriends?: Array; + tags: Array; /** * - * @type {Array} + * @type {boolean} * @memberof CurrentUser */ - activeFriends?: Array; + twoFactorAuthEnabled: boolean; /** * - * @type {Array} + * @type {boolean} * @memberof CurrentUser */ - offlineFriends?: Array; + unsubscribe: boolean; + /** + * + * @type {string} + * @memberof CurrentUser + */ + userIcon: string; + /** + * + * @type {string} + * @memberof CurrentUser + */ + username: string; } /** * Used to identify which API deployment cluster is currently responding. `blue` and `green` are used by Production. `grape`and `cherry` are used during Development. [Blue Green Deployment by Martin Fowler](https://martinfowler.com/bliki/BlueGreenDeployment.html) @@ -1090,7 +1026,82 @@ export enum DeveloperType { Internal = 'internal', Moderator = 'moderator' } - + +/** + * Download links for various development assets. + * @export + * @interface DownloadURLList + */ +export interface DownloadURLList { + /** + * Download link for legacy SDK2 + * @type {string} + * @memberof DownloadURLList + * @deprecated + */ + sdk2: string; + /** + * Download link for SDK3 for Avatars + * @type {string} + * @memberof DownloadURLList + */ + sdk3_avatars: string; + /** + * Download link for SDK3 for Worlds + * @type {string} + * @memberof DownloadURLList + */ + sdk3_worlds: string; +} +/** + * + * @export + * @interface DynamicWorldRow + */ +export interface DynamicWorldRow { + /** + * + * @type {number} + * @memberof DynamicWorldRow + */ + index: number; + /** + * + * @type {string} + * @memberof DynamicWorldRow + */ + name: string; + /** + * + * @type {string} + * @memberof DynamicWorldRow + */ + platform: string; + /** + * + * @type {string} + * @memberof DynamicWorldRow + */ + sortHeading: string; + /** + * + * @type {string} + * @memberof DynamicWorldRow + */ + sortOrder: string; + /** + * + * @type {string} + * @memberof DynamicWorldRow + */ + sortOwnership: string; + /** + * Tag to filter worlds for this row. Not always present. + * @type {string} + * @memberof DynamicWorldRow + */ + tag?: string; +} /** * * @export @@ -1098,29 +1109,29 @@ export enum DeveloperType { */ export interface Favorite { /** - * + * MUST be either AvatarID, UserID or WorldID. * @type {string} * @memberof Favorite */ - id: string; + favoriteId: string; /** * - * @type {FavoriteType} - * @memberof Favorite - */ - type: FavoriteType; - /** - * MUST be either AvatarID, UserID or WorldID. * @type {string} * @memberof Favorite */ - favoriteId: string; + id: string; /** * * @type {Array} * @memberof Favorite */ tags: Array; + /** + * + * @type {FavoriteType} + * @memberof Favorite + */ + type: FavoriteType; } /** * @@ -1128,6 +1139,12 @@ export interface Favorite { * @interface FavoriteGroup */ export interface FavoriteGroup { + /** + * + * @type {string} + * @memberof FavoriteGroup + */ + displayName: string; /** * * @type {string} @@ -1139,7 +1156,7 @@ export interface FavoriteGroup { * @type {string} * @memberof FavoriteGroup */ - ownerId: string; + name: string; /** * * @type {string} @@ -1151,13 +1168,13 @@ export interface FavoriteGroup { * @type {string} * @memberof FavoriteGroup */ - name: string; + ownerId: string; /** * - * @type {string} + * @type {Array} * @memberof FavoriteGroup */ - displayName: string; + tags: Array; /** * * @type {FavoriteType} @@ -1170,12 +1187,6 @@ export interface FavoriteGroup { * @memberof FavoriteGroup */ visibility: FavoriteGroupVisibility; - /** - * - * @type {Array} - * @memberof FavoriteGroup - */ - tags: Array; } /** * @@ -1212,13 +1223,13 @@ export interface FileData { * @type {string} * @memberof FileData */ - fileName: string; + category: FileDataCategoryEnum; /** * * @type {string} * @memberof FileData */ - url: string; + fileName: string; /** * * @type {string} @@ -1242,13 +1253,13 @@ export interface FileData { * @type {string} * @memberof FileData */ - category: FileDataCategoryEnum; + uploadId: string; /** * * @type {string} * @memberof FileData */ - uploadId: string; + url: string; } /** @@ -1280,23 +1291,23 @@ export enum FileStatus { */ export interface FileVersion { /** - * Incremental version counter, can only be increased. - * @type {number} + * + * @type {string} * @memberof FileVersion */ - version: number; + created_at: string; /** - * - * @type {FileStatus} + * Usually only present if `true` + * @type {boolean} * @memberof FileVersion */ - status: FileStatus; + deleted?: boolean; /** * - * @type {string} + * @type {FileData} * @memberof FileVersion */ - created_at: string; + delta?: FileData; /** * * @type {FileData} @@ -1308,19 +1319,19 @@ export interface FileVersion { * @type {FileData} * @memberof FileVersion */ - delta?: FileData; + signature?: FileData; /** * - * @type {FileData} + * @type {FileStatus} * @memberof FileVersion */ - signature?: FileData; + status: FileStatus; /** - * Usually only present if `true` - * @type {boolean} + * Incremental version counter, can only be increased. + * @type {number} * @memberof FileVersion */ - deleted?: boolean; + version: number; } /** * @@ -1333,19 +1344,19 @@ export interface FriendStatus { * @type {boolean} * @memberof FriendStatus */ - isFriend: boolean; + incomingRequest: boolean; /** * * @type {boolean} * @memberof FriendStatus */ - outgoingRequest: boolean; + isFriend: boolean; /** * * @type {boolean} * @memberof FriendStatus */ - incomingRequest: boolean; + outgoingRequest: boolean; } /** * @@ -2099,10 +2110,10 @@ export interface Instance { capacity: number; /** * - * @type {string} + * @type {number} * @memberof Instance */ - clientNumber: string; + clientNumber: number; /** * * @type {boolean} @@ -2241,16 +2252,16 @@ export interface InstancePlatforms { export interface InviteMessage { /** * - * @type {string} + * @type {boolean} * @memberof InviteMessage */ - id: string; + canBeUpdated: boolean; /** * - * @type {number} + * @type {string} * @memberof InviteMessage */ - slot: number; + id: string; /** * * @type {string} @@ -2264,23 +2275,23 @@ export interface InviteMessage { */ messageType: InviteMessageType; /** - * - * @type {string} + * Changes to 60 when updated, although probably server-side configurable. + * @type {number} * @memberof InviteMessage */ - updatedAt: string; + remainingCooldownMinutes: number; /** - * Changes to 60 when updated, although probably server-side configurable. + * * @type {number} * @memberof InviteMessage */ - remainingCooldownMinutes: number; + slot: number; /** * - * @type {boolean} + * @type {string} * @memberof InviteMessage */ - canBeUpdated: boolean; + updatedAt: string; } /** * @@ -2348,91 +2359,91 @@ export interface LimitedUser { * @type {string} * @memberof LimitedUser */ - id: string; + bio?: string; /** * * @type {string} * @memberof LimitedUser */ - username: string; + currentAvatarImageUrl: string; /** * * @type {string} * @memberof LimitedUser */ - displayName: string; + currentAvatarThumbnailImageUrl: string; /** * - * @type {string} + * @type {DeveloperType} * @memberof LimitedUser */ - bio?: string; + developerType: DeveloperType; /** * * @type {string} * @memberof LimitedUser */ - userIcon: string; + displayName: string; /** * * @type {string} * @memberof LimitedUser */ - profilePicOverride: string; + fallbackAvatar: string; /** * * @type {string} * @memberof LimitedUser */ - statusDescription: string; + id: string; /** * - * @type {string} + * @type {boolean} * @memberof LimitedUser */ - currentAvatarImageUrl: string; + isFriend: boolean; /** - * + * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. * @type {string} * @memberof LimitedUser */ - currentAvatarThumbnailImageUrl: string; + last_platform: string; /** * * @type {string} * @memberof LimitedUser */ - fallbackAvatar: string; + profilePicOverride: string; /** * - * @type {DeveloperType} + * @type {UserStatus} * @memberof LimitedUser */ - developerType: DeveloperType; + status: UserStatus; /** - * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. + * * @type {string} * @memberof LimitedUser */ - last_platform: string; + statusDescription: string; /** - * - * @type {UserStatus} + * <- Always empty. + * @type {Array} * @memberof LimitedUser */ - status: UserStatus; + tags: Array; /** * - * @type {boolean} + * @type {string} * @memberof LimitedUser */ - isFriend: boolean; + userIcon: string; /** - * <- Always empty. - * @type {Array} + * + * @type {string} * @memberof LimitedUser */ - tags: Array; + username: string; } /** * @@ -2445,79 +2456,79 @@ export interface LimitedWorld { * @type {string} * @memberof LimitedWorld */ - id: string; + authorId: string; /** * * @type {string} * @memberof LimitedWorld */ - name: string; + authorName: string; /** * - * @type {string} + * @type {number} * @memberof LimitedWorld */ - authorId: string; + capacity: number; /** * * @type {string} * @memberof LimitedWorld */ - authorName: string; + created_at: string; /** * * @type {number} * @memberof LimitedWorld */ - capacity: number; + favorites: number; /** * - * @type {string} + * @type {number} * @memberof LimitedWorld */ - imageUrl: string; + heat: number; /** * * @type {string} * @memberof LimitedWorld */ - thumbnailImageUrl: string; + id: string; /** * * @type {string} * @memberof LimitedWorld */ - releaseStatus: string; + imageUrl: string; /** * * @type {string} * @memberof LimitedWorld */ - organization: string; + labsPublicationDate: string; /** * - * @type {Array} + * @type {string} * @memberof LimitedWorld */ - tags: Array; + name: string; /** * * @type {number} * @memberof LimitedWorld */ - favorites: number; + occupants: number; /** * * @type {string} * @memberof LimitedWorld */ - created_at: string; + organization: string; /** * - * @type {string} + * @type {number} * @memberof LimitedWorld */ - updated_at: string; + popularity: number; /** * * @type {string} @@ -2526,34 +2537,34 @@ export interface LimitedWorld { publicationDate: string; /** * - * @type {string} + * @type {ReleaseStatus} * @memberof LimitedWorld */ - labsPublicationDate: string; + releaseStatus: ReleaseStatus; /** * - * @type {Array} + * @type {Array} * @memberof LimitedWorld */ - unityPackages: Array; + tags: Array; /** * - * @type {number} + * @type {string} * @memberof LimitedWorld */ - popularity: number; + thumbnailImageUrl: string; /** * - * @type {number} + * @type {Array} * @memberof LimitedWorld */ - heat: number; + unityPackages: Array; /** * - * @type {number} + * @type {string} * @memberof LimitedWorld */ - occupants: number; + updated_at: string; } /** * @@ -2602,31 +2613,31 @@ export interface ModelFile { * @type {string} * @memberof ModelFile */ - id: string; + extension: string; /** * * @type {string} * @memberof ModelFile */ - name: string; + id: string; /** * - * @type {string} + * @type {MIMEType} * @memberof ModelFile */ - ownerId: string; + mimeType: MIMEType; /** * - * @type {MIMEType} + * @type {string} * @memberof ModelFile */ - mimeType: MIMEType; + name: string; /** * * @type {string} * @memberof ModelFile */ - extension: string; + ownerId: string; /** * * @type {Array} @@ -2651,49 +2662,49 @@ export interface Notification { * @type {string} * @memberof Notification */ - id: string; + created_at: string; /** - * + * **NOTICE:** This is not a JSON object, this is a json **encoded** object, meaning you have to json-de-encode to get the NotificationDetail object depending on the NotificationType. * @type {string} * @memberof Notification */ - senderUserId: string; + details: string; /** * * @type {string} * @memberof Notification */ - senderUsername: string; + id: string; /** * - * @type {NotificationType} + * @type {string} * @memberof Notification */ - type: NotificationType; + message: string; /** * - * @type {string} + * @type {boolean} * @memberof Notification */ - message: string; + seen: boolean; /** - * **NOTICE:** This is not a JSON object, this is a json **encoded** object, meaning you have to json-de-encode to get the NotificationDetail object depending on the NotificationType. + * * @type {string} * @memberof Notification */ - details: string; + senderUserId: string; /** * - * @type {boolean} + * @type {string} * @memberof Notification */ - seen: boolean; + senderUsername: string; /** * - * @type {string} + * @type {NotificationType} * @memberof Notification */ - created_at: string; + type: NotificationType; } /** * @@ -2737,16 +2748,16 @@ export interface PastDisplayName { export interface Permission { /** * - * @type {string} + * @type {object} * @memberof Permission */ - id: string; + data?: object; /** * * @type {string} * @memberof Permission */ - ownerId: string; + id: string; /** * * @type {string} @@ -2755,10 +2766,10 @@ export interface Permission { name: string; /** * - * @type {object} + * @type {string} * @memberof Permission */ - data?: object; + ownerId: string; } /** * @@ -2771,43 +2782,43 @@ export interface PlayerModeration { * @type {string} * @memberof PlayerModeration */ - id: string; + created: string; /** * - * @type {PlayerModerationType} + * @type {string} * @memberof PlayerModeration */ - type: PlayerModerationType; + id: string; /** * * @type {string} * @memberof PlayerModeration */ - sourceUserId: string; + sourceDisplayName: string; /** * * @type {string} * @memberof PlayerModeration */ - sourceDisplayName: string; + sourceUserId: string; /** * * @type {string} * @memberof PlayerModeration */ - targetUserId: string; + targetDisplayName: string; /** * * @type {string} * @memberof PlayerModeration */ - targetDisplayName: string; + targetUserId: string; /** * - * @type {string} + * @type {PlayerModerationType} * @memberof PlayerModeration */ - created: string; + type: PlayerModerationType; } /** * @@ -2824,6 +2835,25 @@ export enum PlayerModerationType { ShowAvatar = 'showAvatar' } +/** + * Public Announcement + * @export + * @interface PublicAnnouncement + */ +export interface PublicAnnouncement { + /** + * Announcement name + * @type {string} + * @memberof PublicAnnouncement + */ + name: string; + /** + * Announcement text + * @type {string} + * @memberof PublicAnnouncement + */ + text: string; +} /** * * @export @@ -2879,61 +2909,61 @@ export interface UnityPackage { * @type {string} * @memberof UnityPackage */ - id: string; + assetUrl?: string; /** * - * @type {string} + * @type {object} * @memberof UnityPackage */ - assetUrl?: string; + assetUrlObject?: object; /** * - * @type {object} + * @type {number} * @memberof UnityPackage */ - assetUrlObject?: object; + assetVersion: number; /** * * @type {string} * @memberof UnityPackage */ - pluginUrl?: string; + created_at?: string; /** * - * @type {object} + * @type {string} * @memberof UnityPackage */ - pluginUrlObject?: object; + id: string; /** - * + * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. * @type {string} * @memberof UnityPackage */ - unityVersion: string; + platform: string; /** * - * @type {number} + * @type {string} * @memberof UnityPackage */ - unitySortNumber?: number; + pluginUrl?: string; /** * - * @type {number} + * @type {object} * @memberof UnityPackage */ - assetVersion: number; + pluginUrlObject?: object; /** - * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. - * @type {string} + * + * @type {number} * @memberof UnityPackage */ - platform: string; + unitySortNumber?: number; /** * * @type {string} * @memberof UnityPackage */ - created_at?: string; + unityVersion: string; } /** * @@ -2943,82 +2973,76 @@ export interface UnityPackage { export interface User { /** * - * @type {string} + * @type {boolean} * @memberof User */ - id: string; + allowAvatarCopying: boolean; /** * * @type {string} * @memberof User */ - username: string; + bio: string; /** * - * @type {string} + * @type {Array} * @memberof User */ - displayName: string; + bioLinks: Array; /** * * @type {string} * @memberof User */ - userIcon: string; + currentAvatarImageUrl: string; /** * * @type {string} * @memberof User */ - bio: string; - /** - * - * @type {Array} - * @memberof User - */ - bioLinks: Array; + currentAvatarThumbnailImageUrl: string; /** * * @type {string} * @memberof User */ - profilePicOverride: string; + date_joined: string; /** * - * @type {string} + * @type {DeveloperType} * @memberof User */ - statusDescription: string; + developerType: DeveloperType; /** * * @type {string} * @memberof User */ - currentAvatarImageUrl: string; + displayName: string; /** * * @type {string} * @memberof User */ - currentAvatarThumbnailImageUrl: string; + friendKey: string; /** * - * @type {UserState} + * @type {string} * @memberof User */ - state: UserState; + id: string; /** * - * @type {Array} + * @type {string} * @memberof User */ - tags: Array; + instanceId: string; /** * - * @type {DeveloperType} + * @type {boolean} * @memberof User */ - developerType: DeveloperType; + isFriend: boolean; /** * * @type {string} @@ -3033,52 +3057,58 @@ export interface User { last_platform: string; /** * - * @type {boolean} + * @type {string} * @memberof User */ - allowAvatarCopying: boolean; + location: string; /** * - * @type {UserStatus} + * @type {string} * @memberof User */ - status: UserStatus; + profilePicOverride: string; /** * - * @type {string} + * @type {UserState} * @memberof User */ - date_joined: string; + state: UserState; /** * - * @type {boolean} + * @type {UserStatus} * @memberof User */ - isFriend: boolean; + status: UserStatus; /** * * @type {string} * @memberof User */ - friendKey: string; + statusDescription: string; + /** + * + * @type {Array} + * @memberof User + */ + tags: Array; /** * * @type {string} * @memberof User */ - worldId: string; + userIcon: string; /** * * @type {string} * @memberof User */ - instanceId: string; + username: string; /** * * @type {string} * @memberof User */ - location: string; + worldId: string; } /** * Status object representing if a queried user by username or userId exists or not. This model is primarily used by the `/auth/exists` endpoint, which in turn is used during registration. Please see the documentation on that endpoint for more information on usage. @@ -3983,7 +4013,7 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati * @param {string} [search] Filters by world name. * @param {string} [tag] Tags to include (comma-separated). * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden'} [releaseStatus] Filter by ReleaseStatus. + * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. * @param {string} [platform] The platform the asset supports. @@ -3991,7 +4021,7 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFavoritedAvatars: async (featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options: any = {}): Promise => { + getFavoritedAvatars: async (featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options: any = {}): Promise => { const localVarPath = `/avatars/favorites`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -4083,14 +4113,14 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {string} [tag] Tags to include (comma-separated). * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden'} [releaseStatus] Filter by ReleaseStatus. + * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. * @param {string} [platform] The platform the asset supports. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - searchAvatars: async (featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options: any = {}): Promise => { + searchAvatars: async (featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options: any = {}): Promise => { const localVarPath = `/avatars`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -4304,7 +4334,7 @@ export const AvatarsApiFp = function(configuration?: Configuration) { * @param {string} [search] Filters by world name. * @param {string} [tag] Tags to include (comma-separated). * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden'} [releaseStatus] Filter by ReleaseStatus. + * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. * @param {string} [platform] The platform the asset supports. @@ -4312,7 +4342,7 @@ export const AvatarsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getFavoritedAvatars(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + async getFavoritedAvatars(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.getFavoritedAvatars(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -4328,14 +4358,14 @@ export const AvatarsApiFp = function(configuration?: Configuration) { * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {string} [tag] Tags to include (comma-separated). * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden'} [releaseStatus] Filter by ReleaseStatus. + * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. * @param {string} [platform] The platform the asset supports. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async searchAvatars(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + async searchAvatars(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.searchAvatars(featured, sort, user, userId, n, order, offset, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -4413,7 +4443,7 @@ export const AvatarsApiFactory = function (configuration?: Configuration, basePa * @param {string} [search] Filters by world name. * @param {string} [tag] Tags to include (comma-separated). * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden'} [releaseStatus] Filter by ReleaseStatus. + * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. * @param {string} [platform] The platform the asset supports. @@ -4421,7 +4451,7 @@ export const AvatarsApiFactory = function (configuration?: Configuration, basePa * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFavoritedAvatars(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any): AxiosPromise> { + getFavoritedAvatars(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any): AxiosPromise> { return localVarFp.getFavoritedAvatars(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options).then((request) => request(axios, basePath)); }, /** @@ -4436,14 +4466,14 @@ export const AvatarsApiFactory = function (configuration?: Configuration, basePa * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {string} [tag] Tags to include (comma-separated). * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden'} [releaseStatus] Filter by ReleaseStatus. + * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. * @param {string} [platform] The platform the asset supports. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - searchAvatars(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: any): AxiosPromise> { + searchAvatars(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: any): AxiosPromise> { return localVarFp.searchAvatars(featured, sort, user, userId, n, order, offset, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options).then((request) => request(axios, basePath)); }, /** @@ -4524,7 +4554,7 @@ export class AvatarsApi extends BaseAPI { * @param {string} [search] Filters by world name. * @param {string} [tag] Tags to include (comma-separated). * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden'} [releaseStatus] Filter by ReleaseStatus. + * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. * @param {string} [platform] The platform the asset supports. @@ -4533,7 +4563,7 @@ export class AvatarsApi extends BaseAPI { * @throws {RequiredError} * @memberof AvatarsApi */ - public getFavoritedAvatars(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any) { + public getFavoritedAvatars(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any) { return AvatarsApiFp(this.configuration).getFavoritedAvatars(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options).then((request) => request(this.axios, this.basePath)); } @@ -4549,7 +4579,7 @@ export class AvatarsApi extends BaseAPI { * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {string} [tag] Tags to include (comma-separated). * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden'} [releaseStatus] Filter by ReleaseStatus. + * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. * @param {string} [platform] The platform the asset supports. @@ -4557,7 +4587,7 @@ export class AvatarsApi extends BaseAPI { * @throws {RequiredError} * @memberof AvatarsApi */ - public searchAvatars(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: any) { + public searchAvatars(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: any) { return AvatarsApiFp(this.configuration).searchAvatars(featured, sort, user, userId, n, order, offset, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options).then((request) => request(this.axios, this.basePath)); } @@ -6555,20 +6585,24 @@ export class FriendsApi extends BaseAPI { export const InviteApiAxiosParamCreator = function (configuration?: Configuration) { return { /** - * Returns a single Invite Message. This returns the exact same information but less than `getInviteMessages`. Admin Credentials are required to view messages of other users! + * Returns a single Invite Message. This returns the exact same information but less than `getInviteMessages`. Admin Credentials are required to view messages of other users! Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite * @summary Get Invite Messages * @param {string} userId + * @param {'message' | 'response' | 'request' | 'requestResponse'} messageType * @param {number} messageId * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getInviteMessage: async (userId: string, messageId: number, options: any = {}): Promise => { + getInviteMessage: async (userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', messageId: number, options: any = {}): Promise => { // verify required parameter 'userId' is not null or undefined assertParamExists('getInviteMessage', 'userId', userId) + // verify required parameter 'messageType' is not null or undefined + assertParamExists('getInviteMessage', 'messageType', messageType) // verify required parameter 'messageId' is not null or undefined assertParamExists('getInviteMessage', 'messageId', messageId) - const localVarPath = `/message/{userId}/message/{messageId}` + const localVarPath = `/message/{userId}/{messageType}/{messageId}` .replace(`{${"userId"}}`, encodeURIComponent(String(userId))) + .replace(`{${"messageType"}}`, encodeURIComponent(String(messageType))) .replace(`{${"messageId"}}`, encodeURIComponent(String(messageId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -6597,17 +6631,21 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio }; }, /** - * Returns a list of all that users Invite Messages. Admin Credentials are required to view messages of other users! + * Returns a list of all the users Invite Messages. Admin Credentials are required to view messages of other users! Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite * @summary List Invite Messages * @param {string} userId + * @param {'message' | 'response' | 'request' | 'requestResponse'} messageType * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getInviteMessages: async (userId: string, options: any = {}): Promise => { + getInviteMessages: async (userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', options: any = {}): Promise => { // verify required parameter 'userId' is not null or undefined assertParamExists('getInviteMessages', 'userId', userId) - const localVarPath = `/message/{userId}/message` - .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); + // verify required parameter 'messageType' is not null or undefined + assertParamExists('getInviteMessages', 'messageType', messageType) + const localVarPath = `/message/{userId}/{messageType}` + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))) + .replace(`{${"messageType"}}`, encodeURIComponent(String(messageType))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -6715,20 +6753,24 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio }; }, /** - * Resets a single Invite Message back to it\'s original message, and then returns a list of all of them. Admin Credentials are required to update messages of other users! Resetting a message respects the rate-limit, but resetting it does not set the rate-limit to 60 like when editing it. It is possible to edit it right after resetting it. Trying to edit a message before the cooldown timer expires results in a 429 Too Fast Error. + * Resets a single Invite Message back to it\'s original message, and then returns a list of all of them. Admin Credentials are required to update messages of other users! Resetting a message respects the rate-limit, but resetting it does not set the rate-limit to 60 like when editing it. It is possible to edit it right after resetting it. Trying to edit a message before the cooldown timer expires results in a 429 Too Fast Error. Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite * @summary Reset Invite Message * @param {string} userId + * @param {'message' | 'response' | 'request' | 'requestResponse'} messageType * @param {number} messageId * @param {*} [options] Override http request option. * @throws {RequiredError} */ - resetInviteMessage: async (userId: string, messageId: number, options: any = {}): Promise => { + resetInviteMessage: async (userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', messageId: number, options: any = {}): Promise => { // verify required parameter 'userId' is not null or undefined assertParamExists('resetInviteMessage', 'userId', userId) + // verify required parameter 'messageType' is not null or undefined + assertParamExists('resetInviteMessage', 'messageType', messageType) // verify required parameter 'messageId' is not null or undefined assertParamExists('resetInviteMessage', 'messageId', messageId) - const localVarPath = `/message/{userId}/message/{messageId}` + const localVarPath = `/message/{userId}/{messageType}/{messageId}` .replace(`{${"userId"}}`, encodeURIComponent(String(userId))) + .replace(`{${"messageType"}}`, encodeURIComponent(String(messageType))) .replace(`{${"messageId"}}`, encodeURIComponent(String(messageId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -6799,20 +6841,24 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio }; }, /** - * Updates a single Invite Message and then returns a list of all of them. Admin Credentials are required to update messages of other users! Updating a message automatically sets the cooldown timer to 60 minutes. Trying to edit a message before the cooldown timer expires results in a 429 Too Fast Error. + * Updates a single Invite Message and then returns a list of all of them. Admin Credentials are required to update messages of other users! Updating a message automatically sets the cooldown timer to 60 minutes. Trying to edit a message before the cooldown timer expires results in a 429 Too Fast Error. Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite * @summary Update Invite Message * @param {string} userId + * @param {'message' | 'response' | 'request' | 'requestResponse'} messageType * @param {number} messageId * @param {*} [options] Override http request option. * @throws {RequiredError} */ - updateInviteMessage: async (userId: string, messageId: number, options: any = {}): Promise => { + updateInviteMessage: async (userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', messageId: number, options: any = {}): Promise => { // verify required parameter 'userId' is not null or undefined assertParamExists('updateInviteMessage', 'userId', userId) + // verify required parameter 'messageType' is not null or undefined + assertParamExists('updateInviteMessage', 'messageType', messageType) // verify required parameter 'messageId' is not null or undefined assertParamExists('updateInviteMessage', 'messageId', messageId) - const localVarPath = `/message/{userId}/message/{messageId}` + const localVarPath = `/message/{userId}/{messageType}/{messageId}` .replace(`{${"userId"}}`, encodeURIComponent(String(userId))) + .replace(`{${"messageType"}}`, encodeURIComponent(String(messageType))) .replace(`{${"messageId"}}`, encodeURIComponent(String(messageId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -6851,26 +6897,28 @@ export const InviteApiFp = function(configuration?: Configuration) { const localVarAxiosParamCreator = InviteApiAxiosParamCreator(configuration) return { /** - * Returns a single Invite Message. This returns the exact same information but less than `getInviteMessages`. Admin Credentials are required to view messages of other users! + * Returns a single Invite Message. This returns the exact same information but less than `getInviteMessages`. Admin Credentials are required to view messages of other users! Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite * @summary Get Invite Messages * @param {string} userId + * @param {'message' | 'response' | 'request' | 'requestResponse'} messageType * @param {number} messageId * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getInviteMessage(userId: string, messageId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getInviteMessage(userId, messageId, options); + async getInviteMessage(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', messageId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getInviteMessage(userId, messageType, messageId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Returns a list of all that users Invite Messages. Admin Credentials are required to view messages of other users! + * Returns a list of all the users Invite Messages. Admin Credentials are required to view messages of other users! Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite * @summary List Invite Messages * @param {string} userId + * @param {'message' | 'response' | 'request' | 'requestResponse'} messageType * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getInviteMessages(userId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getInviteMessages(userId, options); + async getInviteMessages(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getInviteMessages(userId, messageType, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** @@ -6897,15 +6945,16 @@ export const InviteApiFp = function(configuration?: Configuration) { return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Resets a single Invite Message back to it\'s original message, and then returns a list of all of them. Admin Credentials are required to update messages of other users! Resetting a message respects the rate-limit, but resetting it does not set the rate-limit to 60 like when editing it. It is possible to edit it right after resetting it. Trying to edit a message before the cooldown timer expires results in a 429 Too Fast Error. + * Resets a single Invite Message back to it\'s original message, and then returns a list of all of them. Admin Credentials are required to update messages of other users! Resetting a message respects the rate-limit, but resetting it does not set the rate-limit to 60 like when editing it. It is possible to edit it right after resetting it. Trying to edit a message before the cooldown timer expires results in a 429 Too Fast Error. Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite * @summary Reset Invite Message * @param {string} userId + * @param {'message' | 'response' | 'request' | 'requestResponse'} messageType * @param {number} messageId * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async resetInviteMessage(userId: string, messageId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { - const localVarAxiosArgs = await localVarAxiosParamCreator.resetInviteMessage(userId, messageId, options); + async resetInviteMessage(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', messageId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.resetInviteMessage(userId, messageType, messageId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** @@ -6921,15 +6970,16 @@ export const InviteApiFp = function(configuration?: Configuration) { return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Updates a single Invite Message and then returns a list of all of them. Admin Credentials are required to update messages of other users! Updating a message automatically sets the cooldown timer to 60 minutes. Trying to edit a message before the cooldown timer expires results in a 429 Too Fast Error. + * Updates a single Invite Message and then returns a list of all of them. Admin Credentials are required to update messages of other users! Updating a message automatically sets the cooldown timer to 60 minutes. Trying to edit a message before the cooldown timer expires results in a 429 Too Fast Error. Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite * @summary Update Invite Message * @param {string} userId + * @param {'message' | 'response' | 'request' | 'requestResponse'} messageType * @param {number} messageId * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async updateInviteMessage(userId: string, messageId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { - const localVarAxiosArgs = await localVarAxiosParamCreator.updateInviteMessage(userId, messageId, options); + async updateInviteMessage(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', messageId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.updateInviteMessage(userId, messageType, messageId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, } @@ -6943,25 +6993,27 @@ export const InviteApiFactory = function (configuration?: Configuration, basePat const localVarFp = InviteApiFp(configuration) return { /** - * Returns a single Invite Message. This returns the exact same information but less than `getInviteMessages`. Admin Credentials are required to view messages of other users! + * Returns a single Invite Message. This returns the exact same information but less than `getInviteMessages`. Admin Credentials are required to view messages of other users! Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite * @summary Get Invite Messages * @param {string} userId + * @param {'message' | 'response' | 'request' | 'requestResponse'} messageType * @param {number} messageId * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getInviteMessage(userId: string, messageId: number, options?: any): AxiosPromise { - return localVarFp.getInviteMessage(userId, messageId, options).then((request) => request(axios, basePath)); + getInviteMessage(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', messageId: number, options?: any): AxiosPromise { + return localVarFp.getInviteMessage(userId, messageType, messageId, options).then((request) => request(axios, basePath)); }, /** - * Returns a list of all that users Invite Messages. Admin Credentials are required to view messages of other users! + * Returns a list of all the users Invite Messages. Admin Credentials are required to view messages of other users! Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite * @summary List Invite Messages * @param {string} userId + * @param {'message' | 'response' | 'request' | 'requestResponse'} messageType * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getInviteMessages(userId: string, options?: any): AxiosPromise> { - return localVarFp.getInviteMessages(userId, options).then((request) => request(axios, basePath)); + getInviteMessages(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', options?: any): AxiosPromise> { + return localVarFp.getInviteMessages(userId, messageType, options).then((request) => request(axios, basePath)); }, /** * Sends an invite to a user. Returns the Notification of type `invite` that was sent. @@ -6985,15 +7037,16 @@ export const InviteApiFactory = function (configuration?: Configuration, basePat return localVarFp.requestInvite(userId, options).then((request) => request(axios, basePath)); }, /** - * Resets a single Invite Message back to it\'s original message, and then returns a list of all of them. Admin Credentials are required to update messages of other users! Resetting a message respects the rate-limit, but resetting it does not set the rate-limit to 60 like when editing it. It is possible to edit it right after resetting it. Trying to edit a message before the cooldown timer expires results in a 429 Too Fast Error. + * Resets a single Invite Message back to it\'s original message, and then returns a list of all of them. Admin Credentials are required to update messages of other users! Resetting a message respects the rate-limit, but resetting it does not set the rate-limit to 60 like when editing it. It is possible to edit it right after resetting it. Trying to edit a message before the cooldown timer expires results in a 429 Too Fast Error. Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite * @summary Reset Invite Message * @param {string} userId + * @param {'message' | 'response' | 'request' | 'requestResponse'} messageType * @param {number} messageId * @param {*} [options] Override http request option. * @throws {RequiredError} */ - resetInviteMessage(userId: string, messageId: number, options?: any): AxiosPromise> { - return localVarFp.resetInviteMessage(userId, messageId, options).then((request) => request(axios, basePath)); + resetInviteMessage(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', messageId: number, options?: any): AxiosPromise> { + return localVarFp.resetInviteMessage(userId, messageType, messageId, options).then((request) => request(axios, basePath)); }, /** * Sends a world invite to a user. @@ -7007,15 +7060,16 @@ export const InviteApiFactory = function (configuration?: Configuration, basePat return localVarFp.respondInvite(notificationId, inviteResponse, options).then((request) => request(axios, basePath)); }, /** - * Updates a single Invite Message and then returns a list of all of them. Admin Credentials are required to update messages of other users! Updating a message automatically sets the cooldown timer to 60 minutes. Trying to edit a message before the cooldown timer expires results in a 429 Too Fast Error. + * Updates a single Invite Message and then returns a list of all of them. Admin Credentials are required to update messages of other users! Updating a message automatically sets the cooldown timer to 60 minutes. Trying to edit a message before the cooldown timer expires results in a 429 Too Fast Error. Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite * @summary Update Invite Message * @param {string} userId + * @param {'message' | 'response' | 'request' | 'requestResponse'} messageType * @param {number} messageId * @param {*} [options] Override http request option. * @throws {RequiredError} */ - updateInviteMessage(userId: string, messageId: number, options?: any): AxiosPromise> { - return localVarFp.updateInviteMessage(userId, messageId, options).then((request) => request(axios, basePath)); + updateInviteMessage(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', messageId: number, options?: any): AxiosPromise> { + return localVarFp.updateInviteMessage(userId, messageType, messageId, options).then((request) => request(axios, basePath)); }, }; }; @@ -7028,28 +7082,30 @@ export const InviteApiFactory = function (configuration?: Configuration, basePat */ export class InviteApi extends BaseAPI { /** - * Returns a single Invite Message. This returns the exact same information but less than `getInviteMessages`. Admin Credentials are required to view messages of other users! + * Returns a single Invite Message. This returns the exact same information but less than `getInviteMessages`. Admin Credentials are required to view messages of other users! Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite * @summary Get Invite Messages * @param {string} userId + * @param {'message' | 'response' | 'request' | 'requestResponse'} messageType * @param {number} messageId * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof InviteApi */ - public getInviteMessage(userId: string, messageId: number, options?: any) { - return InviteApiFp(this.configuration).getInviteMessage(userId, messageId, options).then((request) => request(this.axios, this.basePath)); + public getInviteMessage(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', messageId: number, options?: any) { + return InviteApiFp(this.configuration).getInviteMessage(userId, messageType, messageId, options).then((request) => request(this.axios, this.basePath)); } /** - * Returns a list of all that users Invite Messages. Admin Credentials are required to view messages of other users! + * Returns a list of all the users Invite Messages. Admin Credentials are required to view messages of other users! Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite * @summary List Invite Messages * @param {string} userId + * @param {'message' | 'response' | 'request' | 'requestResponse'} messageType * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof InviteApi */ - public getInviteMessages(userId: string, options?: any) { - return InviteApiFp(this.configuration).getInviteMessages(userId, options).then((request) => request(this.axios, this.basePath)); + public getInviteMessages(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', options?: any) { + return InviteApiFp(this.configuration).getInviteMessages(userId, messageType, options).then((request) => request(this.axios, this.basePath)); } /** @@ -7078,16 +7134,17 @@ export class InviteApi extends BaseAPI { } /** - * Resets a single Invite Message back to it\'s original message, and then returns a list of all of them. Admin Credentials are required to update messages of other users! Resetting a message respects the rate-limit, but resetting it does not set the rate-limit to 60 like when editing it. It is possible to edit it right after resetting it. Trying to edit a message before the cooldown timer expires results in a 429 Too Fast Error. + * Resets a single Invite Message back to it\'s original message, and then returns a list of all of them. Admin Credentials are required to update messages of other users! Resetting a message respects the rate-limit, but resetting it does not set the rate-limit to 60 like when editing it. It is possible to edit it right after resetting it. Trying to edit a message before the cooldown timer expires results in a 429 Too Fast Error. Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite * @summary Reset Invite Message * @param {string} userId + * @param {'message' | 'response' | 'request' | 'requestResponse'} messageType * @param {number} messageId * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof InviteApi */ - public resetInviteMessage(userId: string, messageId: number, options?: any) { - return InviteApiFp(this.configuration).resetInviteMessage(userId, messageId, options).then((request) => request(this.axios, this.basePath)); + public resetInviteMessage(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', messageId: number, options?: any) { + return InviteApiFp(this.configuration).resetInviteMessage(userId, messageType, messageId, options).then((request) => request(this.axios, this.basePath)); } /** @@ -7104,16 +7161,17 @@ export class InviteApi extends BaseAPI { } /** - * Updates a single Invite Message and then returns a list of all of them. Admin Credentials are required to update messages of other users! Updating a message automatically sets the cooldown timer to 60 minutes. Trying to edit a message before the cooldown timer expires results in a 429 Too Fast Error. + * Updates a single Invite Message and then returns a list of all of them. Admin Credentials are required to update messages of other users! Updating a message automatically sets the cooldown timer to 60 minutes. Trying to edit a message before the cooldown timer expires results in a 429 Too Fast Error. Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite * @summary Update Invite Message * @param {string} userId + * @param {'message' | 'response' | 'request' | 'requestResponse'} messageType * @param {number} messageId * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof InviteApi */ - public updateInviteMessage(userId: string, messageId: number, options?: any) { - return InviteApiFp(this.configuration).updateInviteMessage(userId, messageId, options).then((request) => request(this.axios, this.basePath)); + public updateInviteMessage(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', messageId: number, options?: any) { + return InviteApiFp(this.configuration).updateInviteMessage(userId, messageType, messageId, options).then((request) => request(this.axios, this.basePath)); } } @@ -8190,6 +8248,46 @@ export class PlayermoderationApi extends BaseAPI { */ export const SystemApiAxiosParamCreator = function (configuration?: Configuration) { return { + /** + * Fetches the CSS code to the frontend React website. + * @summary Download Frontend CSS + * @param {'public' | 'internal'} [variant] Specifies which `variant` of the site. Public is the end-user site, while `internal` is the staff-only site with special pages for moderation and management. + * @param {string} [branch] Specifies which git branch the site should load frontend source code from. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getCSS: async (variant?: 'public' | 'internal', branch?: string, options: any = {}): Promise => { + const localVarPath = `/css/app.js`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (variant !== undefined) { + localVarQueryParameter['variant'] = variant; + } + + if (branch !== undefined) { + localVarQueryParameter['branch'] = branch; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, /** * API config contains configuration that the clients needs to work properly. Currently the most important value here is `clientApiKey` which is used for all other API endpoints. * @summary Fetch API Config @@ -8251,9 +8349,10 @@ export const SystemApiAxiosParamCreator = function (configuration?: Configuratio }; }, /** - * Gets the overall health status, the server name, and the current build version tag of the API. + * ~~Gets the overall health status, the server name, and the current build version tag of the API.~~ **DEPRECATED:** VRChat has suddenly restricted this endpoint for unknown reasons, and now always return 401 Unauthorized. * @summary Check API Health * @param {*} [options] Override http request option. + * @deprecated * @throws {RequiredError} */ getHealth: async (options: any = {}): Promise => { @@ -8271,6 +8370,46 @@ export const SystemApiAxiosParamCreator = function (configuration?: Configuratio + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Fetches the JavaScript code to the frontend React website. + * @summary Download Frontend JavaScript + * @param {'public' | 'internal'} [variant] Specifies which `variant` of the site. Public is the end-user site, while `internal` is the staff-only site with special pages for moderation and management. + * @param {string} [branch] Specifies which git branch the site should load frontend source code from. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getJavaScript: async (variant?: 'public' | 'internal', branch?: string, options: any = {}): Promise => { + const localVarPath = `/js/app.js`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (variant !== undefined) { + localVarQueryParameter['variant'] = variant; + } + + if (branch !== undefined) { + localVarQueryParameter['branch'] = branch; + } + + + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -8320,13 +8459,25 @@ export const SystemApiAxiosParamCreator = function (configuration?: Configuratio export const SystemApiFp = function(configuration?: Configuration) { const localVarAxiosParamCreator = SystemApiAxiosParamCreator(configuration) return { + /** + * Fetches the CSS code to the frontend React website. + * @summary Download Frontend CSS + * @param {'public' | 'internal'} [variant] Specifies which `variant` of the site. Public is the end-user site, while `internal` is the staff-only site with special pages for moderation and management. + * @param {string} [branch] Specifies which git branch the site should load frontend source code from. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getCSS(variant?: 'public' | 'internal', branch?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getCSS(variant, branch, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** * API config contains configuration that the clients needs to work properly. Currently the most important value here is `clientApiKey` which is used for all other API endpoints. * @summary Fetch API Config * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getConfig(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async getConfig(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getConfig(options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -8341,15 +8492,28 @@ export const SystemApiFp = function(configuration?: Configuration) { return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Gets the overall health status, the server name, and the current build version tag of the API. + * ~~Gets the overall health status, the server name, and the current build version tag of the API.~~ **DEPRECATED:** VRChat has suddenly restricted this endpoint for unknown reasons, and now always return 401 Unauthorized. * @summary Check API Health * @param {*} [options] Override http request option. + * @deprecated * @throws {RequiredError} */ async getHealth(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getHealth(options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, + /** + * Fetches the JavaScript code to the frontend React website. + * @summary Download Frontend JavaScript + * @param {'public' | 'internal'} [variant] Specifies which `variant` of the site. Public is the end-user site, while `internal` is the staff-only site with special pages for moderation and management. + * @param {string} [branch] Specifies which git branch the site should load frontend source code from. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getJavaScript(variant?: 'public' | 'internal', branch?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getJavaScript(variant, branch, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** * Returns in plain format the current time of the API server. **NOTE:** The response type is not of JSON, but is a string in plain ASCII format. * @summary Current System Time @@ -8370,13 +8534,24 @@ export const SystemApiFp = function(configuration?: Configuration) { export const SystemApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { const localVarFp = SystemApiFp(configuration) return { + /** + * Fetches the CSS code to the frontend React website. + * @summary Download Frontend CSS + * @param {'public' | 'internal'} [variant] Specifies which `variant` of the site. Public is the end-user site, while `internal` is the staff-only site with special pages for moderation and management. + * @param {string} [branch] Specifies which git branch the site should load frontend source code from. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getCSS(variant?: 'public' | 'internal', branch?: string, options?: any): AxiosPromise { + return localVarFp.getCSS(variant, branch, options).then((request) => request(axios, basePath)); + }, /** * API config contains configuration that the clients needs to work properly. Currently the most important value here is `clientApiKey` which is used for all other API endpoints. * @summary Fetch API Config * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getConfig(options?: any): AxiosPromise { + getConfig(options?: any): AxiosPromise { return localVarFp.getConfig(options).then((request) => request(axios, basePath)); }, /** @@ -8389,14 +8564,26 @@ export const SystemApiFactory = function (configuration?: Configuration, basePat return localVarFp.getCurrentOnlineUsers(options).then((request) => request(axios, basePath)); }, /** - * Gets the overall health status, the server name, and the current build version tag of the API. + * ~~Gets the overall health status, the server name, and the current build version tag of the API.~~ **DEPRECATED:** VRChat has suddenly restricted this endpoint for unknown reasons, and now always return 401 Unauthorized. * @summary Check API Health * @param {*} [options] Override http request option. + * @deprecated * @throws {RequiredError} */ getHealth(options?: any): AxiosPromise { return localVarFp.getHealth(options).then((request) => request(axios, basePath)); }, + /** + * Fetches the JavaScript code to the frontend React website. + * @summary Download Frontend JavaScript + * @param {'public' | 'internal'} [variant] Specifies which `variant` of the site. Public is the end-user site, while `internal` is the staff-only site with special pages for moderation and management. + * @param {string} [branch] Specifies which git branch the site should load frontend source code from. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getJavaScript(variant?: 'public' | 'internal', branch?: string, options?: any): AxiosPromise { + return localVarFp.getJavaScript(variant, branch, options).then((request) => request(axios, basePath)); + }, /** * Returns in plain format the current time of the API server. **NOTE:** The response type is not of JSON, but is a string in plain ASCII format. * @summary Current System Time @@ -8416,6 +8603,19 @@ export const SystemApiFactory = function (configuration?: Configuration, basePat * @extends {BaseAPI} */ export class SystemApi extends BaseAPI { + /** + * Fetches the CSS code to the frontend React website. + * @summary Download Frontend CSS + * @param {'public' | 'internal'} [variant] Specifies which `variant` of the site. Public is the end-user site, while `internal` is the staff-only site with special pages for moderation and management. + * @param {string} [branch] Specifies which git branch the site should load frontend source code from. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof SystemApi + */ + public getCSS(variant?: 'public' | 'internal', branch?: string, options?: any) { + return SystemApiFp(this.configuration).getCSS(variant, branch, options).then((request) => request(this.axios, this.basePath)); + } + /** * API config contains configuration that the clients needs to work properly. Currently the most important value here is `clientApiKey` which is used for all other API endpoints. * @summary Fetch API Config @@ -8439,9 +8639,10 @@ export class SystemApi extends BaseAPI { } /** - * Gets the overall health status, the server name, and the current build version tag of the API. + * ~~Gets the overall health status, the server name, and the current build version tag of the API.~~ **DEPRECATED:** VRChat has suddenly restricted this endpoint for unknown reasons, and now always return 401 Unauthorized. * @summary Check API Health * @param {*} [options] Override http request option. + * @deprecated * @throws {RequiredError} * @memberof SystemApi */ @@ -8449,6 +8650,19 @@ export class SystemApi extends BaseAPI { return SystemApiFp(this.configuration).getHealth(options).then((request) => request(this.axios, this.basePath)); } + /** + * Fetches the JavaScript code to the frontend React website. + * @summary Download Frontend JavaScript + * @param {'public' | 'internal'} [variant] Specifies which `variant` of the site. Public is the end-user site, while `internal` is the staff-only site with special pages for moderation and management. + * @param {string} [branch] Specifies which git branch the site should load frontend source code from. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof SystemApi + */ + public getJavaScript(variant?: 'public' | 'internal', branch?: string, options?: any) { + return SystemApiFp(this.configuration).getJavaScript(variant, branch, options).then((request) => request(this.axios, this.basePath)); + } + /** * Returns in plain format the current time of the API server. **NOTE:** The response type is not of JSON, but is a string in plain ASCII format. * @summary Current System Time @@ -8905,14 +9119,14 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio * @param {string} [search] Filters by world name. * @param {string} [tag] Tags to include (comma-separated). * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden'} [releaseStatus] Filter by ReleaseStatus. + * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. * @param {string} [platform] The platform the asset supports. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getActiveWorlds: async (featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options: any = {}): Promise => { + getActiveWorlds: async (featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options: any = {}): Promise => { const localVarPath = `/worlds/active`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -8999,7 +9213,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio * @param {string} [search] Filters by world name. * @param {string} [tag] Tags to include (comma-separated). * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden'} [releaseStatus] Filter by ReleaseStatus. + * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. * @param {string} [platform] The platform the asset supports. @@ -9007,7 +9221,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFavoritedWorlds: async (featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options: any = {}): Promise => { + getFavoritedWorlds: async (featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options: any = {}): Promise => { const localVarPath = `/worlds/favorites`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -9098,7 +9312,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio * @param {string} [search] Filters by world name. * @param {string} [tag] Tags to include (comma-separated). * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden'} [releaseStatus] Filter by ReleaseStatus. + * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. * @param {string} [platform] The platform the asset supports. @@ -9106,7 +9320,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getRecentWorlds: async (featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options: any = {}): Promise => { + getRecentWorlds: async (featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options: any = {}): Promise => { const localVarPath = `/worlds/recent`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -9392,14 +9606,14 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio * @param {string} [search] Filters by world name. * @param {string} [tag] Tags to include (comma-separated). * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden'} [releaseStatus] Filter by ReleaseStatus. + * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. * @param {string} [platform] The platform the asset supports. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - searchWorlds: async (featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options: any = {}): Promise => { + searchWorlds: async (featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options: any = {}): Promise => { const localVarPath = `/worlds`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -9606,14 +9820,14 @@ export const WorldsApiFp = function(configuration?: Configuration) { * @param {string} [search] Filters by world name. * @param {string} [tag] Tags to include (comma-separated). * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden'} [releaseStatus] Filter by ReleaseStatus. + * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. * @param {string} [platform] The platform the asset supports. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getActiveWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + async getActiveWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.getActiveWorlds(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -9628,7 +9842,7 @@ export const WorldsApiFp = function(configuration?: Configuration) { * @param {string} [search] Filters by world name. * @param {string} [tag] Tags to include (comma-separated). * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden'} [releaseStatus] Filter by ReleaseStatus. + * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. * @param {string} [platform] The platform the asset supports. @@ -9636,7 +9850,7 @@ export const WorldsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getFavoritedWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + async getFavoritedWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.getFavoritedWorlds(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -9651,7 +9865,7 @@ export const WorldsApiFp = function(configuration?: Configuration) { * @param {string} [search] Filters by world name. * @param {string} [tag] Tags to include (comma-separated). * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden'} [releaseStatus] Filter by ReleaseStatus. + * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. * @param {string} [platform] The platform the asset supports. @@ -9659,7 +9873,7 @@ export const WorldsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getRecentWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + async getRecentWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.getRecentWorlds(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -9733,14 +9947,14 @@ export const WorldsApiFp = function(configuration?: Configuration) { * @param {string} [search] Filters by world name. * @param {string} [tag] Tags to include (comma-separated). * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden'} [releaseStatus] Filter by ReleaseStatus. + * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. * @param {string} [platform] The platform the asset supports. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async searchWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + async searchWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.searchWorlds(featured, sort, user, userId, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -9808,14 +10022,14 @@ export const WorldsApiFactory = function (configuration?: Configuration, basePat * @param {string} [search] Filters by world name. * @param {string} [tag] Tags to include (comma-separated). * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden'} [releaseStatus] Filter by ReleaseStatus. + * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. * @param {string} [platform] The platform the asset supports. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getActiveWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: any): AxiosPromise> { + getActiveWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: any): AxiosPromise> { return localVarFp.getActiveWorlds(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options).then((request) => request(axios, basePath)); }, /** @@ -9829,7 +10043,7 @@ export const WorldsApiFactory = function (configuration?: Configuration, basePat * @param {string} [search] Filters by world name. * @param {string} [tag] Tags to include (comma-separated). * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden'} [releaseStatus] Filter by ReleaseStatus. + * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. * @param {string} [platform] The platform the asset supports. @@ -9837,7 +10051,7 @@ export const WorldsApiFactory = function (configuration?: Configuration, basePat * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFavoritedWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any): AxiosPromise> { + getFavoritedWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any): AxiosPromise> { return localVarFp.getFavoritedWorlds(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options).then((request) => request(axios, basePath)); }, /** @@ -9851,7 +10065,7 @@ export const WorldsApiFactory = function (configuration?: Configuration, basePat * @param {string} [search] Filters by world name. * @param {string} [tag] Tags to include (comma-separated). * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden'} [releaseStatus] Filter by ReleaseStatus. + * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. * @param {string} [platform] The platform the asset supports. @@ -9859,7 +10073,7 @@ export const WorldsApiFactory = function (configuration?: Configuration, basePat * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getRecentWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any): AxiosPromise> { + getRecentWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any): AxiosPromise> { return localVarFp.getRecentWorlds(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options).then((request) => request(axios, basePath)); }, /** @@ -9927,14 +10141,14 @@ export const WorldsApiFactory = function (configuration?: Configuration, basePat * @param {string} [search] Filters by world name. * @param {string} [tag] Tags to include (comma-separated). * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden'} [releaseStatus] Filter by ReleaseStatus. + * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. * @param {string} [platform] The platform the asset supports. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - searchWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: any): AxiosPromise> { + searchWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: any): AxiosPromise> { return localVarFp.searchWorlds(featured, sort, user, userId, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options).then((request) => request(axios, basePath)); }, /** @@ -10003,7 +10217,7 @@ export class WorldsApi extends BaseAPI { * @param {string} [search] Filters by world name. * @param {string} [tag] Tags to include (comma-separated). * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden'} [releaseStatus] Filter by ReleaseStatus. + * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. * @param {string} [platform] The platform the asset supports. @@ -10011,7 +10225,7 @@ export class WorldsApi extends BaseAPI { * @throws {RequiredError} * @memberof WorldsApi */ - public getActiveWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: any) { + public getActiveWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: any) { return WorldsApiFp(this.configuration).getActiveWorlds(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options).then((request) => request(this.axios, this.basePath)); } @@ -10026,7 +10240,7 @@ export class WorldsApi extends BaseAPI { * @param {string} [search] Filters by world name. * @param {string} [tag] Tags to include (comma-separated). * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden'} [releaseStatus] Filter by ReleaseStatus. + * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. * @param {string} [platform] The platform the asset supports. @@ -10035,7 +10249,7 @@ export class WorldsApi extends BaseAPI { * @throws {RequiredError} * @memberof WorldsApi */ - public getFavoritedWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any) { + public getFavoritedWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any) { return WorldsApiFp(this.configuration).getFavoritedWorlds(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options).then((request) => request(this.axios, this.basePath)); } @@ -10050,7 +10264,7 @@ export class WorldsApi extends BaseAPI { * @param {string} [search] Filters by world name. * @param {string} [tag] Tags to include (comma-separated). * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden'} [releaseStatus] Filter by ReleaseStatus. + * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. * @param {string} [platform] The platform the asset supports. @@ -10059,7 +10273,7 @@ export class WorldsApi extends BaseAPI { * @throws {RequiredError} * @memberof WorldsApi */ - public getRecentWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any) { + public getRecentWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any) { return WorldsApiFp(this.configuration).getRecentWorlds(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options).then((request) => request(this.axios, this.basePath)); } @@ -10138,7 +10352,7 @@ export class WorldsApi extends BaseAPI { * @param {string} [search] Filters by world name. * @param {string} [tag] Tags to include (comma-separated). * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden'} [releaseStatus] Filter by ReleaseStatus. + * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. * @param {string} [platform] The platform the asset supports. @@ -10146,7 +10360,7 @@ export class WorldsApi extends BaseAPI { * @throws {RequiredError} * @memberof WorldsApi */ - public searchWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: any) { + public searchWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: any) { return WorldsApiFp(this.configuration).searchWorlds(featured, sort, user, userId, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options).then((request) => request(this.axios, this.basePath)); } diff --git a/base.ts b/base.ts index bad9a06..646ed15 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.3.3 + * The version of the OpenAPI document: 1.4.0 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index d167130..a9b29e7 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.3.3 + * The version of the OpenAPI document: 1.4.0 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index fb64ccc..dad233d 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.3.3 + * The version of the OpenAPI document: 1.4.0 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index 9f12a5b..e495a2c 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.3.3 + * The version of the OpenAPI document: 1.4.0 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index 519278f..83cf7c1 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.3.3", + "version": "1.4.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.3.3", + "version": "1.4.0", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index b98b8b5..9ee4dbc 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.3.3", + "version": "1.4.0", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "keywords": [ From aec0673616ecec9fea51771aac0b1e9662019648 Mon Sep 17 00:00:00 2001 From: VRCCat Date: Wed, 6 Oct 2021 17:47:04 +0000 Subject: [PATCH 051/130] Upgrade Node SDK to spec 1.4.1 --- api.ts | 8 ++++---- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 ++-- package.json | 2 +- 7 files changed, 11 insertions(+), 11 deletions(-) diff --git a/api.ts b/api.ts index fd260cc..9ef2a5a 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.4.0 + * The version of the OpenAPI document: 1.4.1 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -3036,7 +3036,7 @@ export interface User { * @type {string} * @memberof User */ - instanceId: string; + instanceId?: string; /** * * @type {boolean} @@ -3060,7 +3060,7 @@ export interface User { * @type {string} * @memberof User */ - location: string; + location?: string; /** * * @type {string} @@ -3108,7 +3108,7 @@ export interface User { * @type {string} * @memberof User */ - worldId: string; + worldId?: string; } /** * Status object representing if a queried user by username or userId exists or not. This model is primarily used by the `/auth/exists` endpoint, which in turn is used during registration. Please see the documentation on that endpoint for more information on usage. diff --git a/base.ts b/base.ts index 646ed15..bc2ea5c 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.4.0 + * The version of the OpenAPI document: 1.4.1 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index a9b29e7..1ce42f2 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.4.0 + * The version of the OpenAPI document: 1.4.1 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index dad233d..2707a27 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.4.0 + * The version of the OpenAPI document: 1.4.1 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index e495a2c..aaa5cc0 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.4.0 + * The version of the OpenAPI document: 1.4.1 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index 83cf7c1..25afdf3 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.4.0", + "version": "1.4.1", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.4.0", + "version": "1.4.1", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index 9ee4dbc..f3b26dd 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.4.0", + "version": "1.4.1", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "keywords": [ From 878cbfeb14a70f8dc5be5658ece0d0b9247703e2 Mon Sep 17 00:00:00 2001 From: VRCCat Date: Fri, 8 Oct 2021 10:37:03 +0000 Subject: [PATCH 052/130] Upgrade Node SDK to spec 1.4.2 --- api.ts | 8 ++++---- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 ++-- package.json | 2 +- 7 files changed, 11 insertions(+), 11 deletions(-) diff --git a/api.ts b/api.ts index 9ef2a5a..7afdde9 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.4.1 + * The version of the OpenAPI document: 1.4.2 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -2110,10 +2110,10 @@ export interface Instance { capacity: number; /** * - * @type {number} + * @type {string} * @memberof Instance */ - clientNumber: number; + clientNumber: string; /** * * @type {boolean} @@ -2161,7 +2161,7 @@ export interface Instance { * @type {string} * @memberof Instance */ - ownerId: string; + ownerId?: string; /** * * @type {boolean} diff --git a/base.ts b/base.ts index bc2ea5c..a038541 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.4.1 + * The version of the OpenAPI document: 1.4.2 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index 1ce42f2..6f7335b 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.4.1 + * The version of the OpenAPI document: 1.4.2 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index 2707a27..dbf1467 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.4.1 + * The version of the OpenAPI document: 1.4.2 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index aaa5cc0..0c60d9c 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.4.1 + * The version of the OpenAPI document: 1.4.2 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index 25afdf3..c89b392 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.4.1", + "version": "1.4.2", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.4.1", + "version": "1.4.2", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index f3b26dd..c9b4b6b 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.4.1", + "version": "1.4.2", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "keywords": [ From 354637217bec4f8e499db2f840c47df1eade7197 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Foorack=20/=20Max=20Fax=C3=A4lv?= Date: Sat, 23 Oct 2021 21:56:36 +0200 Subject: [PATCH 053/130] Update README image URL --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index f349ad6..f80094f 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -![](https://github.com/vrchatapi/vrchatapi.github.io/blob/master/assets/img/lang/lang_javascript_banner_1500x300.png?raw=true) +![](https://github.com/vrchatapi/vrchatapi.github.io/blob/main/static/assets/img/lang/lang_javascript_banner_1500x300.png?raw=true) # VRChat API Library for JavaScript/TypeScript From 9f21cbb4bd73266a0494926af95b62484d9426c5 Mon Sep 17 00:00:00 2001 From: Foorack Date: Thu, 28 Oct 2021 00:38:51 +0200 Subject: [PATCH 054/130] chore: upgrade openapi-generator-cli version to 5.3.0 --- .github/workflows/ci.yaml | 2 + .openapi-generator/VERSION | 2 +- api.ts | 1558 ++++++++++++++++++------------------ base.ts | 4 +- common.ts | 8 +- openapitools.json | 2 +- package-lock.json | 2 +- package.json | 2 +- 8 files changed, 791 insertions(+), 789 deletions(-) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index bca5726..0c740f9 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -23,6 +23,8 @@ jobs: ${{ runner.os }}-node-v16 - name: Install OpenAPI Generator CLI run: npm install @openapitools/openapi-generator-cli + - name: Set OpenAPI Generator version + run: ./node_modules/\@openapitools/openapi-generator-cli/main.js version-manager set 5.3.0 - name: Generate SDK Client run: bash ./generate.sh - name: Check version number diff --git a/.openapi-generator/VERSION b/.openapi-generator/VERSION index 7cbea07..e230c83 100644 --- a/.openapi-generator/VERSION +++ b/.openapi-generator/VERSION @@ -1 +1 @@ -5.2.0 \ No newline at end of file +5.3.0 \ No newline at end of file diff --git a/api.ts b/api.ts index 7afdde9..f2561cd 100644 --- a/api.ts +++ b/api.ts @@ -13,7 +13,7 @@ import { Configuration } from './configuration'; -import globalAxios, { AxiosPromise, AxiosInstance } from 'axios'; +import globalAxios, { AxiosPromise, AxiosInstance, AxiosRequestConfig } from 'axios'; // Some imports not used depending on template conditions // @ts-ignore import { DUMMY_BASE_URL, assertParamExists, setApiKeyToObject, setBasicAuthToObject, setBearerAuthToObject, setOAuthToObject, setSearchParams, serializeDataIfNeeded, toPathString, createRequestFunction } from './common'; @@ -32,494 +32,494 @@ export interface APIConfig { * @type {boolean} * @memberof APIConfig */ - VoiceEnableDegradation: boolean; + 'VoiceEnableDegradation': boolean; /** * Unknown, probably voice optimization testing * @type {boolean} * @memberof APIConfig */ - VoiceEnableReceiverLimiting: boolean; + 'VoiceEnableReceiverLimiting': boolean; /** * VRChat\'s office address * @type {string} * @memberof APIConfig */ - address: string; + 'address': string; /** * Public Announcements * @type {Set} * @memberof APIConfig */ - announcements: Set; + 'announcements': Set; /** * apiKey to be used for all other requests * @type {string} * @memberof APIConfig */ - apiKey: string; + 'apiKey': string; /** * Game name * @type {string} * @memberof APIConfig * @deprecated */ - appName: string; + 'appName': string; /** * Build tag of the API server * @type {string} * @memberof APIConfig */ - buildVersionTag: string; + 'buildVersionTag': string; /** * apiKey to be used for all other requests * @type {string} * @memberof APIConfig */ - clientApiKey: string; + 'clientApiKey': string; /** * Unknown * @type {number} * @memberof APIConfig */ - clientBPSCeiling: number; + 'clientBPSCeiling': number; /** * Unknown * @type {number} * @memberof APIConfig */ - clientDisconnectTimeout: number; + 'clientDisconnectTimeout': number; /** * Unknown * @type {number} * @memberof APIConfig */ - clientReservedPlayerBPS: number; + 'clientReservedPlayerBPS': number; /** * Unknown * @type {number} * @memberof APIConfig */ - clientSentCountAllowance: number; + 'clientSentCountAllowance': number; /** * VRChat\'s contact email * @type {string} * @memberof APIConfig */ - contactEmail: string; + 'contactEmail': string; /** * VRChat\'s copyright-issues-related email * @type {string} * @memberof APIConfig */ - copyrightEmail: string; + 'copyrightEmail': string; /** * Current version number of the Terms of Service * @type {number} * @memberof APIConfig */ - currentTOSVersion: number; + 'currentTOSVersion': number; /** * * @type {string} * @memberof APIConfig */ - defaultAvatar: string; + 'defaultAvatar': string; /** * * @type {DeploymentGroup} * @memberof APIConfig */ - deploymentGroup: DeploymentGroup; + 'deploymentGroup': DeploymentGroup; /** * Version number for game development build * @type {string} * @memberof APIConfig * @deprecated */ - devAppVersionStandalone: string; + 'devAppVersionStandalone': string; /** * Developer Download link * @type {string} * @memberof APIConfig * @deprecated */ - devDownloadLinkWindows: string; + 'devDownloadLinkWindows': string; /** * Link to download the development SDK, use downloadUrls instead * @type {string} * @memberof APIConfig * @deprecated */ - devSdkUrl: string; + 'devSdkUrl': string; /** * Version of the development SDK * @type {string} * @memberof APIConfig * @deprecated */ - devSdkVersion: string; + 'devSdkVersion': string; /** * Version number for server development build * @type {string} * @memberof APIConfig * @deprecated */ - devServerVersionStandalone: string; + 'devServerVersionStandalone': string; /** * Unknown, \"dis\" maybe for disconnect? * @type {string} * @memberof APIConfig */ - dis_countdown: string; + 'dis-countdown': string; /** * Toggles if copying avatars should be disabled * @type {boolean} * @memberof APIConfig */ - disableAvatarCopying: boolean; + 'disableAvatarCopying': boolean; /** * Toggles if avatar gating should be disabled. Avatar gating restricts uploading of avatars to people with the `system_avatar_access` Tag or `admin_avatar_access` Tag * @type {boolean} * @memberof APIConfig */ - disableAvatarGating: boolean; + 'disableAvatarGating': boolean; /** * Toggles if the Community Labs should be disabled * @type {boolean} * @memberof APIConfig */ - disableCommunityLabs: boolean; + 'disableCommunityLabs': boolean; /** * Toggles if promotion out of Community Labs should be disabled * @type {boolean} * @memberof APIConfig */ - disableCommunityLabsPromotion: boolean; + 'disableCommunityLabsPromotion': boolean; /** * Unknown * @type {boolean} * @memberof APIConfig */ - disableEmail: boolean; + 'disableEmail': boolean; /** * Toggles if Analytics should be disabled. * @type {boolean} * @memberof APIConfig */ - disableEventStream: boolean; + 'disableEventStream': boolean; /** * Toggles if feedback gating should be disabled. Feedback gating restricts submission of feedback (reporting a World or User) to people with the `system_feedback_access` Tag. * @type {boolean} * @memberof APIConfig */ - disableFeedbackGating: boolean; + 'disableFeedbackGating': boolean; /** * Unknown, probably toggles compilation of frontend web builds? So internal flag? * @type {boolean} * @memberof APIConfig */ - disableFrontendBuilds: boolean; + 'disableFrontendBuilds': boolean; /** * Unknown * @type {boolean} * @memberof APIConfig */ - disableHello: boolean; + 'disableHello': boolean; /** * Toggles if signing up for Subscriptions in Oculus is disabled or not. * @type {boolean} * @memberof APIConfig */ - disableOculusSubs: boolean; + 'disableOculusSubs': boolean; /** * Toggles if new user account registration should be disabled. * @type {boolean} * @memberof APIConfig */ - disableRegistration: boolean; + 'disableRegistration': boolean; /** * Toggles if Steam Networking should be disabled. VRChat these days uses Photon Unity Networking (PUN) instead. * @type {boolean} * @memberof APIConfig */ - disableSteamNetworking: boolean; + 'disableSteamNetworking': boolean; /** * Toggles if 2FA should be disabled. * @type {boolean} * @memberof APIConfig * @deprecated */ - disableTwoFactorAuth: boolean; + 'disableTwoFactorAuth': boolean; /** * Toggles if Udon should be universally disabled in-game. * @type {boolean} * @memberof APIConfig */ - disableUdon: boolean; + 'disableUdon': boolean; /** * Toggles if account upgrading \"linking with Steam/Oculus\" should be disabled. * @type {boolean} * @memberof APIConfig */ - disableUpgradeAccount: boolean; + 'disableUpgradeAccount': boolean; /** * Download link for game on the Oculus Rift website. * @type {string} * @memberof APIConfig */ - downloadLinkWindows: string; + 'downloadLinkWindows': string; /** * * @type {DownloadURLList} * @memberof APIConfig */ - downloadUrls: DownloadURLList; + 'downloadUrls': DownloadURLList; /** * Array of DynamicWorldRow objects, used by the game to display the list of world rows * @type {Set} * @memberof APIConfig */ - dynamicWorldRows: Set; + 'dynamicWorldRows': Set; /** * * @type {APIEventConfig} * @memberof APIConfig */ - events: APIEventConfig; + 'events': APIEventConfig; /** * Unknown * @type {string} * @memberof APIConfig * @deprecated */ - gearDemoRoomId: string; + 'gearDemoRoomId': string; /** * * @type {string} * @memberof APIConfig */ - homeWorldId: string; + 'homeWorldId': string; /** * Redirect target if you try to open the base API domain in your browser * @type {string} * @memberof APIConfig */ - homepageRedirectTarget: string; + 'homepageRedirectTarget': string; /** * * @type {string} * @memberof APIConfig */ - hubWorldId: string; + 'hubWorldId': string; /** * VRChat\'s job application email * @type {string} * @memberof APIConfig */ - jobsEmail: string; + 'jobsEmail': string; /** * MOTD * @type {string} * @memberof APIConfig * @deprecated */ - messageOfTheDay: string; + 'messageOfTheDay': string; /** * VRChat\'s moderation related email * @type {string} * @memberof APIConfig */ - moderationEmail: string; + 'moderationEmail': string; /** * Unknown * @type {number} * @memberof APIConfig */ - moderationQueryPeriod: number; + 'moderationQueryPeriod': number; /** * Used in-game to notify a user they aren\'t allowed to select avatars in private worlds * @type {string} * @memberof APIConfig */ - notAllowedToSelectAvatarInPrivateWorldMessage: string; + 'notAllowedToSelectAvatarInPrivateWorldMessage': string; /** * Extra [plugin](https://doc.photonengine.com/en-us/server/current/plugins/manual) to run in each instance * @type {string} * @memberof APIConfig */ - plugin: string; + 'plugin': string; /** * Version number for game release build * @type {string} * @memberof APIConfig * @deprecated */ - releaseAppVersionStandalone: string; + 'releaseAppVersionStandalone': string; /** * Link to download the release SDK * @type {string} * @memberof APIConfig * @deprecated */ - releaseSdkUrl: string; + 'releaseSdkUrl': string; /** * Version of the release SDK * @type {string} * @memberof APIConfig * @deprecated */ - releaseSdkVersion: string; + 'releaseSdkVersion': string; /** * Version number for server release build * @type {string} * @memberof APIConfig * @deprecated */ - releaseServerVersionStandalone: string; + 'releaseServerVersionStandalone': string; /** * Link to the developer FAQ * @type {string} * @memberof APIConfig */ - sdkDeveloperFaqUrl: string; + 'sdkDeveloperFaqUrl': string; /** * Link to the official VRChat Discord * @type {string} * @memberof APIConfig */ - sdkDiscordUrl: string; + 'sdkDiscordUrl': string; /** * Used in the SDK to notify a user they aren\'t allowed to upload avatars/worlds yet * @type {string} * @memberof APIConfig */ - sdkNotAllowedToPublishMessage: string; + 'sdkNotAllowedToPublishMessage': string; /** * Unity version supported by the SDK * @type {string} * @memberof APIConfig */ - sdkUnityVersion: string; + 'sdkUnityVersion': string; /** * Server name of the API server currently responding * @type {string} * @memberof APIConfig */ - serverName: string; + 'serverName': string; /** * VRChat\'s support email * @type {string} * @memberof APIConfig */ - supportEmail: string; + 'supportEmail': string; /** * * @type {string} * @memberof APIConfig */ - timeOutWorldId: string; + 'timeOutWorldId': string; /** * * @type {string} * @memberof APIConfig */ - tutorialWorldId: string; + 'tutorialWorldId': string; /** * Unknown * @type {number} * @memberof APIConfig */ - updateRateMsMaximum: number; + 'updateRateMsMaximum': number; /** * Unknown * @type {number} * @memberof APIConfig */ - updateRateMsMinimum: number; + 'updateRateMsMinimum': number; /** * Unknown * @type {number} * @memberof APIConfig */ - updateRateMsNormal: number; + 'updateRateMsNormal': number; /** * Unknown * @type {number} * @memberof APIConfig */ - updateRateMsUdonManual: number; + 'updateRateMsUdonManual': number; /** * Unknown * @type {number} * @memberof APIConfig */ - uploadAnalysisPercent: number; + 'uploadAnalysisPercent': number; /** * List of allowed URLs that bypass the \"Allow untrusted URL\'s\" setting in-game * @type {Array} * @memberof APIConfig */ - urlList: Array; + 'urlList': Array; /** * Unknown * @type {boolean} * @memberof APIConfig */ - useReliableUdpForVoice: boolean; + 'useReliableUdpForVoice': boolean; /** * Unknown * @type {number} * @memberof APIConfig */ - userUpdatePeriod: number; + 'userUpdatePeriod': number; /** * Unknown * @type {number} * @memberof APIConfig */ - userVerificationDelay: number; + 'userVerificationDelay': number; /** * Unknown * @type {number} * @memberof APIConfig */ - userVerificationRetry: number; + 'userVerificationRetry': number; /** * Unknown * @type {number} * @memberof APIConfig */ - userVerificationTimeout: number; + 'userVerificationTimeout': number; /** * Download link for game on the Steam website. * @type {string} * @memberof APIConfig */ - viveWindowsUrl: string; + 'viveWindowsUrl': string; /** * List of allowed URLs that are allowed to host avatar assets * @type {Array} * @memberof APIConfig */ - whiteListedAssetUrls: Array; + 'whiteListedAssetUrls': Array; /** * Unknown * @type {number} * @memberof APIConfig */ - worldUpdatePeriod: number; + 'worldUpdatePeriod': number; /** * Currently used youtube-dl.exe hash in SHA-256-delimited format * @type {string} * @memberof APIConfig */ - youtubedl_hash: string; + 'youtubedl-hash': string; /** * Currently used youtube-dl.exe version * @type {string} * @memberof APIConfig */ - youtubedl_version: string; + 'youtubedl-version': string; } /** * @@ -532,61 +532,61 @@ export interface APIEventConfig { * @type {number} * @memberof APIEventConfig */ - distanceClose: number; + 'distanceClose': number; /** * Unknown * @type {number} * @memberof APIEventConfig */ - distanceFactor: number; + 'distanceFactor': number; /** * Unknown * @type {number} * @memberof APIEventConfig */ - distanceFar: number; + 'distanceFar': number; /** * Unknown * @type {number} * @memberof APIEventConfig */ - groupDistance: number; + 'groupDistance': number; /** * Unknown * @type {number} * @memberof APIEventConfig */ - maximumBunchSize: number; + 'maximumBunchSize': number; /** * Unknown * @type {number} * @memberof APIEventConfig */ - notVisibleFactor: number; + 'notVisibleFactor': number; /** * Unknown * @type {number} * @memberof APIEventConfig */ - playerOrderBucketSize: number; + 'playerOrderBucketSize': number; /** * Unknown * @type {number} * @memberof APIEventConfig */ - playerOrderFactor: number; + 'playerOrderFactor': number; /** * Unknown * @type {number} * @memberof APIEventConfig */ - slowUpdateFactorThreshold: number; + 'slowUpdateFactorThreshold': number; /** * Unknown * @type {number} * @memberof APIEventConfig */ - viewSegmentLength: number; + 'viewSegmentLength': number; } /** * @@ -599,110 +599,110 @@ export interface Avatar { * @type {string} * @memberof Avatar */ - assetUrl?: string; + 'assetUrl'?: string; /** * Not present from general serach `/avatars`, only on specific requests `/avatars/{avatarId}`. **Deprecation:** `Object` has unknown usage/fields, and is always empty. Use normal `Url` field instead. * @type {object} * @memberof Avatar */ - assetUrlObject?: object; + 'assetUrlObject'?: object; /** * * @type {string} * @memberof Avatar */ - authorId: string; + 'authorId': string; /** * * @type {string} * @memberof Avatar */ - authorName: string; + 'authorName': string; /** * * @type {string} * @memberof Avatar */ - created_at: string; + 'created_at': string; /** * * @type {string} * @memberof Avatar */ - description: string; + 'description': string; /** * * @type {boolean} * @memberof Avatar */ - featured: boolean; + 'featured': boolean; /** * * @type {string} * @memberof Avatar */ - id: string; + 'id': string; /** * * @type {string} * @memberof Avatar */ - imageUrl: string; + 'imageUrl': string; /** * * @type {string} * @memberof Avatar */ - name: string; + 'name': string; /** * * @type {ReleaseStatus} * @memberof Avatar */ - releaseStatus: ReleaseStatus; + 'releaseStatus': ReleaseStatus; /** * * @type {Array} * @memberof Avatar */ - tags: Array; + 'tags': Array; /** * * @type {string} * @memberof Avatar */ - thumbnailImageUrl: string; + 'thumbnailImageUrl': string; /** * * @type {string} * @memberof Avatar */ - unityPackageUrl: string; + 'unityPackageUrl': string; /** * * @type {AvatarUnityPackageUrlObject} * @memberof Avatar * @deprecated */ - unityPackageUrlObject: AvatarUnityPackageUrlObject; + 'unityPackageUrlObject': AvatarUnityPackageUrlObject; /** * * @type {Set} * @memberof Avatar */ - unityPackages: Set; + 'unityPackages': Set; /** * * @type {string} * @memberof Avatar */ - updated_at: string; + 'updated_at': string; /** * * @type {number} * @memberof Avatar */ - version: number; + 'version': number; } /** * **Deprecation:** `Object` has unknown usage/fields, and is always empty. Use normal `Url` field instead. @@ -715,7 +715,7 @@ export interface AvatarUnityPackageUrlObject { * @type {string} * @memberof AvatarUnityPackageUrlObject */ - unityPackageUrl?: string; + 'unityPackageUrl'?: string; } /** * @@ -728,278 +728,278 @@ export interface CurrentUser { * @type {number} * @memberof CurrentUser */ - acceptedTOSVersion: number; + 'acceptedTOSVersion': number; /** * * @type {string} * @memberof CurrentUser */ - accountDeletionDate?: string | null; + 'accountDeletionDate'?: string | null; /** * * @type {Array} * @memberof CurrentUser */ - activeFriends?: Array; + 'activeFriends'?: Array; /** * * @type {boolean} * @memberof CurrentUser */ - allowAvatarCopying: boolean; + 'allowAvatarCopying': boolean; /** * * @type {string} * @memberof CurrentUser */ - bio: string; + 'bio': string; /** * * @type {Array} * @memberof CurrentUser */ - bioLinks: Array; + 'bioLinks': Array; /** * * @type {string} * @memberof CurrentUser */ - currentAvatar: string; + 'currentAvatar': string; /** * * @type {string} * @memberof CurrentUser */ - currentAvatarAssetUrl: string; + 'currentAvatarAssetUrl': string; /** * * @type {string} * @memberof CurrentUser */ - currentAvatarImageUrl: string; + 'currentAvatarImageUrl': string; /** * * @type {string} * @memberof CurrentUser */ - currentAvatarThumbnailImageUrl: string; + 'currentAvatarThumbnailImageUrl': string; /** * * @type {string} * @memberof CurrentUser */ - date_joined: string; + 'date_joined': string; /** * * @type {DeveloperType} * @memberof CurrentUser */ - developerType: DeveloperType; + 'developerType': DeveloperType; /** * * @type {string} * @memberof CurrentUser */ - displayName: string; + 'displayName': string; /** * * @type {boolean} * @memberof CurrentUser */ - emailVerified: boolean; + 'emailVerified': boolean; /** * * @type {string} * @memberof CurrentUser */ - fallbackAvatar?: string; + 'fallbackAvatar'?: string; /** * Always empty array. * @type {Array} * @memberof CurrentUser * @deprecated */ - friendGroupNames: Array; + 'friendGroupNames': Array; /** * * @type {string} * @memberof CurrentUser */ - friendKey: string; + 'friendKey': string; /** * * @type {Array} * @memberof CurrentUser */ - friends: Array; + 'friends': Array; /** * * @type {boolean} * @memberof CurrentUser */ - hasBirthday: boolean; + 'hasBirthday': boolean; /** * * @type {boolean} * @memberof CurrentUser */ - hasEmail: boolean; + 'hasEmail': boolean; /** * * @type {boolean} * @memberof CurrentUser */ - hasLoggedInFromClient: boolean; + 'hasLoggedInFromClient': boolean; /** * * @type {boolean} * @memberof CurrentUser */ - hasPendingEmail: boolean; + 'hasPendingEmail': boolean; /** * * @type {string} * @memberof CurrentUser */ - homeLocation: string; + 'homeLocation': string; /** * * @type {string} * @memberof CurrentUser */ - id: string; + 'id': string; /** * * @type {boolean} * @memberof CurrentUser */ - isFriend: boolean; + 'isFriend': boolean; /** * * @type {string} * @memberof CurrentUser */ - last_login: string; + 'last_login': string; /** * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. * @type {string} * @memberof CurrentUser */ - last_platform: string; + 'last_platform': string; /** * * @type {string} * @memberof CurrentUser */ - obfuscatedEmail: string; + 'obfuscatedEmail': string; /** * * @type {string} * @memberof CurrentUser */ - obfuscatedPendingEmail: string; + 'obfuscatedPendingEmail': string; /** * * @type {string} * @memberof CurrentUser */ - oculusId: string; + 'oculusId': string; /** * * @type {Array} * @memberof CurrentUser */ - offlineFriends?: Array; + 'offlineFriends'?: Array; /** * * @type {Array} * @memberof CurrentUser */ - onlineFriends?: Array; + 'onlineFriends'?: Array; /** * * @type {Array} * @memberof CurrentUser */ - pastDisplayNames: Array; + 'pastDisplayNames': Array; /** * * @type {string} * @memberof CurrentUser */ - profilePicOverride: string; + 'profilePicOverride': string; /** * * @type {UserState} * @memberof CurrentUser */ - state: UserState; + 'state': UserState; /** * * @type {UserStatus} * @memberof CurrentUser */ - status: UserStatus; + 'status': UserStatus; /** * * @type {string} * @memberof CurrentUser */ - statusDescription: string; + 'statusDescription': string; /** * * @type {boolean} * @memberof CurrentUser */ - statusFirstTime: boolean; + 'statusFirstTime': boolean; /** * * @type {Array} * @memberof CurrentUser */ - statusHistory: Array; + 'statusHistory': Array; /** * * @type {object} * @memberof CurrentUser */ - steamDetails: object; + 'steamDetails': object; /** * * @type {string} * @memberof CurrentUser */ - steamId: string; + 'steamId': string; /** * * @type {Array} * @memberof CurrentUser */ - tags: Array; + 'tags': Array; /** * * @type {boolean} * @memberof CurrentUser */ - twoFactorAuthEnabled: boolean; + 'twoFactorAuthEnabled': boolean; /** * * @type {boolean} * @memberof CurrentUser */ - unsubscribe: boolean; + 'unsubscribe': boolean; /** * * @type {string} * @memberof CurrentUser */ - userIcon: string; + 'userIcon': string; /** * * @type {string} * @memberof CurrentUser */ - username: string; + 'username': string; } /** * Used to identify which API deployment cluster is currently responding. `blue` and `green` are used by Production. `grape`and `cherry` are used during Development. [Blue Green Deployment by Martin Fowler](https://martinfowler.com/bliki/BlueGreenDeployment.html) @@ -1039,19 +1039,19 @@ export interface DownloadURLList { * @memberof DownloadURLList * @deprecated */ - sdk2: string; + 'sdk2': string; /** * Download link for SDK3 for Avatars * @type {string} * @memberof DownloadURLList */ - sdk3_avatars: string; + 'sdk3-avatars': string; /** * Download link for SDK3 for Worlds * @type {string} * @memberof DownloadURLList */ - sdk3_worlds: string; + 'sdk3-worlds': string; } /** * @@ -1064,43 +1064,43 @@ export interface DynamicWorldRow { * @type {number} * @memberof DynamicWorldRow */ - index: number; + 'index': number; /** * * @type {string} * @memberof DynamicWorldRow */ - name: string; + 'name': string; /** * * @type {string} * @memberof DynamicWorldRow */ - platform: string; + 'platform': string; /** * * @type {string} * @memberof DynamicWorldRow */ - sortHeading: string; + 'sortHeading': string; /** * * @type {string} * @memberof DynamicWorldRow */ - sortOrder: string; + 'sortOrder': string; /** * * @type {string} * @memberof DynamicWorldRow */ - sortOwnership: string; + 'sortOwnership': string; /** * Tag to filter worlds for this row. Not always present. * @type {string} * @memberof DynamicWorldRow */ - tag?: string; + 'tag'?: string; } /** * @@ -1113,25 +1113,25 @@ export interface Favorite { * @type {string} * @memberof Favorite */ - favoriteId: string; + 'favoriteId': string; /** * * @type {string} * @memberof Favorite */ - id: string; + 'id': string; /** * * @type {Array} * @memberof Favorite */ - tags: Array; + 'tags': Array; /** * * @type {FavoriteType} * @memberof Favorite */ - type: FavoriteType; + 'type': FavoriteType; } /** * @@ -1144,49 +1144,49 @@ export interface FavoriteGroup { * @type {string} * @memberof FavoriteGroup */ - displayName: string; + 'displayName': string; /** * * @type {string} * @memberof FavoriteGroup */ - id: string; + 'id': string; /** * * @type {string} * @memberof FavoriteGroup */ - name: string; + 'name': string; /** * * @type {string} * @memberof FavoriteGroup */ - ownerDisplayName: string; + 'ownerDisplayName': string; /** * * @type {string} * @memberof FavoriteGroup */ - ownerId: string; + 'ownerId': string; /** * * @type {Array} * @memberof FavoriteGroup */ - tags: Array; + 'tags': Array; /** * * @type {FavoriteType} * @memberof FavoriteGroup */ - type: FavoriteType; + 'type': FavoriteType; /** * * @type {FavoriteGroupVisibility} * @memberof FavoriteGroup */ - visibility: FavoriteGroupVisibility; + 'visibility': FavoriteGroupVisibility; } /** * @@ -1223,43 +1223,43 @@ export interface FileData { * @type {string} * @memberof FileData */ - category: FileDataCategoryEnum; + 'category': FileDataCategoryEnum; /** * * @type {string} * @memberof FileData */ - fileName: string; + 'fileName': string; /** * * @type {string} * @memberof FileData */ - md5: string; + 'md5': string; /** * * @type {number} * @memberof FileData */ - sizeInBytes: number; + 'sizeInBytes': number; /** * * @type {FileStatus} * @memberof FileData */ - status: FileStatus; + 'status': FileStatus; /** * * @type {string} * @memberof FileData */ - uploadId: string; + 'uploadId': string; /** * * @type {string} * @memberof FileData */ - url: string; + 'url': string; } /** @@ -1295,43 +1295,43 @@ export interface FileVersion { * @type {string} * @memberof FileVersion */ - created_at: string; + 'created_at': string; /** * Usually only present if `true` * @type {boolean} * @memberof FileVersion */ - deleted?: boolean; + 'deleted'?: boolean; /** * * @type {FileData} * @memberof FileVersion */ - delta?: FileData; + 'delta'?: FileData; /** * * @type {FileData} * @memberof FileVersion */ - file?: FileData; + 'file'?: FileData; /** * * @type {FileData} * @memberof FileVersion */ - signature?: FileData; + 'signature'?: FileData; /** * * @type {FileStatus} * @memberof FileVersion */ - status: FileStatus; + 'status': FileStatus; /** * Incremental version counter, can only be increased. * @type {number} * @memberof FileVersion */ - version: number; + 'version': number; } /** * @@ -1344,19 +1344,19 @@ export interface FriendStatus { * @type {boolean} * @memberof FriendStatus */ - incomingRequest: boolean; + 'incomingRequest': boolean; /** * * @type {boolean} * @memberof FriendStatus */ - isFriend: boolean; + 'isFriend': boolean; /** * * @type {boolean} * @memberof FriendStatus */ - outgoingRequest: boolean; + 'outgoingRequest': boolean; } /** * @@ -1369,7 +1369,7 @@ export interface InlineObject { * @type {string} * @memberof InlineObject */ - code: string; + 'code': string; } /** * @@ -1382,7 +1382,7 @@ export interface InlineObject1 { * @type {string} * @memberof InlineObject1 */ - code: string; + 'code': string; } /** * @@ -1395,55 +1395,55 @@ export interface InlineObject10 { * @type {string} * @memberof InlineObject10 */ - assetUrl?: string; + 'assetUrl'?: string; /** * * @type {string} * @memberof InlineObject10 */ - id?: string; + 'id'?: string; /** * * @type {string} * @memberof InlineObject10 */ - name: string; + 'name': string; /** * * @type {string} * @memberof InlineObject10 */ - description?: string; + 'description'?: string; /** * * @type {Array} * @memberof InlineObject10 */ - tags?: Array; + 'tags'?: Array; /** * * @type {string} * @memberof InlineObject10 */ - imageUrl: string; + 'imageUrl': string; /** * * @type {ReleaseStatus} * @memberof InlineObject10 */ - releaseStatus?: ReleaseStatus; + 'releaseStatus'?: ReleaseStatus; /** * * @type {number} * @memberof InlineObject10 */ - version?: number; + 'version'?: number; /** * * @type {string} * @memberof InlineObject10 */ - unityPackageUrl?: string; + 'unityPackageUrl'?: string; } /** * @@ -1456,55 +1456,55 @@ export interface InlineObject11 { * @type {string} * @memberof InlineObject11 */ - assetUrl?: string; + 'assetUrl'?: string; /** * * @type {string} * @memberof InlineObject11 */ - id?: string; + 'id'?: string; /** * * @type {string} * @memberof InlineObject11 */ - name?: string; + 'name'?: string; /** * * @type {string} * @memberof InlineObject11 */ - description?: string; + 'description'?: string; /** * * @type {Array} * @memberof InlineObject11 */ - tags?: Array; + 'tags'?: Array; /** * * @type {string} * @memberof InlineObject11 */ - imageUrl?: string; + 'imageUrl'?: string; /** * * @type {ReleaseStatus} * @memberof InlineObject11 */ - releaseStatus?: ReleaseStatus; + 'releaseStatus'?: ReleaseStatus; /** * * @type {number} * @memberof InlineObject11 */ - version?: number; + 'version'?: number; /** * * @type {string} * @memberof InlineObject11 */ - unityPackageUrl?: string; + 'unityPackageUrl'?: string; } /** * @@ -1517,13 +1517,13 @@ export interface InlineObject12 { * @type {string} * @memberof InlineObject12 */ - moderated: string; + 'moderated': string; /** * * @type {PlayerModerationType} * @memberof InlineObject12 */ - type: PlayerModerationType; + 'type': PlayerModerationType; } /** * @@ -1536,13 +1536,13 @@ export interface InlineObject13 { * @type {string} * @memberof InlineObject13 */ - moderated?: string; + 'moderated'?: string; /** * * @type {PlayerModerationType} * @memberof InlineObject13 */ - type: PlayerModerationType; + 'type': PlayerModerationType; } /** * @@ -1555,55 +1555,55 @@ export interface InlineObject2 { * @type {string} * @memberof InlineObject2 */ - email?: string; + 'email'?: string; /** * * @type {string} * @memberof InlineObject2 */ - birthday?: string; + 'birthday'?: string; /** * * @type {number} * @memberof InlineObject2 */ - acceptedTOSVersion?: number; + 'acceptedTOSVersion'?: number; /** * * @type {Array} * @memberof InlineObject2 */ - tags?: Array; + 'tags'?: Array; /** * * @type {UserStatus} * @memberof InlineObject2 */ - status?: UserStatus; + 'status'?: UserStatus; /** * * @type {string} * @memberof InlineObject2 */ - statusDescription?: string; + 'statusDescription'?: string; /** * * @type {string} * @memberof InlineObject2 */ - bio?: string; + 'bio'?: string; /** * * @type {Array} * @memberof InlineObject2 */ - bioLinks?: Array; + 'bioLinks'?: Array; /** * MUST be a valid VRChat /file/ url. * @type {string} * @memberof InlineObject2 */ - userIcon?: string; + 'userIcon'?: string; } /** * @@ -1616,25 +1616,25 @@ export interface InlineObject3 { * @type {string} * @memberof InlineObject3 */ - name: string; + 'name': string; /** * * @type {MIMEType} * @memberof InlineObject3 */ - mimeType: MIMEType; + 'mimeType': MIMEType; /** * * @type {string} * @memberof InlineObject3 */ - extension: string; + 'extension': string; /** * * @type {Array} * @memberof InlineObject3 */ - tags?: Array; + 'tags'?: Array; } /** * @@ -1647,25 +1647,25 @@ export interface InlineObject4 { * @type {string} * @memberof InlineObject4 */ - signatureMd5: string; + 'signatureMd5': string; /** * * @type {number} * @memberof InlineObject4 */ - signatureSizeInBytes: number; + 'signatureSizeInBytes': number; /** * * @type {string} * @memberof InlineObject4 */ - fileMd5?: string; + 'fileMd5'?: string; /** * * @type {number} * @memberof InlineObject4 */ - fileSizeInBytes?: number; + 'fileSizeInBytes'?: number; } /** * @@ -1678,21 +1678,21 @@ export interface InlineObject5 { * @type {Set} * @memberof InlineObject5 */ - etags?: Set; + 'etags'?: Set; /** * Always a zero in string form, despite how many parts uploaded. * @type {string} * @memberof InlineObject5 * @deprecated */ - nextPartNumber: string; + 'nextPartNumber': string; /** * Always a zero in string form, despite how many parts uploaded. * @type {string} * @memberof InlineObject5 * @deprecated */ - maxParts: string; + 'maxParts': string; } /** * @@ -1705,85 +1705,85 @@ export interface InlineObject6 { * @type {string} * @memberof InlineObject6 */ - assetUrl: string; + 'assetUrl': string; /** * * @type {string} * @memberof InlineObject6 */ - assetVersion?: string; + 'assetVersion'?: string; /** * * @type {string} * @memberof InlineObject6 */ - authorId?: string; + 'authorId'?: string; /** * * @type {string} * @memberof InlineObject6 */ - authorName?: string; + 'authorName'?: string; /** * * @type {number} * @memberof InlineObject6 */ - capacity?: number; + 'capacity'?: number; /** * * @type {string} * @memberof InlineObject6 */ - description?: string; + 'description'?: string; /** * * @type {string} * @memberof InlineObject6 */ - id?: string; + 'id'?: string; /** * * @type {string} * @memberof InlineObject6 */ - imageUrl: string; + 'imageUrl': string; /** * * @type {string} * @memberof InlineObject6 */ - name: string; + 'name': string; /** * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. * @type {string} * @memberof InlineObject6 */ - platform?: string; + 'platform'?: string; /** * * @type {ReleaseStatus} * @memberof InlineObject6 */ - releaseStatus?: ReleaseStatus; + 'releaseStatus'?: ReleaseStatus; /** * * @type {Array} * @memberof InlineObject6 */ - tags?: Array; + 'tags'?: Array; /** * * @type {string} * @memberof InlineObject6 */ - unityPackageUrl?: string; + 'unityPackageUrl'?: string; /** * * @type {string} * @memberof InlineObject6 */ - unityVersion?: string; + 'unityVersion'?: string; } /** * @@ -1796,85 +1796,85 @@ export interface InlineObject7 { * @type {string} * @memberof InlineObject7 */ - assetUrl?: string; + 'assetUrl'?: string; /** * * @type {string} * @memberof InlineObject7 */ - assetVersion?: string; + 'assetVersion'?: string; /** * * @type {string} * @memberof InlineObject7 */ - authorId?: string; + 'authorId'?: string; /** * * @type {string} * @memberof InlineObject7 */ - authorName?: string; + 'authorName'?: string; /** * * @type {number} * @memberof InlineObject7 */ - capacity?: number; + 'capacity'?: number; /** * * @type {string} * @memberof InlineObject7 */ - description?: string; + 'description'?: string; /** * * @type {string} * @memberof InlineObject7 */ - id?: string; + 'id'?: string; /** * * @type {string} * @memberof InlineObject7 */ - imageUrl?: string; + 'imageUrl'?: string; /** * * @type {string} * @memberof InlineObject7 */ - name?: string; + 'name'?: string; /** * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. * @type {string} * @memberof InlineObject7 */ - platform?: string; + 'platform'?: string; /** * * @type {ReleaseStatus} * @memberof InlineObject7 */ - releaseStatus?: ReleaseStatus; + 'releaseStatus'?: ReleaseStatus; /** * * @type {Array} * @memberof InlineObject7 */ - tags?: Array; + 'tags'?: Array; /** * * @type {string} * @memberof InlineObject7 */ - unityPackageUrl?: string; + 'unityPackageUrl'?: string; /** * * @type {string} * @memberof InlineObject7 */ - unityVersion?: string; + 'unityVersion'?: string; } /** * @@ -1887,19 +1887,19 @@ export interface InlineObject8 { * @type {FavoriteType} * @memberof InlineObject8 */ - type: FavoriteType; + 'type': FavoriteType; /** * Must be either AvatarID, WorldID or UserID. * @type {string} * @memberof InlineObject8 */ - favoriteId: string; + 'favoriteId': string; /** * Tags indicate which group this favorite belongs to. Adding multiple groups makes it show up in all. Removing it from one in that case removes it from all. * @type {Array} * @memberof InlineObject8 */ - tags: Array; + 'tags': Array; } /** * @@ -1912,19 +1912,19 @@ export interface InlineObject9 { * @type {string} * @memberof InlineObject9 */ - displayName?: string; + 'displayName'?: string; /** * * @type {FavoriteGroupVisibility} * @memberof InlineObject9 */ - visibility?: FavoriteGroupVisibility; + 'visibility'?: FavoriteGroupVisibility; /** * Tags on FavoriteGroups are believed to do nothing. * @type {Array} * @memberof InlineObject9 */ - tags?: Array; + 'tags'?: Array; } /** * @@ -1937,13 +1937,13 @@ export interface InlineResponse200 { * @type {boolean} * @memberof InlineResponse200 */ - ok: boolean; + 'ok': boolean; /** * * @type {string} * @memberof InlineResponse200 */ - token: string; + 'token': string; } /** * @@ -1956,7 +1956,7 @@ export interface InlineResponse2001 { * @type {boolean} * @memberof InlineResponse2001 */ - verified: boolean; + 'verified': boolean; } /** * @@ -1969,19 +1969,19 @@ export interface InlineResponse2002 { * @type {boolean} * @memberof InlineResponse2002 */ - ok: boolean; + 'ok': boolean; /** * * @type {string} * @memberof InlineResponse2002 */ - serverName: string; + 'serverName': string; /** * * @type {string} * @memberof InlineResponse2002 */ - buildVersionTag: string; + 'buildVersionTag': string; } /** * @@ -1994,37 +1994,37 @@ export interface InlineResponse2003 { * @type {string} * @memberof InlineResponse2003 */ - uploadId: string; + 'uploadId': string; /** * * @type {string} * @memberof InlineResponse2003 */ - fileName: string; + 'fileName': string; /** * * @type {number} * @memberof InlineResponse2003 */ - nextPartNumber: number; + 'nextPartNumber': number; /** * * @type {number} * @memberof InlineResponse2003 */ - maxParts: number; + 'maxParts': number; /** * * @type {Array} * @memberof InlineResponse2003 */ - parts: Array; + 'parts': Array; /** * Unknown * @type {Array} * @memberof InlineResponse2003 */ - etags: Array; + 'etags': Array; } /** * @@ -2037,7 +2037,7 @@ export interface InlineResponse2004 { * @type {string} * @memberof InlineResponse2004 */ - url: string; + 'url': string; } /** * @@ -2050,13 +2050,13 @@ export interface InlineResponse2005 { * @type {string} * @memberof InlineResponse2005 */ - id: string; + 'id': string; /** * * @type {object} * @memberof InlineResponse2005 */ - metadata: object; + 'metadata': object; } /** * @@ -2069,7 +2069,7 @@ export interface InlineResponse2006 { * @type {boolean} * @memberof InlineResponse2006 */ - canPubilsh: boolean; + 'canPubilsh': boolean; } /** * @@ -2082,7 +2082,7 @@ export interface InlineResponse400 { * @type {Error} * @memberof InlineResponse400 */ - error: Error; + 'error': Error; } /** * @@ -2095,135 +2095,135 @@ export interface Instance { * @type {boolean} * @memberof Instance */ - active: boolean; + 'active': boolean; /** * * @type {boolean} * @memberof Instance */ - canRequestInvite: boolean; + 'canRequestInvite': boolean; /** * * @type {number} * @memberof Instance */ - capacity: number; + 'capacity': number; /** * * @type {string} * @memberof Instance */ - clientNumber: string; + 'clientNumber': string; /** * * @type {boolean} * @memberof Instance */ - full: boolean; + 'full': boolean; /** * * @type {string} * @memberof Instance */ - id: string; + 'id': string; /** * * @type {string} * @memberof Instance */ - instanceId: string; + 'instanceId': string; /** * * @type {string} * @memberof Instance */ - location: string; + 'location': string; /** * * @type {number} * @memberof Instance */ - n_users: number; + 'n_users': number; /** * * @type {string} * @memberof Instance */ - name: string; + 'name': string; /** * * @type {string} * @memberof Instance */ - nonce?: string; + 'nonce'?: string; /** * * @type {string} * @memberof Instance */ - ownerId?: string; + 'ownerId'?: string; /** * * @type {boolean} * @memberof Instance */ - permanent: boolean; + 'permanent': boolean; /** * * @type {string} * @memberof Instance */ - photonRegion: string; + 'photonRegion': string; /** * * @type {InstancePlatforms} * @memberof Instance */ - platforms: InstancePlatforms; + 'platforms': InstancePlatforms; /** * * @type {string} * @memberof Instance */ - region: string; + 'region': string; /** * * @type {string} * @memberof Instance */ - shortName: string; + 'shortName': string; /** * * @type {Array} * @memberof Instance */ - tags: Array; + 'tags': Array; /** * * @type {string} * @memberof Instance */ - type: string; + 'type': string; /** * Always empty on non-existing instances, and non-present on existing instances. * @type {Array} * @memberof Instance * @deprecated */ - users?: Array; + 'users'?: Array; /** * Only present on non-existing instances, and only contains a very small subject of World object. Use World API instead. * @type {object} * @memberof Instance * @deprecated */ - world?: object; + 'world'?: object; /** * * @type {string} * @memberof Instance */ - worldId: string; + 'worldId': string; } /** * @@ -2236,13 +2236,13 @@ export interface InstancePlatforms { * @type {number} * @memberof InstancePlatforms */ - android: number; + 'android': number; /** * * @type {number} * @memberof InstancePlatforms */ - standalonewindows: number; + 'standalonewindows': number; } /** * @@ -2255,43 +2255,43 @@ export interface InviteMessage { * @type {boolean} * @memberof InviteMessage */ - canBeUpdated: boolean; + 'canBeUpdated': boolean; /** * * @type {string} * @memberof InviteMessage */ - id: string; + 'id': string; /** * * @type {string} * @memberof InviteMessage */ - message: string; + 'message': string; /** * * @type {InviteMessageType} * @memberof InviteMessage */ - messageType: InviteMessageType; + 'messageType': InviteMessageType; /** * Changes to 60 when updated, although probably server-side configurable. * @type {number} * @memberof InviteMessage */ - remainingCooldownMinutes: number; + 'remainingCooldownMinutes': number; /** * * @type {number} * @memberof InviteMessage */ - slot: number; + 'slot': number; /** * * @type {string} * @memberof InviteMessage */ - updatedAt: string; + 'updatedAt': string; } /** * @@ -2314,7 +2314,7 @@ export interface InviteRequest { * @type {string} * @memberof InviteRequest */ - instanceId: string; + 'instanceId': string; } /** * @@ -2327,7 +2327,7 @@ export interface InviteResponse { * @type {number} * @memberof InviteResponse */ - responseSlot: number; + 'responseSlot': number; } /** * @@ -2340,13 +2340,13 @@ export interface LimitedUnityPackage { * @type {string} * @memberof LimitedUnityPackage */ - platform: string; + 'platform': string; /** * * @type {string} * @memberof LimitedUnityPackage */ - unityVersion: string; + 'unityVersion': string; } /** * @@ -2359,91 +2359,91 @@ export interface LimitedUser { * @type {string} * @memberof LimitedUser */ - bio?: string; + 'bio'?: string; /** * * @type {string} * @memberof LimitedUser */ - currentAvatarImageUrl: string; + 'currentAvatarImageUrl': string; /** * * @type {string} * @memberof LimitedUser */ - currentAvatarThumbnailImageUrl: string; + 'currentAvatarThumbnailImageUrl': string; /** * * @type {DeveloperType} * @memberof LimitedUser */ - developerType: DeveloperType; + 'developerType': DeveloperType; /** * * @type {string} * @memberof LimitedUser */ - displayName: string; + 'displayName': string; /** * * @type {string} * @memberof LimitedUser */ - fallbackAvatar: string; + 'fallbackAvatar': string; /** * * @type {string} * @memberof LimitedUser */ - id: string; + 'id': string; /** * * @type {boolean} * @memberof LimitedUser */ - isFriend: boolean; + 'isFriend': boolean; /** * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. * @type {string} * @memberof LimitedUser */ - last_platform: string; + 'last_platform': string; /** * * @type {string} * @memberof LimitedUser */ - profilePicOverride: string; + 'profilePicOverride': string; /** * * @type {UserStatus} * @memberof LimitedUser */ - status: UserStatus; + 'status': UserStatus; /** * * @type {string} * @memberof LimitedUser */ - statusDescription: string; + 'statusDescription': string; /** * <- Always empty. * @type {Array} * @memberof LimitedUser */ - tags: Array; + 'tags': Array; /** * * @type {string} * @memberof LimitedUser */ - userIcon: string; + 'userIcon': string; /** * * @type {string} * @memberof LimitedUser */ - username: string; + 'username': string; } /** * @@ -2456,115 +2456,115 @@ export interface LimitedWorld { * @type {string} * @memberof LimitedWorld */ - authorId: string; + 'authorId': string; /** * * @type {string} * @memberof LimitedWorld */ - authorName: string; + 'authorName': string; /** * * @type {number} * @memberof LimitedWorld */ - capacity: number; + 'capacity': number; /** * * @type {string} * @memberof LimitedWorld */ - created_at: string; + 'created_at': string; /** * * @type {number} * @memberof LimitedWorld */ - favorites: number; + 'favorites': number; /** * * @type {number} * @memberof LimitedWorld */ - heat: number; + 'heat': number; /** * * @type {string} * @memberof LimitedWorld */ - id: string; + 'id': string; /** * * @type {string} * @memberof LimitedWorld */ - imageUrl: string; + 'imageUrl': string; /** * * @type {string} * @memberof LimitedWorld */ - labsPublicationDate: string; + 'labsPublicationDate': string; /** * * @type {string} * @memberof LimitedWorld */ - name: string; + 'name': string; /** * * @type {number} * @memberof LimitedWorld */ - occupants: number; + 'occupants': number; /** * * @type {string} * @memberof LimitedWorld */ - organization: string; + 'organization': string; /** * * @type {number} * @memberof LimitedWorld */ - popularity: number; + 'popularity': number; /** * * @type {string} * @memberof LimitedWorld */ - publicationDate: string; + 'publicationDate': string; /** * * @type {ReleaseStatus} * @memberof LimitedWorld */ - releaseStatus: ReleaseStatus; + 'releaseStatus': ReleaseStatus; /** * * @type {Array} * @memberof LimitedWorld */ - tags: Array; + 'tags': Array; /** * * @type {string} * @memberof LimitedWorld */ - thumbnailImageUrl: string; + 'thumbnailImageUrl': string; /** * * @type {Array} * @memberof LimitedWorld */ - unityPackages: Array; + 'unityPackages': Array; /** * * @type {string} * @memberof LimitedWorld */ - updated_at: string; + 'updated_at': string; } /** * @@ -2600,7 +2600,7 @@ export interface ModelError { * @type {Response} * @memberof ModelError */ - error?: Response; + 'error'?: Response; } /** * @@ -2613,43 +2613,43 @@ export interface ModelFile { * @type {string} * @memberof ModelFile */ - extension: string; + 'extension': string; /** * * @type {string} * @memberof ModelFile */ - id: string; + 'id': string; /** * * @type {MIMEType} * @memberof ModelFile */ - mimeType: MIMEType; + 'mimeType': MIMEType; /** * * @type {string} * @memberof ModelFile */ - name: string; + 'name': string; /** * * @type {string} * @memberof ModelFile */ - ownerId: string; + 'ownerId': string; /** * * @type {Array} * @memberof ModelFile */ - tags: Array; + 'tags': Array; /** * * @type {Set} * @memberof ModelFile */ - versions: Set; + 'versions': Set; } /** * @@ -2662,49 +2662,49 @@ export interface Notification { * @type {string} * @memberof Notification */ - created_at: string; + 'created_at': string; /** * **NOTICE:** This is not a JSON object, this is a json **encoded** object, meaning you have to json-de-encode to get the NotificationDetail object depending on the NotificationType. * @type {string} * @memberof Notification */ - details: string; + 'details': string; /** * * @type {string} * @memberof Notification */ - id: string; + 'id': string; /** * * @type {string} * @memberof Notification */ - message: string; + 'message': string; /** * * @type {boolean} * @memberof Notification */ - seen: boolean; + 'seen': boolean; /** * * @type {string} * @memberof Notification */ - senderUserId: string; + 'senderUserId': string; /** * * @type {string} * @memberof Notification */ - senderUsername: string; + 'senderUsername': string; /** * * @type {NotificationType} * @memberof Notification */ - type: NotificationType; + 'type': NotificationType; } /** * @@ -2732,13 +2732,13 @@ export interface PastDisplayName { * @type {string} * @memberof PastDisplayName */ - displayName: string; + 'displayName': string; /** * * @type {string} * @memberof PastDisplayName */ - updated_at: string; + 'updated_at': string; } /** * @@ -2751,25 +2751,25 @@ export interface Permission { * @type {object} * @memberof Permission */ - data?: object; + 'data'?: object; /** * * @type {string} * @memberof Permission */ - id: string; + 'id': string; /** * * @type {string} * @memberof Permission */ - name: string; + 'name': string; /** * * @type {string} * @memberof Permission */ - ownerId: string; + 'ownerId': string; } /** * @@ -2782,43 +2782,43 @@ export interface PlayerModeration { * @type {string} * @memberof PlayerModeration */ - created: string; + 'created': string; /** * * @type {string} * @memberof PlayerModeration */ - id: string; + 'id': string; /** * * @type {string} * @memberof PlayerModeration */ - sourceDisplayName: string; + 'sourceDisplayName': string; /** * * @type {string} * @memberof PlayerModeration */ - sourceUserId: string; + 'sourceUserId': string; /** * * @type {string} * @memberof PlayerModeration */ - targetDisplayName: string; + 'targetDisplayName': string; /** * * @type {string} * @memberof PlayerModeration */ - targetUserId: string; + 'targetUserId': string; /** * * @type {PlayerModerationType} * @memberof PlayerModeration */ - type: PlayerModerationType; + 'type': PlayerModerationType; } /** * @@ -2846,13 +2846,13 @@ export interface PublicAnnouncement { * @type {string} * @memberof PublicAnnouncement */ - name: string; + 'name': string; /** * Announcement text * @type {string} * @memberof PublicAnnouncement */ - text: string; + 'text': string; } /** * @@ -2877,13 +2877,13 @@ export interface Response { * @type {string} * @memberof Response */ - message?: string; + 'message'?: string; /** * * @type {number} * @memberof Response */ - status_code: number; + 'status_code': number; } /** * @@ -2896,7 +2896,7 @@ export interface Success { * @type {Response} * @memberof Success */ - success?: Response; + 'success'?: Response; } /** * @@ -2909,61 +2909,61 @@ export interface UnityPackage { * @type {string} * @memberof UnityPackage */ - assetUrl?: string; + 'assetUrl'?: string; /** * * @type {object} * @memberof UnityPackage */ - assetUrlObject?: object; + 'assetUrlObject'?: object; /** * * @type {number} * @memberof UnityPackage */ - assetVersion: number; + 'assetVersion': number; /** * * @type {string} * @memberof UnityPackage */ - created_at?: string; + 'created_at'?: string; /** * * @type {string} * @memberof UnityPackage */ - id: string; + 'id': string; /** * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. * @type {string} * @memberof UnityPackage */ - platform: string; + 'platform': string; /** * * @type {string} * @memberof UnityPackage */ - pluginUrl?: string; + 'pluginUrl'?: string; /** * * @type {object} * @memberof UnityPackage */ - pluginUrlObject?: object; + 'pluginUrlObject'?: object; /** * * @type {number} * @memberof UnityPackage */ - unitySortNumber?: number; + 'unitySortNumber'?: number; /** * * @type {string} * @memberof UnityPackage */ - unityVersion: string; + 'unityVersion': string; } /** * @@ -2976,139 +2976,139 @@ export interface User { * @type {boolean} * @memberof User */ - allowAvatarCopying: boolean; + 'allowAvatarCopying': boolean; /** * * @type {string} * @memberof User */ - bio: string; + 'bio': string; /** * * @type {Array} * @memberof User */ - bioLinks: Array; + 'bioLinks': Array; /** * * @type {string} * @memberof User */ - currentAvatarImageUrl: string; + 'currentAvatarImageUrl': string; /** * * @type {string} * @memberof User */ - currentAvatarThumbnailImageUrl: string; + 'currentAvatarThumbnailImageUrl': string; /** * * @type {string} * @memberof User */ - date_joined: string; + 'date_joined': string; /** * * @type {DeveloperType} * @memberof User */ - developerType: DeveloperType; + 'developerType': DeveloperType; /** * * @type {string} * @memberof User */ - displayName: string; + 'displayName': string; /** * * @type {string} * @memberof User */ - friendKey: string; + 'friendKey': string; /** * * @type {string} * @memberof User */ - id: string; + 'id': string; /** * * @type {string} * @memberof User */ - instanceId?: string; + 'instanceId'?: string; /** * * @type {boolean} * @memberof User */ - isFriend: boolean; + 'isFriend': boolean; /** * * @type {string} * @memberof User */ - last_login: string; + 'last_login': string; /** * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. * @type {string} * @memberof User */ - last_platform: string; + 'last_platform': string; /** * * @type {string} * @memberof User */ - location?: string; + 'location'?: string; /** * * @type {string} * @memberof User */ - profilePicOverride: string; + 'profilePicOverride': string; /** * * @type {UserState} * @memberof User */ - state: UserState; + 'state': UserState; /** * * @type {UserStatus} * @memberof User */ - status: UserStatus; + 'status': UserStatus; /** * * @type {string} * @memberof User */ - statusDescription: string; + 'statusDescription': string; /** * * @type {Array} * @memberof User */ - tags: Array; + 'tags': Array; /** * * @type {string} * @memberof User */ - userIcon: string; + 'userIcon': string; /** * * @type {string} * @memberof User */ - username: string; + 'username': string; /** * * @type {string} * @memberof User */ - worldId?: string; + 'worldId'?: string; } /** * Status object representing if a queried user by username or userId exists or not. This model is primarily used by the `/auth/exists` endpoint, which in turn is used during registration. Please see the documentation on that endpoint for more information on usage. @@ -3121,7 +3121,7 @@ export interface UserExists { * @type {boolean} * @memberof UserExists */ - userExists: boolean; + 'userExists': boolean; } /** * * \"online\" User is online in VRChat * \"active\" User is online, but not in VRChat * \"offline\" User is offline Always offline when returned through `getCurrentUser` (/auth/user). @@ -3160,193 +3160,193 @@ export interface World { * @type {string} * @memberof World */ - assetUrl: string; + 'assetUrl': string; /** * * @type {object} * @memberof World */ - assetUrlObject: object; + 'assetUrlObject': object; /** * * @type {string} * @memberof World */ - authorId: string; + 'authorId': string; /** * * @type {string} * @memberof World */ - authorName: string; + 'authorName': string; /** * * @type {number} * @memberof World */ - capacity: number; + 'capacity': number; /** * * @type {string} * @memberof World */ - created_at: string; + 'created_at': string; /** * * @type {string} * @memberof World */ - description: string; + 'description': string; /** * * @type {number} * @memberof World */ - favorites?: number; + 'favorites'?: number; /** * * @type {boolean} * @memberof World */ - featured: boolean; + 'featured': boolean; /** * * @type {number} * @memberof World */ - heat: number; + 'heat': number; /** * * @type {string} * @memberof World */ - id: string; + 'id': string; /** * * @type {string} * @memberof World */ - imageUrl: string; + 'imageUrl': string; /** * * @type {Array>} * @memberof World */ - instances?: Array>; + 'instances'?: Array>; /** * * @type {string} * @memberof World */ - labsPublicationDate: string; + 'labsPublicationDate': string; /** * * @type {string} * @memberof World */ - name: string; + 'name': string; /** * * @type {string} * @memberof World */ - namespace: string; + 'namespace': string; /** * * @type {number} * @memberof World */ - occupants?: number; + 'occupants'?: number; /** * * @type {string} * @memberof World */ - organization: string; + 'organization': string; /** * * @type {object} * @memberof World */ - pluginUrlObject: object; + 'pluginUrlObject': object; /** * * @type {number} * @memberof World */ - popularity: number; + 'popularity': number; /** * * @type {string} * @memberof World */ - previewYoutubeId?: string; + 'previewYoutubeId'?: string; /** * * @type {number} * @memberof World */ - privateOccupants?: number; + 'privateOccupants'?: number; /** * * @type {number} * @memberof World */ - publicOccupants?: number; + 'publicOccupants'?: number; /** * * @type {string} * @memberof World */ - publicationDate: string; + 'publicationDate': string; /** * * @type {ReleaseStatus} * @memberof World */ - releaseStatus: ReleaseStatus; + 'releaseStatus': ReleaseStatus; /** * * @type {Array} * @memberof World */ - tags: Array; + 'tags': Array; /** * * @type {string} * @memberof World */ - thumbnailImageUrl: string; + 'thumbnailImageUrl': string; /** * * @type {object} * @memberof World */ - unityPackageUrlObject: object; + 'unityPackageUrlObject': object; /** * * @type {Array} * @memberof World */ - unityPackages: Array; + 'unityPackages': Array; /** * * @type {string} * @memberof World */ - updated_at: string; + 'updated_at': string; /** * * @type {number} * @memberof World */ - version: number; + 'version': number; /** * * @type {number} * @memberof World */ - visits: number; + 'visits': number; } /** @@ -3365,7 +3365,7 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf * @param {*} [options] Override http request option. * @throws {RequiredError} */ - checkUserExists: async (email?: string, displayName?: string, userId?: string, excludeUserId?: string, options: any = {}): Promise => { + checkUserExists: async (email?: string, displayName?: string, userId?: string, excludeUserId?: string, options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/auth/exists`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -3398,7 +3398,7 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -3414,7 +3414,7 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf * @param {*} [options] Override http request option. * @throws {RequiredError} */ - deleteUser: async (userId: string, options: any = {}): Promise => { + deleteUser: async (userId: string, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'userId' is not null or undefined assertParamExists('deleteUser', 'userId', userId) const localVarPath = `/user/{userId}/delete` @@ -3436,7 +3436,7 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -3451,7 +3451,7 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getCurrentUser: async (options: any = {}): Promise => { + getCurrentUser: async (options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/auth/user`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -3474,7 +3474,7 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -3489,7 +3489,7 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf * @param {*} [options] Override http request option. * @throws {RequiredError} */ - logout: async (options: any = {}): Promise => { + logout: async (options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/logout`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -3506,7 +3506,7 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -3522,7 +3522,7 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf * @param {*} [options] Override http request option. * @throws {RequiredError} */ - verify2FA: async (inlineObject?: InlineObject, options: any = {}): Promise => { + verify2FA: async (inlineObject?: InlineObject, options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/auth/twofactorauth/totp/verify`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -3541,7 +3541,7 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf localVarHeaderParameter['Content-Type'] = 'application/json'; - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; localVarRequestOptions.data = serializeDataIfNeeded(inlineObject, localVarRequestOptions, configuration) @@ -3557,7 +3557,7 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf * @param {*} [options] Override http request option. * @throws {RequiredError} */ - verifyAuthToken: async (options: any = {}): Promise => { + verifyAuthToken: async (options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/auth`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -3574,7 +3574,7 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -3590,7 +3590,7 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf * @param {*} [options] Override http request option. * @throws {RequiredError} */ - verifyRecoveryCode: async (inlineObject1?: InlineObject1, options: any = {}): Promise => { + verifyRecoveryCode: async (inlineObject1?: InlineObject1, options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/auth/twofactorauth/otp/verify`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -3609,7 +3609,7 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf localVarHeaderParameter['Content-Type'] = 'application/json'; - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; localVarRequestOptions.data = serializeDataIfNeeded(inlineObject1, localVarRequestOptions, configuration) @@ -3639,7 +3639,7 @@ export const AuthenticationApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async checkUserExists(email?: string, displayName?: string, userId?: string, excludeUserId?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async checkUserExists(email?: string, displayName?: string, userId?: string, excludeUserId?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.checkUserExists(email, displayName, userId, excludeUserId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -3650,7 +3650,7 @@ export const AuthenticationApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async deleteUser(userId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async deleteUser(userId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.deleteUser(userId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -3660,7 +3660,7 @@ export const AuthenticationApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getCurrentUser(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async getCurrentUser(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getCurrentUser(options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -3670,7 +3670,7 @@ export const AuthenticationApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async logout(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async logout(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.logout(options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -3681,7 +3681,7 @@ export const AuthenticationApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async verify2FA(inlineObject?: InlineObject, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async verify2FA(inlineObject?: InlineObject, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.verify2FA(inlineObject, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -3691,7 +3691,7 @@ export const AuthenticationApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async verifyAuthToken(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async verifyAuthToken(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.verifyAuthToken(options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -3702,7 +3702,7 @@ export const AuthenticationApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async verifyRecoveryCode(inlineObject1?: InlineObject1, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async verifyRecoveryCode(inlineObject1?: InlineObject1, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.verifyRecoveryCode(inlineObject1, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -3807,7 +3807,7 @@ export class AuthenticationApi extends BaseAPI { * @throws {RequiredError} * @memberof AuthenticationApi */ - public checkUserExists(email?: string, displayName?: string, userId?: string, excludeUserId?: string, options?: any) { + public checkUserExists(email?: string, displayName?: string, userId?: string, excludeUserId?: string, options?: AxiosRequestConfig) { return AuthenticationApiFp(this.configuration).checkUserExists(email, displayName, userId, excludeUserId, options).then((request) => request(this.axios, this.basePath)); } @@ -3819,7 +3819,7 @@ export class AuthenticationApi extends BaseAPI { * @throws {RequiredError} * @memberof AuthenticationApi */ - public deleteUser(userId: string, options?: any) { + public deleteUser(userId: string, options?: AxiosRequestConfig) { return AuthenticationApiFp(this.configuration).deleteUser(userId, options).then((request) => request(this.axios, this.basePath)); } @@ -3830,7 +3830,7 @@ export class AuthenticationApi extends BaseAPI { * @throws {RequiredError} * @memberof AuthenticationApi */ - public getCurrentUser(options?: any) { + public getCurrentUser(options?: AxiosRequestConfig) { return AuthenticationApiFp(this.configuration).getCurrentUser(options).then((request) => request(this.axios, this.basePath)); } @@ -3841,7 +3841,7 @@ export class AuthenticationApi extends BaseAPI { * @throws {RequiredError} * @memberof AuthenticationApi */ - public logout(options?: any) { + public logout(options?: AxiosRequestConfig) { return AuthenticationApiFp(this.configuration).logout(options).then((request) => request(this.axios, this.basePath)); } @@ -3853,7 +3853,7 @@ export class AuthenticationApi extends BaseAPI { * @throws {RequiredError} * @memberof AuthenticationApi */ - public verify2FA(inlineObject?: InlineObject, options?: any) { + public verify2FA(inlineObject?: InlineObject, options?: AxiosRequestConfig) { return AuthenticationApiFp(this.configuration).verify2FA(inlineObject, options).then((request) => request(this.axios, this.basePath)); } @@ -3864,7 +3864,7 @@ export class AuthenticationApi extends BaseAPI { * @throws {RequiredError} * @memberof AuthenticationApi */ - public verifyAuthToken(options?: any) { + public verifyAuthToken(options?: AxiosRequestConfig) { return AuthenticationApiFp(this.configuration).verifyAuthToken(options).then((request) => request(this.axios, this.basePath)); } @@ -3876,7 +3876,7 @@ export class AuthenticationApi extends BaseAPI { * @throws {RequiredError} * @memberof AuthenticationApi */ - public verifyRecoveryCode(inlineObject1?: InlineObject1, options?: any) { + public verifyRecoveryCode(inlineObject1?: InlineObject1, options?: AxiosRequestConfig) { return AuthenticationApiFp(this.configuration).verifyRecoveryCode(inlineObject1, options).then((request) => request(this.axios, this.basePath)); } } @@ -3895,7 +3895,7 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati * @param {*} [options] Override http request option. * @throws {RequiredError} */ - createAvatar: async (inlineObject10?: InlineObject10, options: any = {}): Promise => { + createAvatar: async (inlineObject10?: InlineObject10, options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/avatars`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -3916,7 +3916,7 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati localVarHeaderParameter['Content-Type'] = 'application/json'; - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; localVarRequestOptions.data = serializeDataIfNeeded(inlineObject10, localVarRequestOptions, configuration) @@ -3933,7 +3933,7 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati * @param {*} [options] Override http request option. * @throws {RequiredError} */ - deleteAvatar: async (avatarId: string, options: any = {}): Promise => { + deleteAvatar: async (avatarId: string, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'avatarId' is not null or undefined assertParamExists('deleteAvatar', 'avatarId', avatarId) const localVarPath = `/avatars/{avatarId}` @@ -3955,7 +3955,7 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -3971,7 +3971,7 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getAvatar: async (avatarId: string, options: any = {}): Promise => { + getAvatar: async (avatarId: string, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'avatarId' is not null or undefined assertParamExists('getAvatar', 'avatarId', avatarId) const localVarPath = `/avatars/{avatarId}` @@ -3993,7 +3993,7 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -4021,7 +4021,7 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFavoritedAvatars: async (featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options: any = {}): Promise => { + getFavoritedAvatars: async (featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/avatars/favorites`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -4092,7 +4092,7 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -4120,7 +4120,7 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati * @param {*} [options] Override http request option. * @throws {RequiredError} */ - searchAvatars: async (featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options: any = {}): Promise => { + searchAvatars: async (featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/avatars`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -4191,7 +4191,7 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -4207,7 +4207,7 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati * @param {*} [options] Override http request option. * @throws {RequiredError} */ - selectAvatar: async (avatarId: string, options: any = {}): Promise => { + selectAvatar: async (avatarId: string, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'avatarId' is not null or undefined assertParamExists('selectAvatar', 'avatarId', avatarId) const localVarPath = `/avatars/{avatarId}/select` @@ -4229,7 +4229,7 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -4246,7 +4246,7 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati * @param {*} [options] Override http request option. * @throws {RequiredError} */ - updateAvatar: async (avatarId: string, inlineObject11?: InlineObject11, options: any = {}): Promise => { + updateAvatar: async (avatarId: string, inlineObject11?: InlineObject11, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'avatarId' is not null or undefined assertParamExists('updateAvatar', 'avatarId', avatarId) const localVarPath = `/avatars/{avatarId}` @@ -4270,7 +4270,7 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati localVarHeaderParameter['Content-Type'] = 'application/json'; - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; localVarRequestOptions.data = serializeDataIfNeeded(inlineObject11, localVarRequestOptions, configuration) @@ -4297,7 +4297,7 @@ export const AvatarsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async createAvatar(inlineObject10?: InlineObject10, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async createAvatar(inlineObject10?: InlineObject10, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.createAvatar(inlineObject10, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -4308,7 +4308,7 @@ export const AvatarsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async deleteAvatar(avatarId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async deleteAvatar(avatarId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.deleteAvatar(avatarId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -4319,7 +4319,7 @@ export const AvatarsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getAvatar(avatarId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async getAvatar(avatarId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getAvatar(avatarId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -4342,7 +4342,7 @@ export const AvatarsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getFavoritedAvatars(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + async getFavoritedAvatars(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.getFavoritedAvatars(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -4365,7 +4365,7 @@ export const AvatarsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async searchAvatars(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + async searchAvatars(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.searchAvatars(featured, sort, user, userId, n, order, offset, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -4376,7 +4376,7 @@ export const AvatarsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async selectAvatar(avatarId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async selectAvatar(avatarId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.selectAvatar(avatarId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -4388,7 +4388,7 @@ export const AvatarsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async updateAvatar(avatarId: string, inlineObject11?: InlineObject11, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async updateAvatar(avatarId: string, inlineObject11?: InlineObject11, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.updateAvatar(avatarId, inlineObject11, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -4515,7 +4515,7 @@ export class AvatarsApi extends BaseAPI { * @throws {RequiredError} * @memberof AvatarsApi */ - public createAvatar(inlineObject10?: InlineObject10, options?: any) { + public createAvatar(inlineObject10?: InlineObject10, options?: AxiosRequestConfig) { return AvatarsApiFp(this.configuration).createAvatar(inlineObject10, options).then((request) => request(this.axios, this.basePath)); } @@ -4527,7 +4527,7 @@ export class AvatarsApi extends BaseAPI { * @throws {RequiredError} * @memberof AvatarsApi */ - public deleteAvatar(avatarId: string, options?: any) { + public deleteAvatar(avatarId: string, options?: AxiosRequestConfig) { return AvatarsApiFp(this.configuration).deleteAvatar(avatarId, options).then((request) => request(this.axios, this.basePath)); } @@ -4539,7 +4539,7 @@ export class AvatarsApi extends BaseAPI { * @throws {RequiredError} * @memberof AvatarsApi */ - public getAvatar(avatarId: string, options?: any) { + public getAvatar(avatarId: string, options?: AxiosRequestConfig) { return AvatarsApiFp(this.configuration).getAvatar(avatarId, options).then((request) => request(this.axios, this.basePath)); } @@ -4563,7 +4563,7 @@ export class AvatarsApi extends BaseAPI { * @throws {RequiredError} * @memberof AvatarsApi */ - public getFavoritedAvatars(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any) { + public getFavoritedAvatars(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: AxiosRequestConfig) { return AvatarsApiFp(this.configuration).getFavoritedAvatars(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options).then((request) => request(this.axios, this.basePath)); } @@ -4587,7 +4587,7 @@ export class AvatarsApi extends BaseAPI { * @throws {RequiredError} * @memberof AvatarsApi */ - public searchAvatars(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: any) { + public searchAvatars(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: AxiosRequestConfig) { return AvatarsApiFp(this.configuration).searchAvatars(featured, sort, user, userId, n, order, offset, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options).then((request) => request(this.axios, this.basePath)); } @@ -4599,7 +4599,7 @@ export class AvatarsApi extends BaseAPI { * @throws {RequiredError} * @memberof AvatarsApi */ - public selectAvatar(avatarId: string, options?: any) { + public selectAvatar(avatarId: string, options?: AxiosRequestConfig) { return AvatarsApiFp(this.configuration).selectAvatar(avatarId, options).then((request) => request(this.axios, this.basePath)); } @@ -4612,7 +4612,7 @@ export class AvatarsApi extends BaseAPI { * @throws {RequiredError} * @memberof AvatarsApi */ - public updateAvatar(avatarId: string, inlineObject11?: InlineObject11, options?: any) { + public updateAvatar(avatarId: string, inlineObject11?: InlineObject11, options?: AxiosRequestConfig) { return AvatarsApiFp(this.configuration).updateAvatar(avatarId, inlineObject11, options).then((request) => request(this.axios, this.basePath)); } } @@ -4631,7 +4631,7 @@ export const FavoritesApiAxiosParamCreator = function (configuration?: Configura * @param {*} [options] Override http request option. * @throws {RequiredError} */ - addFavorite: async (inlineObject8?: InlineObject8, options: any = {}): Promise => { + addFavorite: async (inlineObject8?: InlineObject8, options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/favorites`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -4652,7 +4652,7 @@ export const FavoritesApiAxiosParamCreator = function (configuration?: Configura localVarHeaderParameter['Content-Type'] = 'application/json'; - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; localVarRequestOptions.data = serializeDataIfNeeded(inlineObject8, localVarRequestOptions, configuration) @@ -4671,7 +4671,7 @@ export const FavoritesApiAxiosParamCreator = function (configuration?: Configura * @param {*} [options] Override http request option. * @throws {RequiredError} */ - clearFavoriteGroup: async (favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, options: any = {}): Promise => { + clearFavoriteGroup: async (favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'favoriteGroupType' is not null or undefined assertParamExists('clearFavoriteGroup', 'favoriteGroupType', favoriteGroupType) // verify required parameter 'favoriteGroupName' is not null or undefined @@ -4699,7 +4699,7 @@ export const FavoritesApiAxiosParamCreator = function (configuration?: Configura - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -4715,7 +4715,7 @@ export const FavoritesApiAxiosParamCreator = function (configuration?: Configura * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFavorite: async (favoriteId: string, options: any = {}): Promise => { + getFavorite: async (favoriteId: string, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'favoriteId' is not null or undefined assertParamExists('getFavorite', 'favoriteId', favoriteId) const localVarPath = `/favorites/{favoriteId}` @@ -4737,7 +4737,7 @@ export const FavoritesApiAxiosParamCreator = function (configuration?: Configura - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -4755,7 +4755,7 @@ export const FavoritesApiAxiosParamCreator = function (configuration?: Configura * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFavoriteGroup: async (favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, options: any = {}): Promise => { + getFavoriteGroup: async (favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'favoriteGroupType' is not null or undefined assertParamExists('getFavoriteGroup', 'favoriteGroupType', favoriteGroupType) // verify required parameter 'favoriteGroupName' is not null or undefined @@ -4783,7 +4783,7 @@ export const FavoritesApiAxiosParamCreator = function (configuration?: Configura - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -4801,7 +4801,7 @@ export const FavoritesApiAxiosParamCreator = function (configuration?: Configura * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFavoriteGroups: async (n?: number, offset?: number, ownerId?: string, options: any = {}): Promise => { + getFavoriteGroups: async (n?: number, offset?: number, ownerId?: string, options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/favorite/groups`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -4832,7 +4832,7 @@ export const FavoritesApiAxiosParamCreator = function (configuration?: Configura - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -4851,7 +4851,7 @@ export const FavoritesApiAxiosParamCreator = function (configuration?: Configura * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFavorites: async (n?: number, offset?: number, type?: string, tag?: string, options: any = {}): Promise => { + getFavorites: async (n?: number, offset?: number, type?: string, tag?: string, options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/favorites`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -4886,7 +4886,7 @@ export const FavoritesApiAxiosParamCreator = function (configuration?: Configura - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -4902,7 +4902,7 @@ export const FavoritesApiAxiosParamCreator = function (configuration?: Configura * @param {*} [options] Override http request option. * @throws {RequiredError} */ - removeFavorite: async (favoriteId: string, options: any = {}): Promise => { + removeFavorite: async (favoriteId: string, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'favoriteId' is not null or undefined assertParamExists('removeFavorite', 'favoriteId', favoriteId) const localVarPath = `/favorites/{favoriteId}` @@ -4924,7 +4924,7 @@ export const FavoritesApiAxiosParamCreator = function (configuration?: Configura - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -4943,7 +4943,7 @@ export const FavoritesApiAxiosParamCreator = function (configuration?: Configura * @param {*} [options] Override http request option. * @throws {RequiredError} */ - updateFavoriteGroup: async (favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, inlineObject9?: InlineObject9, options: any = {}): Promise => { + updateFavoriteGroup: async (favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, inlineObject9?: InlineObject9, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'favoriteGroupType' is not null or undefined assertParamExists('updateFavoriteGroup', 'favoriteGroupType', favoriteGroupType) // verify required parameter 'favoriteGroupName' is not null or undefined @@ -4973,7 +4973,7 @@ export const FavoritesApiAxiosParamCreator = function (configuration?: Configura localVarHeaderParameter['Content-Type'] = 'application/json'; - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; localVarRequestOptions.data = serializeDataIfNeeded(inlineObject9, localVarRequestOptions, configuration) @@ -5000,7 +5000,7 @@ export const FavoritesApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async addFavorite(inlineObject8?: InlineObject8, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async addFavorite(inlineObject8?: InlineObject8, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.addFavorite(inlineObject8, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -5013,7 +5013,7 @@ export const FavoritesApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async clearFavoriteGroup(favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async clearFavoriteGroup(favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.clearFavoriteGroup(favoriteGroupType, favoriteGroupName, userId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -5024,7 +5024,7 @@ export const FavoritesApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getFavorite(favoriteId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async getFavorite(favoriteId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getFavorite(favoriteId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -5037,7 +5037,7 @@ export const FavoritesApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getFavoriteGroup(favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async getFavoriteGroup(favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getFavoriteGroup(favoriteGroupType, favoriteGroupName, userId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -5050,7 +5050,7 @@ export const FavoritesApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getFavoriteGroups(n?: number, offset?: number, ownerId?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + async getFavoriteGroups(n?: number, offset?: number, ownerId?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.getFavoriteGroups(n, offset, ownerId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -5064,7 +5064,7 @@ export const FavoritesApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getFavorites(n?: number, offset?: number, type?: string, tag?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + async getFavorites(n?: number, offset?: number, type?: string, tag?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.getFavorites(n, offset, type, tag, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -5075,7 +5075,7 @@ export const FavoritesApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async removeFavorite(favoriteId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async removeFavorite(favoriteId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.removeFavorite(favoriteId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -5089,7 +5089,7 @@ export const FavoritesApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async updateFavoriteGroup(favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, inlineObject9?: InlineObject9, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async updateFavoriteGroup(favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, inlineObject9?: InlineObject9, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.updateFavoriteGroup(favoriteGroupType, favoriteGroupName, userId, inlineObject9, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -5213,7 +5213,7 @@ export class FavoritesApi extends BaseAPI { * @throws {RequiredError} * @memberof FavoritesApi */ - public addFavorite(inlineObject8?: InlineObject8, options?: any) { + public addFavorite(inlineObject8?: InlineObject8, options?: AxiosRequestConfig) { return FavoritesApiFp(this.configuration).addFavorite(inlineObject8, options).then((request) => request(this.axios, this.basePath)); } @@ -5227,7 +5227,7 @@ export class FavoritesApi extends BaseAPI { * @throws {RequiredError} * @memberof FavoritesApi */ - public clearFavoriteGroup(favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, options?: any) { + public clearFavoriteGroup(favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, options?: AxiosRequestConfig) { return FavoritesApiFp(this.configuration).clearFavoriteGroup(favoriteGroupType, favoriteGroupName, userId, options).then((request) => request(this.axios, this.basePath)); } @@ -5239,7 +5239,7 @@ export class FavoritesApi extends BaseAPI { * @throws {RequiredError} * @memberof FavoritesApi */ - public getFavorite(favoriteId: string, options?: any) { + public getFavorite(favoriteId: string, options?: AxiosRequestConfig) { return FavoritesApiFp(this.configuration).getFavorite(favoriteId, options).then((request) => request(this.axios, this.basePath)); } @@ -5253,7 +5253,7 @@ export class FavoritesApi extends BaseAPI { * @throws {RequiredError} * @memberof FavoritesApi */ - public getFavoriteGroup(favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, options?: any) { + public getFavoriteGroup(favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, options?: AxiosRequestConfig) { return FavoritesApiFp(this.configuration).getFavoriteGroup(favoriteGroupType, favoriteGroupName, userId, options).then((request) => request(this.axios, this.basePath)); } @@ -5267,7 +5267,7 @@ export class FavoritesApi extends BaseAPI { * @throws {RequiredError} * @memberof FavoritesApi */ - public getFavoriteGroups(n?: number, offset?: number, ownerId?: string, options?: any) { + public getFavoriteGroups(n?: number, offset?: number, ownerId?: string, options?: AxiosRequestConfig) { return FavoritesApiFp(this.configuration).getFavoriteGroups(n, offset, ownerId, options).then((request) => request(this.axios, this.basePath)); } @@ -5282,7 +5282,7 @@ export class FavoritesApi extends BaseAPI { * @throws {RequiredError} * @memberof FavoritesApi */ - public getFavorites(n?: number, offset?: number, type?: string, tag?: string, options?: any) { + public getFavorites(n?: number, offset?: number, type?: string, tag?: string, options?: AxiosRequestConfig) { return FavoritesApiFp(this.configuration).getFavorites(n, offset, type, tag, options).then((request) => request(this.axios, this.basePath)); } @@ -5294,7 +5294,7 @@ export class FavoritesApi extends BaseAPI { * @throws {RequiredError} * @memberof FavoritesApi */ - public removeFavorite(favoriteId: string, options?: any) { + public removeFavorite(favoriteId: string, options?: AxiosRequestConfig) { return FavoritesApiFp(this.configuration).removeFavorite(favoriteId, options).then((request) => request(this.axios, this.basePath)); } @@ -5309,7 +5309,7 @@ export class FavoritesApi extends BaseAPI { * @throws {RequiredError} * @memberof FavoritesApi */ - public updateFavoriteGroup(favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, inlineObject9?: InlineObject9, options?: any) { + public updateFavoriteGroup(favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, inlineObject9?: InlineObject9, options?: AxiosRequestConfig) { return FavoritesApiFp(this.configuration).updateFavoriteGroup(favoriteGroupType, favoriteGroupName, userId, inlineObject9, options).then((request) => request(this.axios, this.basePath)); } } @@ -5328,7 +5328,7 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration * @param {*} [options] Override http request option. * @throws {RequiredError} */ - createFile: async (inlineObject3?: InlineObject3, options: any = {}): Promise => { + createFile: async (inlineObject3?: InlineObject3, options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/file`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -5349,7 +5349,7 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration localVarHeaderParameter['Content-Type'] = 'application/json'; - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; localVarRequestOptions.data = serializeDataIfNeeded(inlineObject3, localVarRequestOptions, configuration) @@ -5367,7 +5367,7 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration * @param {*} [options] Override http request option. * @throws {RequiredError} */ - createFileVersion: async (fileId: string, inlineObject4?: InlineObject4, options: any = {}): Promise => { + createFileVersion: async (fileId: string, inlineObject4?: InlineObject4, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'fileId' is not null or undefined assertParamExists('createFileVersion', 'fileId', fileId) const localVarPath = `/file/{fileId}` @@ -5391,7 +5391,7 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration localVarHeaderParameter['Content-Type'] = 'application/json'; - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; localVarRequestOptions.data = serializeDataIfNeeded(inlineObject4, localVarRequestOptions, configuration) @@ -5408,7 +5408,7 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration * @param {*} [options] Override http request option. * @throws {RequiredError} */ - deleteFile: async (fileId: string, options: any = {}): Promise => { + deleteFile: async (fileId: string, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'fileId' is not null or undefined assertParamExists('deleteFile', 'fileId', fileId) const localVarPath = `/file/{fileId}` @@ -5430,7 +5430,7 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -5447,7 +5447,7 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration * @param {*} [options] Override http request option. * @throws {RequiredError} */ - deleteFileVersion: async (fileId: string, versionId: number, options: any = {}): Promise => { + deleteFileVersion: async (fileId: string, versionId: number, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'fileId' is not null or undefined assertParamExists('deleteFileVersion', 'fileId', fileId) // verify required parameter 'versionId' is not null or undefined @@ -5472,7 +5472,7 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -5489,7 +5489,7 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration * @param {*} [options] Override http request option. * @throws {RequiredError} */ - downloadFileVersion: async (fileId: string, versionId: number, options: any = {}): Promise => { + downloadFileVersion: async (fileId: string, versionId: number, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'fileId' is not null or undefined assertParamExists('downloadFileVersion', 'fileId', fileId) // verify required parameter 'versionId' is not null or undefined @@ -5514,7 +5514,7 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -5533,7 +5533,7 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration * @param {*} [options] Override http request option. * @throws {RequiredError} */ - finishFileDataUpload: async (fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', inlineObject5?: InlineObject5, options: any = {}): Promise => { + finishFileDataUpload: async (fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', inlineObject5?: InlineObject5, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'fileId' is not null or undefined assertParamExists('finishFileDataUpload', 'fileId', fileId) // verify required parameter 'versionId' is not null or undefined @@ -5563,7 +5563,7 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration localVarHeaderParameter['Content-Type'] = 'application/json'; - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; localVarRequestOptions.data = serializeDataIfNeeded(inlineObject5, localVarRequestOptions, configuration) @@ -5580,7 +5580,7 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFile: async (fileId: string, options: any = {}): Promise => { + getFile: async (fileId: string, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'fileId' is not null or undefined assertParamExists('getFile', 'fileId', fileId) const localVarPath = `/file/{fileId}` @@ -5602,7 +5602,7 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -5620,7 +5620,7 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFileDataUploadStatus: async (fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', options: any = {}): Promise => { + getFileDataUploadStatus: async (fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'fileId' is not null or undefined assertParamExists('getFileDataUploadStatus', 'fileId', fileId) // verify required parameter 'versionId' is not null or undefined @@ -5648,7 +5648,7 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -5667,7 +5667,7 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFiles: async (tag?: string, userId?: string, n?: number, offset?: number, options: any = {}): Promise => { + getFiles: async (tag?: string, userId?: string, n?: number, offset?: number, options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/files`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -5702,7 +5702,7 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -5721,7 +5721,7 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration * @param {*} [options] Override http request option. * @throws {RequiredError} */ - startFileDataUpload: async (fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', partNumber: number, options: any = {}): Promise => { + startFileDataUpload: async (fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', partNumber: number, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'fileId' is not null or undefined assertParamExists('startFileDataUpload', 'fileId', fileId) // verify required parameter 'versionId' is not null or undefined @@ -5755,7 +5755,7 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -5781,7 +5781,7 @@ export const FilesApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async createFile(inlineObject3?: InlineObject3, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async createFile(inlineObject3?: InlineObject3, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.createFile(inlineObject3, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -5793,7 +5793,7 @@ export const FilesApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async createFileVersion(fileId: string, inlineObject4?: InlineObject4, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async createFileVersion(fileId: string, inlineObject4?: InlineObject4, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.createFileVersion(fileId, inlineObject4, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -5804,7 +5804,7 @@ export const FilesApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async deleteFile(fileId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async deleteFile(fileId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.deleteFile(fileId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -5816,7 +5816,7 @@ export const FilesApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async deleteFileVersion(fileId: string, versionId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async deleteFileVersion(fileId: string, versionId: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.deleteFileVersion(fileId, versionId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -5828,7 +5828,7 @@ export const FilesApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async downloadFileVersion(fileId: string, versionId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async downloadFileVersion(fileId: string, versionId: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.downloadFileVersion(fileId, versionId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -5842,7 +5842,7 @@ export const FilesApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async finishFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', inlineObject5?: InlineObject5, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async finishFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', inlineObject5?: InlineObject5, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.finishFileDataUpload(fileId, versionId, fileType, inlineObject5, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -5853,7 +5853,7 @@ export const FilesApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getFile(fileId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async getFile(fileId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getFile(fileId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -5866,7 +5866,7 @@ export const FilesApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getFileDataUploadStatus(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async getFileDataUploadStatus(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getFileDataUploadStatus(fileId, versionId, fileType, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -5880,7 +5880,7 @@ export const FilesApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getFiles(tag?: string, userId?: string, n?: number, offset?: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + async getFiles(tag?: string, userId?: string, n?: number, offset?: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.getFiles(tag, userId, n, offset, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -5894,7 +5894,7 @@ export const FilesApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async startFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', partNumber: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async startFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', partNumber: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.startFileDataUpload(fileId, versionId, fileType, partNumber, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -6040,7 +6040,7 @@ export class FilesApi extends BaseAPI { * @throws {RequiredError} * @memberof FilesApi */ - public createFile(inlineObject3?: InlineObject3, options?: any) { + public createFile(inlineObject3?: InlineObject3, options?: AxiosRequestConfig) { return FilesApiFp(this.configuration).createFile(inlineObject3, options).then((request) => request(this.axios, this.basePath)); } @@ -6053,7 +6053,7 @@ export class FilesApi extends BaseAPI { * @throws {RequiredError} * @memberof FilesApi */ - public createFileVersion(fileId: string, inlineObject4?: InlineObject4, options?: any) { + public createFileVersion(fileId: string, inlineObject4?: InlineObject4, options?: AxiosRequestConfig) { return FilesApiFp(this.configuration).createFileVersion(fileId, inlineObject4, options).then((request) => request(this.axios, this.basePath)); } @@ -6065,7 +6065,7 @@ export class FilesApi extends BaseAPI { * @throws {RequiredError} * @memberof FilesApi */ - public deleteFile(fileId: string, options?: any) { + public deleteFile(fileId: string, options?: AxiosRequestConfig) { return FilesApiFp(this.configuration).deleteFile(fileId, options).then((request) => request(this.axios, this.basePath)); } @@ -6078,7 +6078,7 @@ export class FilesApi extends BaseAPI { * @throws {RequiredError} * @memberof FilesApi */ - public deleteFileVersion(fileId: string, versionId: number, options?: any) { + public deleteFileVersion(fileId: string, versionId: number, options?: AxiosRequestConfig) { return FilesApiFp(this.configuration).deleteFileVersion(fileId, versionId, options).then((request) => request(this.axios, this.basePath)); } @@ -6091,7 +6091,7 @@ export class FilesApi extends BaseAPI { * @throws {RequiredError} * @memberof FilesApi */ - public downloadFileVersion(fileId: string, versionId: number, options?: any) { + public downloadFileVersion(fileId: string, versionId: number, options?: AxiosRequestConfig) { return FilesApiFp(this.configuration).downloadFileVersion(fileId, versionId, options).then((request) => request(this.axios, this.basePath)); } @@ -6106,7 +6106,7 @@ export class FilesApi extends BaseAPI { * @throws {RequiredError} * @memberof FilesApi */ - public finishFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', inlineObject5?: InlineObject5, options?: any) { + public finishFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', inlineObject5?: InlineObject5, options?: AxiosRequestConfig) { return FilesApiFp(this.configuration).finishFileDataUpload(fileId, versionId, fileType, inlineObject5, options).then((request) => request(this.axios, this.basePath)); } @@ -6118,7 +6118,7 @@ export class FilesApi extends BaseAPI { * @throws {RequiredError} * @memberof FilesApi */ - public getFile(fileId: string, options?: any) { + public getFile(fileId: string, options?: AxiosRequestConfig) { return FilesApiFp(this.configuration).getFile(fileId, options).then((request) => request(this.axios, this.basePath)); } @@ -6132,7 +6132,7 @@ export class FilesApi extends BaseAPI { * @throws {RequiredError} * @memberof FilesApi */ - public getFileDataUploadStatus(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', options?: any) { + public getFileDataUploadStatus(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', options?: AxiosRequestConfig) { return FilesApiFp(this.configuration).getFileDataUploadStatus(fileId, versionId, fileType, options).then((request) => request(this.axios, this.basePath)); } @@ -6147,7 +6147,7 @@ export class FilesApi extends BaseAPI { * @throws {RequiredError} * @memberof FilesApi */ - public getFiles(tag?: string, userId?: string, n?: number, offset?: number, options?: any) { + public getFiles(tag?: string, userId?: string, n?: number, offset?: number, options?: AxiosRequestConfig) { return FilesApiFp(this.configuration).getFiles(tag, userId, n, offset, options).then((request) => request(this.axios, this.basePath)); } @@ -6162,7 +6162,7 @@ export class FilesApi extends BaseAPI { * @throws {RequiredError} * @memberof FilesApi */ - public startFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', partNumber: number, options?: any) { + public startFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', partNumber: number, options?: AxiosRequestConfig) { return FilesApiFp(this.configuration).startFileDataUpload(fileId, versionId, fileType, partNumber, options).then((request) => request(this.axios, this.basePath)); } } @@ -6181,7 +6181,7 @@ export const FriendsApiAxiosParamCreator = function (configuration?: Configurati * @param {*} [options] Override http request option. * @throws {RequiredError} */ - deleteFriendRequest: async (userId: string, options: any = {}): Promise => { + deleteFriendRequest: async (userId: string, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'userId' is not null or undefined assertParamExists('deleteFriendRequest', 'userId', userId) const localVarPath = `/user/{userId}/friendRequest` @@ -6203,7 +6203,7 @@ export const FriendsApiAxiosParamCreator = function (configuration?: Configurati - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -6219,7 +6219,7 @@ export const FriendsApiAxiosParamCreator = function (configuration?: Configurati * @param {*} [options] Override http request option. * @throws {RequiredError} */ - friend: async (userId: string, options: any = {}): Promise => { + friend: async (userId: string, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'userId' is not null or undefined assertParamExists('friend', 'userId', userId) const localVarPath = `/user/{userId}/friendRequest` @@ -6241,7 +6241,7 @@ export const FriendsApiAxiosParamCreator = function (configuration?: Configurati - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -6257,7 +6257,7 @@ export const FriendsApiAxiosParamCreator = function (configuration?: Configurati * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFriendStatus: async (userId: string, options: any = {}): Promise => { + getFriendStatus: async (userId: string, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'userId' is not null or undefined assertParamExists('getFriendStatus', 'userId', userId) const localVarPath = `/user/{userId}/friendStatus` @@ -6279,7 +6279,7 @@ export const FriendsApiAxiosParamCreator = function (configuration?: Configurati - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -6297,7 +6297,7 @@ export const FriendsApiAxiosParamCreator = function (configuration?: Configurati * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFriends: async (offset?: number, n?: number, offline?: boolean, options: any = {}): Promise => { + getFriends: async (offset?: number, n?: number, offline?: boolean, options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/auth/user/friends`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -6328,7 +6328,7 @@ export const FriendsApiAxiosParamCreator = function (configuration?: Configurati - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -6344,7 +6344,7 @@ export const FriendsApiAxiosParamCreator = function (configuration?: Configurati * @param {*} [options] Override http request option. * @throws {RequiredError} */ - unfriend: async (userId: string, options: any = {}): Promise => { + unfriend: async (userId: string, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'userId' is not null or undefined assertParamExists('unfriend', 'userId', userId) const localVarPath = `/auth/user/friends/{userId}` @@ -6366,7 +6366,7 @@ export const FriendsApiAxiosParamCreator = function (configuration?: Configurati - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -6392,7 +6392,7 @@ export const FriendsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async deleteFriendRequest(userId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async deleteFriendRequest(userId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.deleteFriendRequest(userId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -6403,7 +6403,7 @@ export const FriendsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async friend(userId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async friend(userId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.friend(userId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -6414,7 +6414,7 @@ export const FriendsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getFriendStatus(userId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async getFriendStatus(userId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getFriendStatus(userId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -6427,7 +6427,7 @@ export const FriendsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getFriends(offset?: number, n?: number, offline?: boolean, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + async getFriends(offset?: number, n?: number, offline?: boolean, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.getFriends(offset, n, offline, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -6438,7 +6438,7 @@ export const FriendsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async unfriend(userId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async unfriend(userId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.unfriend(userId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -6522,7 +6522,7 @@ export class FriendsApi extends BaseAPI { * @throws {RequiredError} * @memberof FriendsApi */ - public deleteFriendRequest(userId: string, options?: any) { + public deleteFriendRequest(userId: string, options?: AxiosRequestConfig) { return FriendsApiFp(this.configuration).deleteFriendRequest(userId, options).then((request) => request(this.axios, this.basePath)); } @@ -6534,7 +6534,7 @@ export class FriendsApi extends BaseAPI { * @throws {RequiredError} * @memberof FriendsApi */ - public friend(userId: string, options?: any) { + public friend(userId: string, options?: AxiosRequestConfig) { return FriendsApiFp(this.configuration).friend(userId, options).then((request) => request(this.axios, this.basePath)); } @@ -6546,7 +6546,7 @@ export class FriendsApi extends BaseAPI { * @throws {RequiredError} * @memberof FriendsApi */ - public getFriendStatus(userId: string, options?: any) { + public getFriendStatus(userId: string, options?: AxiosRequestConfig) { return FriendsApiFp(this.configuration).getFriendStatus(userId, options).then((request) => request(this.axios, this.basePath)); } @@ -6560,7 +6560,7 @@ export class FriendsApi extends BaseAPI { * @throws {RequiredError} * @memberof FriendsApi */ - public getFriends(offset?: number, n?: number, offline?: boolean, options?: any) { + public getFriends(offset?: number, n?: number, offline?: boolean, options?: AxiosRequestConfig) { return FriendsApiFp(this.configuration).getFriends(offset, n, offline, options).then((request) => request(this.axios, this.basePath)); } @@ -6572,7 +6572,7 @@ export class FriendsApi extends BaseAPI { * @throws {RequiredError} * @memberof FriendsApi */ - public unfriend(userId: string, options?: any) { + public unfriend(userId: string, options?: AxiosRequestConfig) { return FriendsApiFp(this.configuration).unfriend(userId, options).then((request) => request(this.axios, this.basePath)); } } @@ -6593,7 +6593,7 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getInviteMessage: async (userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', messageId: number, options: any = {}): Promise => { + getInviteMessage: async (userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', messageId: number, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'userId' is not null or undefined assertParamExists('getInviteMessage', 'userId', userId) // verify required parameter 'messageType' is not null or undefined @@ -6621,7 +6621,7 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -6638,7 +6638,7 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getInviteMessages: async (userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', options: any = {}): Promise => { + getInviteMessages: async (userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'userId' is not null or undefined assertParamExists('getInviteMessages', 'userId', userId) // verify required parameter 'messageType' is not null or undefined @@ -6663,7 +6663,7 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -6680,7 +6680,7 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio * @param {*} [options] Override http request option. * @throws {RequiredError} */ - inviteUser: async (userId: string, inviteRequest?: InviteRequest, options: any = {}): Promise => { + inviteUser: async (userId: string, inviteRequest?: InviteRequest, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'userId' is not null or undefined assertParamExists('inviteUser', 'userId', userId) const localVarPath = `/invite/{userId}` @@ -6704,7 +6704,7 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio localVarHeaderParameter['Content-Type'] = 'application/json'; - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; localVarRequestOptions.data = serializeDataIfNeeded(inviteRequest, localVarRequestOptions, configuration) @@ -6721,7 +6721,7 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio * @param {*} [options] Override http request option. * @throws {RequiredError} */ - requestInvite: async (userId: string, options: any = {}): Promise => { + requestInvite: async (userId: string, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'userId' is not null or undefined assertParamExists('requestInvite', 'userId', userId) const localVarPath = `/requestInvite/{userId}` @@ -6743,7 +6743,7 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -6761,7 +6761,7 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio * @param {*} [options] Override http request option. * @throws {RequiredError} */ - resetInviteMessage: async (userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', messageId: number, options: any = {}): Promise => { + resetInviteMessage: async (userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', messageId: number, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'userId' is not null or undefined assertParamExists('resetInviteMessage', 'userId', userId) // verify required parameter 'messageType' is not null or undefined @@ -6789,7 +6789,7 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -6806,7 +6806,7 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio * @param {*} [options] Override http request option. * @throws {RequiredError} */ - respondInvite: async (notificationId: string, inviteResponse?: InviteResponse, options: any = {}): Promise => { + respondInvite: async (notificationId: string, inviteResponse?: InviteResponse, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'notificationId' is not null or undefined assertParamExists('respondInvite', 'notificationId', notificationId) const localVarPath = `/invite/{notificationId}/response` @@ -6830,7 +6830,7 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio localVarHeaderParameter['Content-Type'] = 'application/json'; - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; localVarRequestOptions.data = serializeDataIfNeeded(inviteResponse, localVarRequestOptions, configuration) @@ -6849,7 +6849,7 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio * @param {*} [options] Override http request option. * @throws {RequiredError} */ - updateInviteMessage: async (userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', messageId: number, options: any = {}): Promise => { + updateInviteMessage: async (userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', messageId: number, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'userId' is not null or undefined assertParamExists('updateInviteMessage', 'userId', userId) // verify required parameter 'messageType' is not null or undefined @@ -6877,7 +6877,7 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -6905,7 +6905,7 @@ export const InviteApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getInviteMessage(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', messageId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async getInviteMessage(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', messageId: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getInviteMessage(userId, messageType, messageId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -6917,7 +6917,7 @@ export const InviteApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getInviteMessages(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + async getInviteMessages(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.getInviteMessages(userId, messageType, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -6929,7 +6929,7 @@ export const InviteApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async inviteUser(userId: string, inviteRequest?: InviteRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async inviteUser(userId: string, inviteRequest?: InviteRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.inviteUser(userId, inviteRequest, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -6940,7 +6940,7 @@ export const InviteApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async requestInvite(userId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async requestInvite(userId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.requestInvite(userId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -6953,7 +6953,7 @@ export const InviteApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async resetInviteMessage(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', messageId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + async resetInviteMessage(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', messageId: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.resetInviteMessage(userId, messageType, messageId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -6965,7 +6965,7 @@ export const InviteApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async respondInvite(notificationId: string, inviteResponse?: InviteResponse, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async respondInvite(notificationId: string, inviteResponse?: InviteResponse, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.respondInvite(notificationId, inviteResponse, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -6978,7 +6978,7 @@ export const InviteApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async updateInviteMessage(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', messageId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + async updateInviteMessage(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', messageId: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.updateInviteMessage(userId, messageType, messageId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -7091,7 +7091,7 @@ export class InviteApi extends BaseAPI { * @throws {RequiredError} * @memberof InviteApi */ - public getInviteMessage(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', messageId: number, options?: any) { + public getInviteMessage(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', messageId: number, options?: AxiosRequestConfig) { return InviteApiFp(this.configuration).getInviteMessage(userId, messageType, messageId, options).then((request) => request(this.axios, this.basePath)); } @@ -7104,7 +7104,7 @@ export class InviteApi extends BaseAPI { * @throws {RequiredError} * @memberof InviteApi */ - public getInviteMessages(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', options?: any) { + public getInviteMessages(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', options?: AxiosRequestConfig) { return InviteApiFp(this.configuration).getInviteMessages(userId, messageType, options).then((request) => request(this.axios, this.basePath)); } @@ -7117,7 +7117,7 @@ export class InviteApi extends BaseAPI { * @throws {RequiredError} * @memberof InviteApi */ - public inviteUser(userId: string, inviteRequest?: InviteRequest, options?: any) { + public inviteUser(userId: string, inviteRequest?: InviteRequest, options?: AxiosRequestConfig) { return InviteApiFp(this.configuration).inviteUser(userId, inviteRequest, options).then((request) => request(this.axios, this.basePath)); } @@ -7129,7 +7129,7 @@ export class InviteApi extends BaseAPI { * @throws {RequiredError} * @memberof InviteApi */ - public requestInvite(userId: string, options?: any) { + public requestInvite(userId: string, options?: AxiosRequestConfig) { return InviteApiFp(this.configuration).requestInvite(userId, options).then((request) => request(this.axios, this.basePath)); } @@ -7143,7 +7143,7 @@ export class InviteApi extends BaseAPI { * @throws {RequiredError} * @memberof InviteApi */ - public resetInviteMessage(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', messageId: number, options?: any) { + public resetInviteMessage(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', messageId: number, options?: AxiosRequestConfig) { return InviteApiFp(this.configuration).resetInviteMessage(userId, messageType, messageId, options).then((request) => request(this.axios, this.basePath)); } @@ -7156,7 +7156,7 @@ export class InviteApi extends BaseAPI { * @throws {RequiredError} * @memberof InviteApi */ - public respondInvite(notificationId: string, inviteResponse?: InviteResponse, options?: any) { + public respondInvite(notificationId: string, inviteResponse?: InviteResponse, options?: AxiosRequestConfig) { return InviteApiFp(this.configuration).respondInvite(notificationId, inviteResponse, options).then((request) => request(this.axios, this.basePath)); } @@ -7170,7 +7170,7 @@ export class InviteApi extends BaseAPI { * @throws {RequiredError} * @memberof InviteApi */ - public updateInviteMessage(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', messageId: number, options?: any) { + public updateInviteMessage(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', messageId: number, options?: AxiosRequestConfig) { return InviteApiFp(this.configuration).updateInviteMessage(userId, messageType, messageId, options).then((request) => request(this.axios, this.basePath)); } } @@ -7189,7 +7189,7 @@ export const NotificationsApiAxiosParamCreator = function (configuration?: Confi * @param {*} [options] Override http request option. * @throws {RequiredError} */ - acceptFriendRequest: async (notificationId: string, options: any = {}): Promise => { + acceptFriendRequest: async (notificationId: string, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'notificationId' is not null or undefined assertParamExists('acceptFriendRequest', 'notificationId', notificationId) const localVarPath = `/auth/user/notifications/{notificationId}/accept` @@ -7211,7 +7211,7 @@ export const NotificationsApiAxiosParamCreator = function (configuration?: Confi - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -7226,7 +7226,7 @@ export const NotificationsApiAxiosParamCreator = function (configuration?: Confi * @param {*} [options] Override http request option. * @throws {RequiredError} */ - clearNotifications: async (options: any = {}): Promise => { + clearNotifications: async (options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/auth/user/notifications/clear`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -7245,7 +7245,7 @@ export const NotificationsApiAxiosParamCreator = function (configuration?: Confi - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -7261,7 +7261,7 @@ export const NotificationsApiAxiosParamCreator = function (configuration?: Confi * @param {*} [options] Override http request option. * @throws {RequiredError} */ - deleteNotification: async (notificationId: string, options: any = {}): Promise => { + deleteNotification: async (notificationId: string, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'notificationId' is not null or undefined assertParamExists('deleteNotification', 'notificationId', notificationId) const localVarPath = `/auth/user/notifications/{notificationId}/hide` @@ -7283,7 +7283,7 @@ export const NotificationsApiAxiosParamCreator = function (configuration?: Confi - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -7304,7 +7304,7 @@ export const NotificationsApiAxiosParamCreator = function (configuration?: Confi * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getNotifications: async (type?: string, sent?: boolean, hidden?: boolean, after?: string, n?: number, offset?: number, options: any = {}): Promise => { + getNotifications: async (type?: string, sent?: boolean, hidden?: boolean, after?: string, n?: number, offset?: number, options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/auth/user/notifications`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -7347,7 +7347,7 @@ export const NotificationsApiAxiosParamCreator = function (configuration?: Confi - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -7363,7 +7363,7 @@ export const NotificationsApiAxiosParamCreator = function (configuration?: Confi * @param {*} [options] Override http request option. * @throws {RequiredError} */ - markNotificationAsRead: async (notificationId: string, options: any = {}): Promise => { + markNotificationAsRead: async (notificationId: string, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'notificationId' is not null or undefined assertParamExists('markNotificationAsRead', 'notificationId', notificationId) const localVarPath = `/auth/user/notifications/{notificationId}/see` @@ -7385,7 +7385,7 @@ export const NotificationsApiAxiosParamCreator = function (configuration?: Confi - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -7411,7 +7411,7 @@ export const NotificationsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async acceptFriendRequest(notificationId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async acceptFriendRequest(notificationId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.acceptFriendRequest(notificationId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -7421,7 +7421,7 @@ export const NotificationsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async clearNotifications(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async clearNotifications(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.clearNotifications(options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -7432,7 +7432,7 @@ export const NotificationsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async deleteNotification(notificationId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async deleteNotification(notificationId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.deleteNotification(notificationId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -7448,7 +7448,7 @@ export const NotificationsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getNotifications(type?: string, sent?: boolean, hidden?: boolean, after?: string, n?: number, offset?: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + async getNotifications(type?: string, sent?: boolean, hidden?: boolean, after?: string, n?: number, offset?: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.getNotifications(type, sent, hidden, after, n, offset, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -7459,7 +7459,7 @@ export const NotificationsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async markNotificationAsRead(notificationId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async markNotificationAsRead(notificationId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.markNotificationAsRead(notificationId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -7545,7 +7545,7 @@ export class NotificationsApi extends BaseAPI { * @throws {RequiredError} * @memberof NotificationsApi */ - public acceptFriendRequest(notificationId: string, options?: any) { + public acceptFriendRequest(notificationId: string, options?: AxiosRequestConfig) { return NotificationsApiFp(this.configuration).acceptFriendRequest(notificationId, options).then((request) => request(this.axios, this.basePath)); } @@ -7556,7 +7556,7 @@ export class NotificationsApi extends BaseAPI { * @throws {RequiredError} * @memberof NotificationsApi */ - public clearNotifications(options?: any) { + public clearNotifications(options?: AxiosRequestConfig) { return NotificationsApiFp(this.configuration).clearNotifications(options).then((request) => request(this.axios, this.basePath)); } @@ -7568,7 +7568,7 @@ export class NotificationsApi extends BaseAPI { * @throws {RequiredError} * @memberof NotificationsApi */ - public deleteNotification(notificationId: string, options?: any) { + public deleteNotification(notificationId: string, options?: AxiosRequestConfig) { return NotificationsApiFp(this.configuration).deleteNotification(notificationId, options).then((request) => request(this.axios, this.basePath)); } @@ -7585,7 +7585,7 @@ export class NotificationsApi extends BaseAPI { * @throws {RequiredError} * @memberof NotificationsApi */ - public getNotifications(type?: string, sent?: boolean, hidden?: boolean, after?: string, n?: number, offset?: number, options?: any) { + public getNotifications(type?: string, sent?: boolean, hidden?: boolean, after?: string, n?: number, offset?: number, options?: AxiosRequestConfig) { return NotificationsApiFp(this.configuration).getNotifications(type, sent, hidden, after, n, offset, options).then((request) => request(this.axios, this.basePath)); } @@ -7597,7 +7597,7 @@ export class NotificationsApi extends BaseAPI { * @throws {RequiredError} * @memberof NotificationsApi */ - public markNotificationAsRead(notificationId: string, options?: any) { + public markNotificationAsRead(notificationId: string, options?: AxiosRequestConfig) { return NotificationsApiFp(this.configuration).markNotificationAsRead(notificationId, options).then((request) => request(this.axios, this.basePath)); } } @@ -7615,7 +7615,7 @@ export const PermissionsApiAxiosParamCreator = function (configuration?: Configu * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getAssignedPermissions: async (options: any = {}): Promise => { + getAssignedPermissions: async (options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/auth/permissions`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -7634,7 +7634,7 @@ export const PermissionsApiAxiosParamCreator = function (configuration?: Configu - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -7650,7 +7650,7 @@ export const PermissionsApiAxiosParamCreator = function (configuration?: Configu * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getPermission: async (permissionId: string, options: any = {}): Promise => { + getPermission: async (permissionId: string, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'permissionId' is not null or undefined assertParamExists('getPermission', 'permissionId', permissionId) const localVarPath = `/permissions/{permissionId}` @@ -7672,7 +7672,7 @@ export const PermissionsApiAxiosParamCreator = function (configuration?: Configu - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -7697,7 +7697,7 @@ export const PermissionsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getAssignedPermissions(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + async getAssignedPermissions(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.getAssignedPermissions(options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -7708,7 +7708,7 @@ export const PermissionsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getPermission(permissionId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async getPermission(permissionId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getPermission(permissionId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -7758,7 +7758,7 @@ export class PermissionsApi extends BaseAPI { * @throws {RequiredError} * @memberof PermissionsApi */ - public getAssignedPermissions(options?: any) { + public getAssignedPermissions(options?: AxiosRequestConfig) { return PermissionsApiFp(this.configuration).getAssignedPermissions(options).then((request) => request(this.axios, this.basePath)); } @@ -7770,7 +7770,7 @@ export class PermissionsApi extends BaseAPI { * @throws {RequiredError} * @memberof PermissionsApi */ - public getPermission(permissionId: string, options?: any) { + public getPermission(permissionId: string, options?: AxiosRequestConfig) { return PermissionsApiFp(this.configuration).getPermission(permissionId, options).then((request) => request(this.axios, this.basePath)); } } @@ -7788,7 +7788,7 @@ export const PlayermoderationApiAxiosParamCreator = function (configuration?: Co * @param {*} [options] Override http request option. * @throws {RequiredError} */ - clearAllPlayerModerations: async (options: any = {}): Promise => { + clearAllPlayerModerations: async (options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/auth/user/playermoderations`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -7807,7 +7807,7 @@ export const PlayermoderationApiAxiosParamCreator = function (configuration?: Co - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -7823,7 +7823,7 @@ export const PlayermoderationApiAxiosParamCreator = function (configuration?: Co * @param {*} [options] Override http request option. * @throws {RequiredError} */ - deletePlayerModeration: async (playerModerationId: string, options: any = {}): Promise => { + deletePlayerModeration: async (playerModerationId: string, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'playerModerationId' is not null or undefined assertParamExists('deletePlayerModeration', 'playerModerationId', playerModerationId) const localVarPath = `/auth/user/playermoderations/{playerModerationId}` @@ -7845,7 +7845,7 @@ export const PlayermoderationApiAxiosParamCreator = function (configuration?: Co - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -7861,7 +7861,7 @@ export const PlayermoderationApiAxiosParamCreator = function (configuration?: Co * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getPlayerModeration: async (playerModerationId: string, options: any = {}): Promise => { + getPlayerModeration: async (playerModerationId: string, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'playerModerationId' is not null or undefined assertParamExists('getPlayerModeration', 'playerModerationId', playerModerationId) const localVarPath = `/auth/user/playermoderations/{playerModerationId}` @@ -7883,7 +7883,7 @@ export const PlayermoderationApiAxiosParamCreator = function (configuration?: Co - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -7900,7 +7900,7 @@ export const PlayermoderationApiAxiosParamCreator = function (configuration?: Co * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getPlayerModerations: async (type?: string, targetUserId?: string, options: any = {}): Promise => { + getPlayerModerations: async (type?: string, targetUserId?: string, options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/auth/user/playermoderations`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -7927,7 +7927,7 @@ export const PlayermoderationApiAxiosParamCreator = function (configuration?: Co - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -7943,7 +7943,7 @@ export const PlayermoderationApiAxiosParamCreator = function (configuration?: Co * @param {*} [options] Override http request option. * @throws {RequiredError} */ - moderateUser: async (inlineObject12?: InlineObject12, options: any = {}): Promise => { + moderateUser: async (inlineObject12?: InlineObject12, options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/auth/user/playermoderations`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -7964,7 +7964,7 @@ export const PlayermoderationApiAxiosParamCreator = function (configuration?: Co localVarHeaderParameter['Content-Type'] = 'application/json'; - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; localVarRequestOptions.data = serializeDataIfNeeded(inlineObject12, localVarRequestOptions, configuration) @@ -7981,7 +7981,7 @@ export const PlayermoderationApiAxiosParamCreator = function (configuration?: Co * @param {*} [options] Override http request option. * @throws {RequiredError} */ - unmoderateUser: async (inlineObject13?: InlineObject13, options: any = {}): Promise => { + unmoderateUser: async (inlineObject13?: InlineObject13, options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/auth/user/unplayermoderate`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -8002,7 +8002,7 @@ export const PlayermoderationApiAxiosParamCreator = function (configuration?: Co localVarHeaderParameter['Content-Type'] = 'application/json'; - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; localVarRequestOptions.data = serializeDataIfNeeded(inlineObject13, localVarRequestOptions, configuration) @@ -8028,7 +8028,7 @@ export const PlayermoderationApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async clearAllPlayerModerations(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async clearAllPlayerModerations(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.clearAllPlayerModerations(options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -8039,7 +8039,7 @@ export const PlayermoderationApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async deletePlayerModeration(playerModerationId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async deletePlayerModeration(playerModerationId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.deletePlayerModeration(playerModerationId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -8050,7 +8050,7 @@ export const PlayermoderationApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getPlayerModeration(playerModerationId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async getPlayerModeration(playerModerationId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getPlayerModeration(playerModerationId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -8062,7 +8062,7 @@ export const PlayermoderationApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getPlayerModerations(type?: string, targetUserId?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + async getPlayerModerations(type?: string, targetUserId?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.getPlayerModerations(type, targetUserId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -8073,7 +8073,7 @@ export const PlayermoderationApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async moderateUser(inlineObject12?: InlineObject12, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async moderateUser(inlineObject12?: InlineObject12, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.moderateUser(inlineObject12, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -8084,7 +8084,7 @@ export const PlayermoderationApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async unmoderateUser(inlineObject13?: InlineObject13, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async unmoderateUser(inlineObject13?: InlineObject13, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.unmoderateUser(inlineObject13, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -8175,7 +8175,7 @@ export class PlayermoderationApi extends BaseAPI { * @throws {RequiredError} * @memberof PlayermoderationApi */ - public clearAllPlayerModerations(options?: any) { + public clearAllPlayerModerations(options?: AxiosRequestConfig) { return PlayermoderationApiFp(this.configuration).clearAllPlayerModerations(options).then((request) => request(this.axios, this.basePath)); } @@ -8187,7 +8187,7 @@ export class PlayermoderationApi extends BaseAPI { * @throws {RequiredError} * @memberof PlayermoderationApi */ - public deletePlayerModeration(playerModerationId: string, options?: any) { + public deletePlayerModeration(playerModerationId: string, options?: AxiosRequestConfig) { return PlayermoderationApiFp(this.configuration).deletePlayerModeration(playerModerationId, options).then((request) => request(this.axios, this.basePath)); } @@ -8199,7 +8199,7 @@ export class PlayermoderationApi extends BaseAPI { * @throws {RequiredError} * @memberof PlayermoderationApi */ - public getPlayerModeration(playerModerationId: string, options?: any) { + public getPlayerModeration(playerModerationId: string, options?: AxiosRequestConfig) { return PlayermoderationApiFp(this.configuration).getPlayerModeration(playerModerationId, options).then((request) => request(this.axios, this.basePath)); } @@ -8212,7 +8212,7 @@ export class PlayermoderationApi extends BaseAPI { * @throws {RequiredError} * @memberof PlayermoderationApi */ - public getPlayerModerations(type?: string, targetUserId?: string, options?: any) { + public getPlayerModerations(type?: string, targetUserId?: string, options?: AxiosRequestConfig) { return PlayermoderationApiFp(this.configuration).getPlayerModerations(type, targetUserId, options).then((request) => request(this.axios, this.basePath)); } @@ -8224,7 +8224,7 @@ export class PlayermoderationApi extends BaseAPI { * @throws {RequiredError} * @memberof PlayermoderationApi */ - public moderateUser(inlineObject12?: InlineObject12, options?: any) { + public moderateUser(inlineObject12?: InlineObject12, options?: AxiosRequestConfig) { return PlayermoderationApiFp(this.configuration).moderateUser(inlineObject12, options).then((request) => request(this.axios, this.basePath)); } @@ -8236,7 +8236,7 @@ export class PlayermoderationApi extends BaseAPI { * @throws {RequiredError} * @memberof PlayermoderationApi */ - public unmoderateUser(inlineObject13?: InlineObject13, options?: any) { + public unmoderateUser(inlineObject13?: InlineObject13, options?: AxiosRequestConfig) { return PlayermoderationApiFp(this.configuration).unmoderateUser(inlineObject13, options).then((request) => request(this.axios, this.basePath)); } } @@ -8256,7 +8256,7 @@ export const SystemApiAxiosParamCreator = function (configuration?: Configuratio * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getCSS: async (variant?: 'public' | 'internal', branch?: string, options: any = {}): Promise => { + getCSS: async (variant?: 'public' | 'internal', branch?: string, options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/css/app.js`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -8279,7 +8279,7 @@ export const SystemApiAxiosParamCreator = function (configuration?: Configuratio - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -8294,7 +8294,7 @@ export const SystemApiAxiosParamCreator = function (configuration?: Configuratio * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getConfig: async (options: any = {}): Promise => { + getConfig: async (options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/config`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -8309,7 +8309,7 @@ export const SystemApiAxiosParamCreator = function (configuration?: Configuratio - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -8324,7 +8324,7 @@ export const SystemApiAxiosParamCreator = function (configuration?: Configuratio * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getCurrentOnlineUsers: async (options: any = {}): Promise => { + getCurrentOnlineUsers: async (options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/visits`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -8339,7 +8339,7 @@ export const SystemApiAxiosParamCreator = function (configuration?: Configuratio - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -8355,7 +8355,7 @@ export const SystemApiAxiosParamCreator = function (configuration?: Configuratio * @deprecated * @throws {RequiredError} */ - getHealth: async (options: any = {}): Promise => { + getHealth: async (options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/health`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -8370,7 +8370,7 @@ export const SystemApiAxiosParamCreator = function (configuration?: Configuratio - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -8387,7 +8387,7 @@ export const SystemApiAxiosParamCreator = function (configuration?: Configuratio * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getJavaScript: async (variant?: 'public' | 'internal', branch?: string, options: any = {}): Promise => { + getJavaScript: async (variant?: 'public' | 'internal', branch?: string, options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/js/app.js`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -8410,7 +8410,7 @@ export const SystemApiAxiosParamCreator = function (configuration?: Configuratio - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -8425,7 +8425,7 @@ export const SystemApiAxiosParamCreator = function (configuration?: Configuratio * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getSystemTime: async (options: any = {}): Promise => { + getSystemTime: async (options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/time`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -8440,7 +8440,7 @@ export const SystemApiAxiosParamCreator = function (configuration?: Configuratio - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -8467,7 +8467,7 @@ export const SystemApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getCSS(variant?: 'public' | 'internal', branch?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async getCSS(variant?: 'public' | 'internal', branch?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getCSS(variant, branch, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -8477,7 +8477,7 @@ export const SystemApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getConfig(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async getConfig(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getConfig(options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -8487,7 +8487,7 @@ export const SystemApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getCurrentOnlineUsers(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async getCurrentOnlineUsers(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getCurrentOnlineUsers(options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -8498,7 +8498,7 @@ export const SystemApiFp = function(configuration?: Configuration) { * @deprecated * @throws {RequiredError} */ - async getHealth(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async getHealth(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getHealth(options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -8510,7 +8510,7 @@ export const SystemApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getJavaScript(variant?: 'public' | 'internal', branch?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async getJavaScript(variant?: 'public' | 'internal', branch?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getJavaScript(variant, branch, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -8520,7 +8520,7 @@ export const SystemApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getSystemTime(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async getSystemTime(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getSystemTime(options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -8612,7 +8612,7 @@ export class SystemApi extends BaseAPI { * @throws {RequiredError} * @memberof SystemApi */ - public getCSS(variant?: 'public' | 'internal', branch?: string, options?: any) { + public getCSS(variant?: 'public' | 'internal', branch?: string, options?: AxiosRequestConfig) { return SystemApiFp(this.configuration).getCSS(variant, branch, options).then((request) => request(this.axios, this.basePath)); } @@ -8623,7 +8623,7 @@ export class SystemApi extends BaseAPI { * @throws {RequiredError} * @memberof SystemApi */ - public getConfig(options?: any) { + public getConfig(options?: AxiosRequestConfig) { return SystemApiFp(this.configuration).getConfig(options).then((request) => request(this.axios, this.basePath)); } @@ -8634,7 +8634,7 @@ export class SystemApi extends BaseAPI { * @throws {RequiredError} * @memberof SystemApi */ - public getCurrentOnlineUsers(options?: any) { + public getCurrentOnlineUsers(options?: AxiosRequestConfig) { return SystemApiFp(this.configuration).getCurrentOnlineUsers(options).then((request) => request(this.axios, this.basePath)); } @@ -8646,7 +8646,7 @@ export class SystemApi extends BaseAPI { * @throws {RequiredError} * @memberof SystemApi */ - public getHealth(options?: any) { + public getHealth(options?: AxiosRequestConfig) { return SystemApiFp(this.configuration).getHealth(options).then((request) => request(this.axios, this.basePath)); } @@ -8659,7 +8659,7 @@ export class SystemApi extends BaseAPI { * @throws {RequiredError} * @memberof SystemApi */ - public getJavaScript(variant?: 'public' | 'internal', branch?: string, options?: any) { + public getJavaScript(variant?: 'public' | 'internal', branch?: string, options?: AxiosRequestConfig) { return SystemApiFp(this.configuration).getJavaScript(variant, branch, options).then((request) => request(this.axios, this.basePath)); } @@ -8670,7 +8670,7 @@ export class SystemApi extends BaseAPI { * @throws {RequiredError} * @memberof SystemApi */ - public getSystemTime(options?: any) { + public getSystemTime(options?: AxiosRequestConfig) { return SystemApiFp(this.configuration).getSystemTime(options).then((request) => request(this.axios, this.basePath)); } } @@ -8689,7 +8689,7 @@ export const UsersApiAxiosParamCreator = function (configuration?: Configuration * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getUser: async (userId: string, options: any = {}): Promise => { + getUser: async (userId: string, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'userId' is not null or undefined assertParamExists('getUser', 'userId', userId) const localVarPath = `/users/{userId}` @@ -8711,7 +8711,7 @@ export const UsersApiAxiosParamCreator = function (configuration?: Configuration - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -8727,7 +8727,7 @@ export const UsersApiAxiosParamCreator = function (configuration?: Configuration * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getUserByName: async (username: string, options: any = {}): Promise => { + getUserByName: async (username: string, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'username' is not null or undefined assertParamExists('getUserByName', 'username', username) const localVarPath = `/users/{username}/name` @@ -8749,7 +8749,7 @@ export const UsersApiAxiosParamCreator = function (configuration?: Configuration - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -8768,7 +8768,7 @@ export const UsersApiAxiosParamCreator = function (configuration?: Configuration * @param {*} [options] Override http request option. * @throws {RequiredError} */ - searchUsers: async (search?: string, developerType?: string, n?: number, offset?: number, options: any = {}): Promise => { + searchUsers: async (search?: string, developerType?: string, n?: number, offset?: number, options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/users`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -8803,7 +8803,7 @@ export const UsersApiAxiosParamCreator = function (configuration?: Configuration - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -8820,7 +8820,7 @@ export const UsersApiAxiosParamCreator = function (configuration?: Configuration * @param {*} [options] Override http request option. * @throws {RequiredError} */ - updateUser: async (userId: string, inlineObject2?: InlineObject2, options: any = {}): Promise => { + updateUser: async (userId: string, inlineObject2?: InlineObject2, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'userId' is not null or undefined assertParamExists('updateUser', 'userId', userId) const localVarPath = `/users/{userId}` @@ -8844,7 +8844,7 @@ export const UsersApiAxiosParamCreator = function (configuration?: Configuration localVarHeaderParameter['Content-Type'] = 'application/json'; - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; localVarRequestOptions.data = serializeDataIfNeeded(inlineObject2, localVarRequestOptions, configuration) @@ -8871,7 +8871,7 @@ export const UsersApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getUser(userId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async getUser(userId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getUser(userId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -8882,7 +8882,7 @@ export const UsersApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getUserByName(username: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async getUserByName(username: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getUserByName(username, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -8896,7 +8896,7 @@ export const UsersApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async searchUsers(search?: string, developerType?: string, n?: number, offset?: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + async searchUsers(search?: string, developerType?: string, n?: number, offset?: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.searchUsers(search, developerType, n, offset, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -8908,7 +8908,7 @@ export const UsersApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async updateUser(userId: string, inlineObject2?: InlineObject2, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async updateUser(userId: string, inlineObject2?: InlineObject2, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.updateUser(userId, inlineObject2, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -8984,7 +8984,7 @@ export class UsersApi extends BaseAPI { * @throws {RequiredError} * @memberof UsersApi */ - public getUser(userId: string, options?: any) { + public getUser(userId: string, options?: AxiosRequestConfig) { return UsersApiFp(this.configuration).getUser(userId, options).then((request) => request(this.axios, this.basePath)); } @@ -8996,7 +8996,7 @@ export class UsersApi extends BaseAPI { * @throws {RequiredError} * @memberof UsersApi */ - public getUserByName(username: string, options?: any) { + public getUserByName(username: string, options?: AxiosRequestConfig) { return UsersApiFp(this.configuration).getUserByName(username, options).then((request) => request(this.axios, this.basePath)); } @@ -9011,7 +9011,7 @@ export class UsersApi extends BaseAPI { * @throws {RequiredError} * @memberof UsersApi */ - public searchUsers(search?: string, developerType?: string, n?: number, offset?: number, options?: any) { + public searchUsers(search?: string, developerType?: string, n?: number, offset?: number, options?: AxiosRequestConfig) { return UsersApiFp(this.configuration).searchUsers(search, developerType, n, offset, options).then((request) => request(this.axios, this.basePath)); } @@ -9024,7 +9024,7 @@ export class UsersApi extends BaseAPI { * @throws {RequiredError} * @memberof UsersApi */ - public updateUser(userId: string, inlineObject2?: InlineObject2, options?: any) { + public updateUser(userId: string, inlineObject2?: InlineObject2, options?: AxiosRequestConfig) { return UsersApiFp(this.configuration).updateUser(userId, inlineObject2, options).then((request) => request(this.axios, this.basePath)); } } @@ -9043,7 +9043,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio * @param {*} [options] Override http request option. * @throws {RequiredError} */ - createWorld: async (inlineObject6?: InlineObject6, options: any = {}): Promise => { + createWorld: async (inlineObject6?: InlineObject6, options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/worlds`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -9060,7 +9060,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio localVarHeaderParameter['Content-Type'] = 'application/json'; - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; localVarRequestOptions.data = serializeDataIfNeeded(inlineObject6, localVarRequestOptions, configuration) @@ -9077,7 +9077,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio * @param {*} [options] Override http request option. * @throws {RequiredError} */ - deleteWorld: async (worldId: string, options: any = {}): Promise => { + deleteWorld: async (worldId: string, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'worldId' is not null or undefined assertParamExists('deleteWorld', 'worldId', worldId) const localVarPath = `/worlds/{worldId}` @@ -9099,7 +9099,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -9126,7 +9126,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getActiveWorlds: async (featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options: any = {}): Promise => { + getActiveWorlds: async (featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/worlds/active`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -9193,7 +9193,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -9221,7 +9221,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFavoritedWorlds: async (featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options: any = {}): Promise => { + getFavoritedWorlds: async (featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/worlds/favorites`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -9292,7 +9292,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -9320,7 +9320,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getRecentWorlds: async (featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options: any = {}): Promise => { + getRecentWorlds: async (featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/worlds/recent`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -9391,7 +9391,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -9407,7 +9407,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getWorld: async (worldId: string, options: any = {}): Promise => { + getWorld: async (worldId: string, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'worldId' is not null or undefined assertParamExists('getWorld', 'worldId', worldId) const localVarPath = `/worlds/{worldId}` @@ -9427,7 +9427,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -9444,7 +9444,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getWorldInstance: async (worldId: string, instanceId: string, options: any = {}): Promise => { + getWorldInstance: async (worldId: string, instanceId: string, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'worldId' is not null or undefined assertParamExists('getWorldInstance', 'worldId', worldId) // verify required parameter 'instanceId' is not null or undefined @@ -9469,7 +9469,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -9486,7 +9486,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio * @deprecated * @throws {RequiredError} */ - getWorldMetadata: async (worldId: string, options: any = {}): Promise => { + getWorldMetadata: async (worldId: string, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'worldId' is not null or undefined assertParamExists('getWorldMetadata', 'worldId', worldId) const localVarPath = `/worlds/{worldId}/metadata` @@ -9508,7 +9508,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -9524,7 +9524,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getWorldPublishStatus: async (worldId: string, options: any = {}): Promise => { + getWorldPublishStatus: async (worldId: string, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'worldId' is not null or undefined assertParamExists('getWorldPublishStatus', 'worldId', worldId) const localVarPath = `/worlds/{worldId}/publish` @@ -9546,7 +9546,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -9562,7 +9562,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio * @param {*} [options] Override http request option. * @throws {RequiredError} */ - publishWorld: async (worldId: string, options: any = {}): Promise => { + publishWorld: async (worldId: string, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'worldId' is not null or undefined assertParamExists('publishWorld', 'worldId', worldId) const localVarPath = `/worlds/{worldId}/publish` @@ -9584,7 +9584,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -9613,7 +9613,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio * @param {*} [options] Override http request option. * @throws {RequiredError} */ - searchWorlds: async (featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options: any = {}): Promise => { + searchWorlds: async (featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/worlds`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -9688,7 +9688,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -9704,7 +9704,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio * @param {*} [options] Override http request option. * @throws {RequiredError} */ - unpublishWorld: async (worldId: string, options: any = {}): Promise => { + unpublishWorld: async (worldId: string, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'worldId' is not null or undefined assertParamExists('unpublishWorld', 'worldId', worldId) const localVarPath = `/worlds/{worldId}/publish` @@ -9726,7 +9726,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -9743,7 +9743,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio * @param {*} [options] Override http request option. * @throws {RequiredError} */ - updateWorld: async (worldId: string, inlineObject7?: InlineObject7, options: any = {}): Promise => { + updateWorld: async (worldId: string, inlineObject7?: InlineObject7, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'worldId' is not null or undefined assertParamExists('updateWorld', 'worldId', worldId) const localVarPath = `/worlds/{worldId}` @@ -9767,7 +9767,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio localVarHeaderParameter['Content-Type'] = 'application/json'; - setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; localVarRequestOptions.data = serializeDataIfNeeded(inlineObject7, localVarRequestOptions, configuration) @@ -9794,7 +9794,7 @@ export const WorldsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async createWorld(inlineObject6?: InlineObject6, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async createWorld(inlineObject6?: InlineObject6, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.createWorld(inlineObject6, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -9805,7 +9805,7 @@ export const WorldsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async deleteWorld(worldId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async deleteWorld(worldId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.deleteWorld(worldId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -9827,7 +9827,7 @@ export const WorldsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getActiveWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + async getActiveWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.getActiveWorlds(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -9850,7 +9850,7 @@ export const WorldsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getFavoritedWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + async getFavoritedWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.getFavoritedWorlds(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -9873,7 +9873,7 @@ export const WorldsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getRecentWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + async getRecentWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.getRecentWorlds(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -9884,7 +9884,7 @@ export const WorldsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getWorld(worldId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async getWorld(worldId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getWorld(worldId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -9896,7 +9896,7 @@ export const WorldsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getWorldInstance(worldId: string, instanceId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async getWorldInstance(worldId: string, instanceId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getWorldInstance(worldId, instanceId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -9908,7 +9908,7 @@ export const WorldsApiFp = function(configuration?: Configuration) { * @deprecated * @throws {RequiredError} */ - async getWorldMetadata(worldId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async getWorldMetadata(worldId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getWorldMetadata(worldId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -9919,7 +9919,7 @@ export const WorldsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getWorldPublishStatus(worldId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async getWorldPublishStatus(worldId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getWorldPublishStatus(worldId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -9930,7 +9930,7 @@ export const WorldsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async publishWorld(worldId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async publishWorld(worldId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.publishWorld(worldId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -9954,7 +9954,7 @@ export const WorldsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async searchWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + async searchWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.searchWorlds(featured, sort, user, userId, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -9965,7 +9965,7 @@ export const WorldsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async unpublishWorld(worldId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async unpublishWorld(worldId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.unpublishWorld(worldId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -9977,7 +9977,7 @@ export const WorldsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async updateWorld(worldId: string, inlineObject7?: InlineObject7, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async updateWorld(worldId: string, inlineObject7?: InlineObject7, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.updateWorld(worldId, inlineObject7, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -10190,7 +10190,7 @@ export class WorldsApi extends BaseAPI { * @throws {RequiredError} * @memberof WorldsApi */ - public createWorld(inlineObject6?: InlineObject6, options?: any) { + public createWorld(inlineObject6?: InlineObject6, options?: AxiosRequestConfig) { return WorldsApiFp(this.configuration).createWorld(inlineObject6, options).then((request) => request(this.axios, this.basePath)); } @@ -10202,7 +10202,7 @@ export class WorldsApi extends BaseAPI { * @throws {RequiredError} * @memberof WorldsApi */ - public deleteWorld(worldId: string, options?: any) { + public deleteWorld(worldId: string, options?: AxiosRequestConfig) { return WorldsApiFp(this.configuration).deleteWorld(worldId, options).then((request) => request(this.axios, this.basePath)); } @@ -10225,7 +10225,7 @@ export class WorldsApi extends BaseAPI { * @throws {RequiredError} * @memberof WorldsApi */ - public getActiveWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: any) { + public getActiveWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: AxiosRequestConfig) { return WorldsApiFp(this.configuration).getActiveWorlds(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options).then((request) => request(this.axios, this.basePath)); } @@ -10249,7 +10249,7 @@ export class WorldsApi extends BaseAPI { * @throws {RequiredError} * @memberof WorldsApi */ - public getFavoritedWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any) { + public getFavoritedWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: AxiosRequestConfig) { return WorldsApiFp(this.configuration).getFavoritedWorlds(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options).then((request) => request(this.axios, this.basePath)); } @@ -10273,7 +10273,7 @@ export class WorldsApi extends BaseAPI { * @throws {RequiredError} * @memberof WorldsApi */ - public getRecentWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any) { + public getRecentWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: AxiosRequestConfig) { return WorldsApiFp(this.configuration).getRecentWorlds(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options).then((request) => request(this.axios, this.basePath)); } @@ -10285,7 +10285,7 @@ export class WorldsApi extends BaseAPI { * @throws {RequiredError} * @memberof WorldsApi */ - public getWorld(worldId: string, options?: any) { + public getWorld(worldId: string, options?: AxiosRequestConfig) { return WorldsApiFp(this.configuration).getWorld(worldId, options).then((request) => request(this.axios, this.basePath)); } @@ -10298,7 +10298,7 @@ export class WorldsApi extends BaseAPI { * @throws {RequiredError} * @memberof WorldsApi */ - public getWorldInstance(worldId: string, instanceId: string, options?: any) { + public getWorldInstance(worldId: string, instanceId: string, options?: AxiosRequestConfig) { return WorldsApiFp(this.configuration).getWorldInstance(worldId, instanceId, options).then((request) => request(this.axios, this.basePath)); } @@ -10311,7 +10311,7 @@ export class WorldsApi extends BaseAPI { * @throws {RequiredError} * @memberof WorldsApi */ - public getWorldMetadata(worldId: string, options?: any) { + public getWorldMetadata(worldId: string, options?: AxiosRequestConfig) { return WorldsApiFp(this.configuration).getWorldMetadata(worldId, options).then((request) => request(this.axios, this.basePath)); } @@ -10323,7 +10323,7 @@ export class WorldsApi extends BaseAPI { * @throws {RequiredError} * @memberof WorldsApi */ - public getWorldPublishStatus(worldId: string, options?: any) { + public getWorldPublishStatus(worldId: string, options?: AxiosRequestConfig) { return WorldsApiFp(this.configuration).getWorldPublishStatus(worldId, options).then((request) => request(this.axios, this.basePath)); } @@ -10335,7 +10335,7 @@ export class WorldsApi extends BaseAPI { * @throws {RequiredError} * @memberof WorldsApi */ - public publishWorld(worldId: string, options?: any) { + public publishWorld(worldId: string, options?: AxiosRequestConfig) { return WorldsApiFp(this.configuration).publishWorld(worldId, options).then((request) => request(this.axios, this.basePath)); } @@ -10360,7 +10360,7 @@ export class WorldsApi extends BaseAPI { * @throws {RequiredError} * @memberof WorldsApi */ - public searchWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: any) { + public searchWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: AxiosRequestConfig) { return WorldsApiFp(this.configuration).searchWorlds(featured, sort, user, userId, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options).then((request) => request(this.axios, this.basePath)); } @@ -10372,7 +10372,7 @@ export class WorldsApi extends BaseAPI { * @throws {RequiredError} * @memberof WorldsApi */ - public unpublishWorld(worldId: string, options?: any) { + public unpublishWorld(worldId: string, options?: AxiosRequestConfig) { return WorldsApiFp(this.configuration).unpublishWorld(worldId, options).then((request) => request(this.axios, this.basePath)); } @@ -10385,7 +10385,7 @@ export class WorldsApi extends BaseAPI { * @throws {RequiredError} * @memberof WorldsApi */ - public updateWorld(worldId: string, inlineObject7?: InlineObject7, options?: any) { + public updateWorld(worldId: string, inlineObject7?: InlineObject7, options?: AxiosRequestConfig) { return WorldsApiFp(this.configuration).updateWorld(worldId, inlineObject7, options).then((request) => request(this.axios, this.basePath)); } } diff --git a/base.ts b/base.ts index a038541..ef1ebe3 100644 --- a/base.ts +++ b/base.ts @@ -15,7 +15,7 @@ import { Configuration } from "./configuration"; // Some imports not used depending on template conditions // @ts-ignore -import globalAxios, { AxiosPromise, AxiosInstance } from 'axios'; +import globalAxios, { AxiosPromise, AxiosInstance, AxiosRequestConfig } from 'axios'; export const BASE_PATH = "https://api.vrchat.cloud/api/1".replace(/\/+$/, ""); @@ -37,7 +37,7 @@ export const COLLECTION_FORMATS = { */ export interface RequestArgs { url: string; - options: any; + options: AxiosRequestConfig; } /** diff --git a/common.ts b/common.ts index 6f7335b..212cf9f 100644 --- a/common.ts +++ b/common.ts @@ -13,8 +13,8 @@ import { Configuration } from "./configuration"; -import { RequiredError, RequestArgs } from "./base"; -import { AxiosInstance } from 'axios'; +import { RequiredError, RequestArgs } from "./base"; +import { AxiosInstance, AxiosResponse } from 'axios'; /** * @@ -130,8 +130,8 @@ export const toPathString = function (url: URL) { * @export */ export const createRequestFunction = function (axiosArgs: RequestArgs, globalAxios: AxiosInstance, BASE_PATH: string, configuration?: Configuration) { - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { + return >(axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { const axiosRequestArgs = {...axiosArgs.options, url: (configuration?.basePath || basePath) + axiosArgs.url}; - return axios.request(axiosRequestArgs); + return axios.request(axiosRequestArgs); }; } diff --git a/openapitools.json b/openapitools.json index 29f5d06..3b40e47 100644 --- a/openapitools.json +++ b/openapitools.json @@ -2,6 +2,6 @@ "$schema": "node_modules/@openapitools/openapi-generator-cli/config.schema.json", "spaces": 2, "generator-cli": { - "version": "5.2.0" + "version": "5.3.0" } } diff --git a/package-lock.json b/package-lock.json index c89b392..b658ebd 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10,7 +10,7 @@ "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", - "axios": "^0.21.1", + "axios": "^0.21.4", "axios-cookiejar-support": "^1.0.1", "tough-cookie": "^4.0.0" }, diff --git a/package.json b/package.json index c9b4b6b..ef18ed4 100644 --- a/package.json +++ b/package.json @@ -21,7 +21,7 @@ "tough-cookie": "^4.0.0", "axios-cookiejar-support": "^1.0.1", "@types/tough-cookie": "^4.0.1", - "axios": "^0.21.1" + "axios": "^0.21.4" }, "devDependencies": { "@types/node": "^12.11.5", From 1efdb9d7f5213e90280df5875b49b1bdd3b32a8d Mon Sep 17 00:00:00 2001 From: Foorack Date: Thu, 28 Oct 2021 21:13:28 +0200 Subject: [PATCH 055/130] Simulate push --- .github/workflows/ci.yaml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 0c740f9..3ed5d87 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -1,7 +1,7 @@ -on: - repository_dispatch: - types: [spec_release] -#on: push +#on: +# repository_dispatch: +# types: [spec_release] +on: push name: Generate VRChat API SDK From af0ffb13fc58db48e4992ca95a94da534be416db Mon Sep 17 00:00:00 2001 From: Foorack Date: Thu, 28 Oct 2021 21:24:08 +0200 Subject: [PATCH 056/130] Revert Simulate push --- .github/workflows/ci.yaml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 3ed5d87..0c740f9 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -1,7 +1,7 @@ -#on: -# repository_dispatch: -# types: [spec_release] -on: push +on: + repository_dispatch: + types: [spec_release] +#on: push name: Generate VRChat API SDK From 1cfb28fe8888299ec1a20f2d80ae509977bcc705 Mon Sep 17 00:00:00 2001 From: VRCCat Date: Thu, 28 Oct 2021 20:50:14 +0000 Subject: [PATCH 057/130] Upgrade Node SDK to spec 1.5.0 --- api.ts | 2445 +++++++++++++++++++++++---------------------- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 +- package.json | 2 +- 7 files changed, 1247 insertions(+), 1212 deletions(-) diff --git a/api.ts b/api.ts index f2561cd..1362d7a 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.4.2 + * The version of the OpenAPI document: 1.5.0 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -588,6 +588,56 @@ export interface APIEventConfig { */ 'viewSegmentLength': number; } +/** + * + * @export + * @interface APIHealth + */ +export interface APIHealth { + /** + * + * @type {boolean} + * @memberof APIHealth + */ + 'ok': boolean; + /** + * + * @type {string} + * @memberof APIHealth + */ + 'serverName': string; + /** + * + * @type {string} + * @memberof APIHealth + */ + 'buildVersionTag': string; +} +/** + * + * @export + * @interface AddFavoriteRequest + */ +export interface AddFavoriteRequest { + /** + * + * @type {FavoriteType} + * @memberof AddFavoriteRequest + */ + 'type': FavoriteType; + /** + * Must be either AvatarID, WorldID or UserID. + * @type {string} + * @memberof AddFavoriteRequest + */ + 'favoriteId': string; + /** + * Tags indicate which group this favorite belongs to. Adding multiple groups makes it show up in all. Removing it from one in that case removes it from all. + * @type {Array} + * @memberof AddFavoriteRequest + */ + 'tags': Array; +} /** * * @export @@ -717,6 +767,220 @@ export interface AvatarUnityPackageUrlObject { */ 'unityPackageUrl'?: string; } +/** + * + * @export + * @interface CreateAvatarRequest + */ +export interface CreateAvatarRequest { + /** + * + * @type {string} + * @memberof CreateAvatarRequest + */ + 'assetUrl'?: string; + /** + * + * @type {string} + * @memberof CreateAvatarRequest + */ + 'id'?: string; + /** + * + * @type {string} + * @memberof CreateAvatarRequest + */ + 'name': string; + /** + * + * @type {string} + * @memberof CreateAvatarRequest + */ + 'description'?: string; + /** + * + * @type {Array} + * @memberof CreateAvatarRequest + */ + 'tags'?: Array; + /** + * + * @type {string} + * @memberof CreateAvatarRequest + */ + 'imageUrl': string; + /** + * + * @type {ReleaseStatus} + * @memberof CreateAvatarRequest + */ + 'releaseStatus'?: ReleaseStatus; + /** + * + * @type {number} + * @memberof CreateAvatarRequest + */ + 'version'?: number; + /** + * + * @type {string} + * @memberof CreateAvatarRequest + */ + 'unityPackageUrl'?: string; +} +/** + * + * @export + * @interface CreateFileRequest + */ +export interface CreateFileRequest { + /** + * + * @type {string} + * @memberof CreateFileRequest + */ + 'name': string; + /** + * + * @type {MIMEType} + * @memberof CreateFileRequest + */ + 'mimeType': MIMEType; + /** + * + * @type {string} + * @memberof CreateFileRequest + */ + 'extension': string; + /** + * + * @type {Array} + * @memberof CreateFileRequest + */ + 'tags'?: Array; +} +/** + * + * @export + * @interface CreateFileVersionRequest + */ +export interface CreateFileVersionRequest { + /** + * + * @type {string} + * @memberof CreateFileVersionRequest + */ + 'signatureMd5': string; + /** + * + * @type {number} + * @memberof CreateFileVersionRequest + */ + 'signatureSizeInBytes': number; + /** + * + * @type {string} + * @memberof CreateFileVersionRequest + */ + 'fileMd5'?: string; + /** + * + * @type {number} + * @memberof CreateFileVersionRequest + */ + 'fileSizeInBytes'?: number; +} +/** + * + * @export + * @interface CreateWorldRequest + */ +export interface CreateWorldRequest { + /** + * + * @type {string} + * @memberof CreateWorldRequest + */ + 'assetUrl': string; + /** + * + * @type {number} + * @memberof CreateWorldRequest + */ + 'assetVersion'?: number; + /** + * + * @type {string} + * @memberof CreateWorldRequest + */ + 'authorId'?: string; + /** + * + * @type {string} + * @memberof CreateWorldRequest + */ + 'authorName'?: string; + /** + * + * @type {number} + * @memberof CreateWorldRequest + */ + 'capacity'?: number; + /** + * + * @type {string} + * @memberof CreateWorldRequest + */ + 'description'?: string; + /** + * + * @type {string} + * @memberof CreateWorldRequest + */ + 'id'?: string; + /** + * + * @type {string} + * @memberof CreateWorldRequest + */ + 'imageUrl': string; + /** + * + * @type {string} + * @memberof CreateWorldRequest + */ + 'name': string; + /** + * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. + * @type {string} + * @memberof CreateWorldRequest + */ + 'platform'?: string; + /** + * + * @type {ReleaseStatus} + * @memberof CreateWorldRequest + */ + 'releaseStatus'?: ReleaseStatus; + /** + * + * @type {Array} + * @memberof CreateWorldRequest + */ + 'tags'?: Array; + /** + * + * @type {string} + * @memberof CreateWorldRequest + */ + 'unityPackageUrl'?: string; + /** + * + * @type {string} + * @memberof CreateWorldRequest + */ + 'unityVersion'?: string; +} /** * * @export @@ -1284,6 +1548,19 @@ export enum FileStatus { None = 'none' } +/** + * + * @export + * @interface FileUploadURL + */ +export interface FileUploadURL { + /** + * + * @type {string} + * @memberof FileUploadURL + */ + 'url': string; +} /** * * @export @@ -1336,962 +1613,753 @@ export interface FileVersion { /** * * @export - * @interface FriendStatus + * @interface FileVersionUploadStatus */ -export interface FriendStatus { +export interface FileVersionUploadStatus { /** * - * @type {boolean} - * @memberof FriendStatus + * @type {string} + * @memberof FileVersionUploadStatus */ - 'incomingRequest': boolean; + 'uploadId': string; /** * - * @type {boolean} - * @memberof FriendStatus + * @type {string} + * @memberof FileVersionUploadStatus */ - 'isFriend': boolean; + 'fileName': string; /** * - * @type {boolean} - * @memberof FriendStatus + * @type {number} + * @memberof FileVersionUploadStatus */ - 'outgoingRequest': boolean; + 'nextPartNumber': number; + /** + * + * @type {number} + * @memberof FileVersionUploadStatus + */ + 'maxParts': number; + /** + * + * @type {Array} + * @memberof FileVersionUploadStatus + */ + 'parts': Array; + /** + * Unknown + * @type {Array} + * @memberof FileVersionUploadStatus + */ + 'etags': Array; } /** * * @export - * @interface InlineObject + * @interface FinishFileDataUploadRequest */ -export interface InlineObject { +export interface FinishFileDataUploadRequest { /** - * + * Array of ETags uploaded. + * @type {Set} + * @memberof FinishFileDataUploadRequest + */ + 'etags'?: Set; + /** + * Always a zero in string form, despite how many parts uploaded. + * @type {string} + * @memberof FinishFileDataUploadRequest + * @deprecated + */ + 'nextPartNumber': string; + /** + * Always a zero in string form, despite how many parts uploaded. * @type {string} - * @memberof InlineObject + * @memberof FinishFileDataUploadRequest + * @deprecated */ - 'code': string; + 'maxParts': string; } /** * * @export - * @interface InlineObject1 + * @interface FriendStatus */ -export interface InlineObject1 { +export interface FriendStatus { /** * - * @type {string} - * @memberof InlineObject1 + * @type {boolean} + * @memberof FriendStatus */ - 'code': string; + 'incomingRequest': boolean; + /** + * + * @type {boolean} + * @memberof FriendStatus + */ + 'isFriend': boolean; + /** + * + * @type {boolean} + * @memberof FriendStatus + */ + 'outgoingRequest': boolean; } /** * * @export - * @interface InlineObject10 + * @interface Instance */ -export interface InlineObject10 { +export interface Instance { /** * - * @type {string} - * @memberof InlineObject10 + * @type {boolean} + * @memberof Instance */ - 'assetUrl'?: string; + 'active': boolean; /** * - * @type {string} - * @memberof InlineObject10 + * @type {boolean} + * @memberof Instance */ - 'id'?: string; + 'canRequestInvite': boolean; /** * - * @type {string} - * @memberof InlineObject10 + * @type {number} + * @memberof Instance */ - 'name': string; + 'capacity': number; /** * * @type {string} - * @memberof InlineObject10 + * @memberof Instance */ - 'description'?: string; + 'clientNumber': string; /** * - * @type {Array} - * @memberof InlineObject10 + * @type {boolean} + * @memberof Instance */ - 'tags'?: Array; + 'full': boolean; /** * * @type {string} - * @memberof InlineObject10 + * @memberof Instance */ - 'imageUrl': string; + 'id': string; /** * - * @type {ReleaseStatus} - * @memberof InlineObject10 + * @type {string} + * @memberof Instance */ - 'releaseStatus'?: ReleaseStatus; + 'instanceId': string; + /** + * + * @type {string} + * @memberof Instance + */ + 'location': string; /** * * @type {number} - * @memberof InlineObject10 + * @memberof Instance */ - 'version'?: number; + 'n_users': number; /** * * @type {string} - * @memberof InlineObject10 + * @memberof Instance */ - 'unityPackageUrl'?: string; -} -/** - * - * @export - * @interface InlineObject11 - */ -export interface InlineObject11 { + 'name': string; /** * * @type {string} - * @memberof InlineObject11 + * @memberof Instance */ - 'assetUrl'?: string; + 'nonce'?: string; /** * * @type {string} - * @memberof InlineObject11 + * @memberof Instance */ - 'id'?: string; + 'ownerId'?: string; /** * - * @type {string} - * @memberof InlineObject11 + * @type {boolean} + * @memberof Instance */ - 'name'?: string; + 'permanent': boolean; /** * * @type {string} - * @memberof InlineObject11 + * @memberof Instance */ - 'description'?: string; + 'photonRegion': string; /** * - * @type {Array} - * @memberof InlineObject11 + * @type {InstancePlatforms} + * @memberof Instance */ - 'tags'?: Array; + 'platforms': InstancePlatforms; /** * * @type {string} - * @memberof InlineObject11 + * @memberof Instance */ - 'imageUrl'?: string; + 'region': string; /** * - * @type {ReleaseStatus} - * @memberof InlineObject11 + * @type {string} + * @memberof Instance */ - 'releaseStatus'?: ReleaseStatus; + 'shortName': string; /** * - * @type {number} - * @memberof InlineObject11 + * @type {Array} + * @memberof Instance */ - 'version'?: number; + 'tags': Array; /** * * @type {string} - * @memberof InlineObject11 + * @memberof Instance */ - 'unityPackageUrl'?: string; -} -/** - * - * @export - * @interface InlineObject12 - */ -export interface InlineObject12 { + 'type': string; /** - * - * @type {string} - * @memberof InlineObject12 + * Always empty on non-existing instances, and non-present on existing instances. + * @type {Array} + * @memberof Instance + * @deprecated */ - 'moderated': string; + 'users'?: Array; + /** + * Only present on non-existing instances, and only contains a very small subject of World object. Use World API instead. + * @type {object} + * @memberof Instance + * @deprecated + */ + 'world'?: object; /** * - * @type {PlayerModerationType} - * @memberof InlineObject12 + * @type {string} + * @memberof Instance */ - 'type': PlayerModerationType; + 'worldId': string; } /** * * @export - * @interface InlineObject13 + * @interface InstancePlatforms */ -export interface InlineObject13 { +export interface InstancePlatforms { /** * - * @type {string} - * @memberof InlineObject13 + * @type {number} + * @memberof InstancePlatforms */ - 'moderated'?: string; + 'android': number; /** * - * @type {PlayerModerationType} - * @memberof InlineObject13 + * @type {number} + * @memberof InstancePlatforms */ - 'type': PlayerModerationType; + 'standalonewindows': number; } /** * * @export - * @interface InlineObject2 + * @interface InviteMessage */ -export interface InlineObject2 { +export interface InviteMessage { /** * - * @type {string} - * @memberof InlineObject2 + * @type {boolean} + * @memberof InviteMessage */ - 'email'?: string; + 'canBeUpdated': boolean; /** * * @type {string} - * @memberof InlineObject2 - */ - 'birthday'?: string; - /** - * - * @type {number} - * @memberof InlineObject2 + * @memberof InviteMessage */ - 'acceptedTOSVersion'?: number; + 'id': string; /** * - * @type {Array} - * @memberof InlineObject2 + * @type {string} + * @memberof InviteMessage */ - 'tags'?: Array; + 'message': string; /** * - * @type {UserStatus} - * @memberof InlineObject2 + * @type {InviteMessageType} + * @memberof InviteMessage */ - 'status'?: UserStatus; + 'messageType': InviteMessageType; /** - * - * @type {string} - * @memberof InlineObject2 + * Changes to 60 when updated, although probably server-side configurable. + * @type {number} + * @memberof InviteMessage */ - 'statusDescription'?: string; + 'remainingCooldownMinutes': number; /** * - * @type {string} - * @memberof InlineObject2 + * @type {number} + * @memberof InviteMessage */ - 'bio'?: string; + 'slot': number; /** * - * @type {Array} - * @memberof InlineObject2 - */ - 'bioLinks'?: Array; - /** - * MUST be a valid VRChat /file/ url. * @type {string} - * @memberof InlineObject2 + * @memberof InviteMessage */ - 'userIcon'?: string; + 'updatedAt': string; +} +/** + * + * @export + * @enum {string} + */ + +export enum InviteMessageType { + Message = 'message', + Response = 'response', + Request = 'request', + RequestResponse = 'requestResponse' } + /** * * @export - * @interface InlineObject3 + * @interface InviteRequest */ -export interface InlineObject3 { +export interface InviteRequest { /** * * @type {string} - * @memberof InlineObject3 + * @memberof InviteRequest */ - 'name': string; + 'instanceId': string; +} +/** + * + * @export + * @interface InviteResponse + */ +export interface InviteResponse { /** * - * @type {MIMEType} - * @memberof InlineObject3 + * @type {number} + * @memberof InviteResponse */ - 'mimeType': MIMEType; + 'responseSlot': number; +} +/** + * + * @export + * @interface LimitedUnityPackage + */ +export interface LimitedUnityPackage { /** - * + * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. * @type {string} - * @memberof InlineObject3 + * @memberof LimitedUnityPackage */ - 'extension': string; + 'platform': string; /** * - * @type {Array} - * @memberof InlineObject3 + * @type {string} + * @memberof LimitedUnityPackage */ - 'tags'?: Array; + 'unityVersion': string; } /** * * @export - * @interface InlineObject4 + * @interface LimitedUser */ -export interface InlineObject4 { +export interface LimitedUser { /** * * @type {string} - * @memberof InlineObject4 + * @memberof LimitedUser */ - 'signatureMd5': string; + 'bio'?: string; /** * - * @type {number} - * @memberof InlineObject4 + * @type {string} + * @memberof LimitedUser */ - 'signatureSizeInBytes': number; + 'currentAvatarImageUrl': string; /** * * @type {string} - * @memberof InlineObject4 + * @memberof LimitedUser */ - 'fileMd5'?: string; - /** - * - * @type {number} - * @memberof InlineObject4 - */ - 'fileSizeInBytes'?: number; -} -/** - * - * @export - * @interface InlineObject5 - */ -export interface InlineObject5 { - /** - * Array of ETags uploaded. - * @type {Set} - * @memberof InlineObject5 - */ - 'etags'?: Set; - /** - * Always a zero in string form, despite how many parts uploaded. - * @type {string} - * @memberof InlineObject5 - * @deprecated - */ - 'nextPartNumber': string; - /** - * Always a zero in string form, despite how many parts uploaded. - * @type {string} - * @memberof InlineObject5 - * @deprecated - */ - 'maxParts': string; -} -/** - * - * @export - * @interface InlineObject6 - */ -export interface InlineObject6 { + 'currentAvatarThumbnailImageUrl': string; /** * - * @type {string} - * @memberof InlineObject6 + * @type {DeveloperType} + * @memberof LimitedUser */ - 'assetUrl': string; + 'developerType': DeveloperType; /** * * @type {string} - * @memberof InlineObject6 + * @memberof LimitedUser */ - 'assetVersion'?: string; + 'displayName': string; /** * * @type {string} - * @memberof InlineObject6 + * @memberof LimitedUser */ - 'authorId'?: string; + 'fallbackAvatar': string; /** * * @type {string} - * @memberof InlineObject6 + * @memberof LimitedUser */ - 'authorName'?: string; + 'id': string; /** * - * @type {number} - * @memberof InlineObject6 + * @type {boolean} + * @memberof LimitedUser */ - 'capacity'?: number; + 'isFriend': boolean; /** - * + * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. * @type {string} - * @memberof InlineObject6 + * @memberof LimitedUser */ - 'description'?: string; + 'last_platform': string; /** * * @type {string} - * @memberof InlineObject6 + * @memberof LimitedUser */ - 'id'?: string; + 'profilePicOverride': string; /** * - * @type {string} - * @memberof InlineObject6 + * @type {UserStatus} + * @memberof LimitedUser */ - 'imageUrl': string; + 'status': UserStatus; /** * * @type {string} - * @memberof InlineObject6 + * @memberof LimitedUser */ - 'name': string; + 'statusDescription': string; /** - * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. - * @type {string} - * @memberof InlineObject6 + * <- Always empty. + * @type {Array} + * @memberof LimitedUser */ - 'platform'?: string; + 'tags': Array; /** * - * @type {ReleaseStatus} - * @memberof InlineObject6 + * @type {string} + * @memberof LimitedUser */ - 'releaseStatus'?: ReleaseStatus; + 'userIcon': string; /** * - * @type {Array} - * @memberof InlineObject6 + * @type {string} + * @memberof LimitedUser */ - 'tags'?: Array; + 'username': string; /** * * @type {string} - * @memberof InlineObject6 + * @memberof LimitedUser */ - 'unityPackageUrl'?: string; + 'location'?: string; /** * * @type {string} - * @memberof InlineObject6 + * @memberof LimitedUser */ - 'unityVersion'?: string; + 'friendKey'?: string; } /** * * @export - * @interface InlineObject7 + * @interface LimitedWorld */ -export interface InlineObject7 { +export interface LimitedWorld { /** * * @type {string} - * @memberof InlineObject7 + * @memberof LimitedWorld */ - 'assetUrl'?: string; + 'authorId': string; /** * * @type {string} - * @memberof InlineObject7 + * @memberof LimitedWorld */ - 'assetVersion'?: string; + 'authorName': string; /** * - * @type {string} - * @memberof InlineObject7 + * @type {number} + * @memberof LimitedWorld */ - 'authorId'?: string; + 'capacity': number; /** * * @type {string} - * @memberof InlineObject7 + * @memberof LimitedWorld */ - 'authorName'?: string; + 'created_at': string; /** * * @type {number} - * @memberof InlineObject7 + * @memberof LimitedWorld */ - 'capacity'?: number; + 'favorites': number; /** * - * @type {string} - * @memberof InlineObject7 + * @type {number} + * @memberof LimitedWorld */ - 'description'?: string; + 'heat': number; /** * * @type {string} - * @memberof InlineObject7 + * @memberof LimitedWorld */ - 'id'?: string; + 'id': string; /** * * @type {string} - * @memberof InlineObject7 + * @memberof LimitedWorld */ - 'imageUrl'?: string; + 'imageUrl': string; /** * * @type {string} - * @memberof InlineObject7 + * @memberof LimitedWorld */ - 'name'?: string; + 'labsPublicationDate': string; /** - * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. + * * @type {string} - * @memberof InlineObject7 + * @memberof LimitedWorld */ - 'platform'?: string; + 'name': string; /** * - * @type {ReleaseStatus} - * @memberof InlineObject7 + * @type {number} + * @memberof LimitedWorld */ - 'releaseStatus'?: ReleaseStatus; + 'occupants': number; /** * - * @type {Array} - * @memberof InlineObject7 + * @type {string} + * @memberof LimitedWorld */ - 'tags'?: Array; + 'organization': string; /** * - * @type {string} - * @memberof InlineObject7 + * @type {number} + * @memberof LimitedWorld */ - 'unityPackageUrl'?: string; + 'popularity': number; /** * * @type {string} - * @memberof InlineObject7 + * @memberof LimitedWorld */ - 'unityVersion'?: string; -} -/** - * - * @export - * @interface InlineObject8 - */ -export interface InlineObject8 { + 'publicationDate': string; /** * - * @type {FavoriteType} - * @memberof InlineObject8 - */ - 'type': FavoriteType; - /** - * Must be either AvatarID, WorldID or UserID. - * @type {string} - * @memberof InlineObject8 + * @type {ReleaseStatus} + * @memberof LimitedWorld */ - 'favoriteId': string; + 'releaseStatus': ReleaseStatus; /** - * Tags indicate which group this favorite belongs to. Adding multiple groups makes it show up in all. Removing it from one in that case removes it from all. + * * @type {Array} - * @memberof InlineObject8 + * @memberof LimitedWorld */ 'tags': Array; -} -/** - * - * @export - * @interface InlineObject9 - */ -export interface InlineObject9 { /** * * @type {string} - * @memberof InlineObject9 + * @memberof LimitedWorld */ - 'displayName'?: string; + 'thumbnailImageUrl': string; /** * - * @type {FavoriteGroupVisibility} - * @memberof InlineObject9 + * @type {Array} + * @memberof LimitedWorld */ - 'visibility'?: FavoriteGroupVisibility; + 'unityPackages': Array; /** - * Tags on FavoriteGroups are believed to do nothing. - * @type {Array} - * @memberof InlineObject9 + * + * @type {string} + * @memberof LimitedWorld */ - 'tags'?: Array; + 'updated_at': string; } /** * * @export - * @interface InlineResponse200 + * @enum {string} */ -export interface InlineResponse200 { - /** - * - * @type {boolean} - * @memberof InlineResponse200 - */ - 'ok': boolean; - /** - * - * @type {string} - * @memberof InlineResponse200 - */ - 'token': string; + +export enum MIMEType { + ImageJpeg = 'image/jpeg', + ImageJpg = 'image/jpg', + ImagePng = 'image/png', + ImageWebp = 'image/webp', + ImageGif = 'image/gif', + ImageBmp = 'image/bmp', + ImageSvgxml = 'image/svg+xml', + ImageTiff = 'image/tiff', + ApplicationXAvatar = 'application/x-avatar', + ApplicationXWorld = 'application/x-world', + ApplicationGzip = 'application/gzip', + ApplicationXRsyncSignature = 'application/x-rsync-signature', + ApplicationXRsyncDelta = 'application/x-rsync-delta', + ApplicationOctetStream = 'application/octet-stream' } + /** * * @export - * @interface InlineResponse2001 + * @interface ModelError */ -export interface InlineResponse2001 { +export interface ModelError { /** * - * @type {boolean} - * @memberof InlineResponse2001 + * @type {Response} + * @memberof ModelError */ - 'verified': boolean; + 'error'?: Response; } /** * * @export - * @interface InlineResponse2002 + * @interface ModelFile */ -export interface InlineResponse2002 { +export interface ModelFile { /** * - * @type {boolean} - * @memberof InlineResponse2002 + * @type {string} + * @memberof ModelFile */ - 'ok': boolean; + 'extension': string; /** * * @type {string} - * @memberof InlineResponse2002 + * @memberof ModelFile */ - 'serverName': string; + 'id': string; /** * - * @type {string} - * @memberof InlineResponse2002 + * @type {MIMEType} + * @memberof ModelFile */ - 'buildVersionTag': string; -} -/** - * - * @export - * @interface InlineResponse2003 - */ -export interface InlineResponse2003 { + 'mimeType': MIMEType; /** * * @type {string} - * @memberof InlineResponse2003 + * @memberof ModelFile */ - 'uploadId': string; + 'name': string; /** * * @type {string} - * @memberof InlineResponse2003 + * @memberof ModelFile */ - 'fileName': string; + 'ownerId': string; /** * - * @type {number} - * @memberof InlineResponse2003 + * @type {Array} + * @memberof ModelFile */ - 'nextPartNumber': number; + 'tags': Array; /** * - * @type {number} - * @memberof InlineResponse2003 + * @type {Set} + * @memberof ModelFile */ - 'maxParts': number; - /** - * - * @type {Array} - * @memberof InlineResponse2003 - */ - 'parts': Array; - /** - * Unknown - * @type {Array} - * @memberof InlineResponse2003 - */ - 'etags': Array; -} -/** - * - * @export - * @interface InlineResponse2004 - */ -export interface InlineResponse2004 { - /** - * - * @type {string} - * @memberof InlineResponse2004 - */ - 'url': string; + 'versions': Set; } /** * * @export - * @interface InlineResponse2005 + * @interface ModerateUserRequest */ -export interface InlineResponse2005 { +export interface ModerateUserRequest { /** * * @type {string} - * @memberof InlineResponse2005 - */ - 'id': string; - /** - * - * @type {object} - * @memberof InlineResponse2005 - */ - 'metadata': object; -} -/** - * - * @export - * @interface InlineResponse2006 - */ -export interface InlineResponse2006 { - /** - * - * @type {boolean} - * @memberof InlineResponse2006 + * @memberof ModerateUserRequest */ - 'canPubilsh': boolean; -} -/** - * - * @export - * @interface InlineResponse400 - */ -export interface InlineResponse400 { + 'moderated': string; /** * - * @type {Error} - * @memberof InlineResponse400 + * @type {PlayerModerationType} + * @memberof ModerateUserRequest */ - 'error': Error; + 'type': PlayerModerationType; } /** * * @export - * @interface Instance + * @interface Notification */ -export interface Instance { - /** - * - * @type {boolean} - * @memberof Instance - */ - 'active': boolean; - /** - * - * @type {boolean} - * @memberof Instance - */ - 'canRequestInvite': boolean; - /** - * - * @type {number} - * @memberof Instance - */ - 'capacity': number; - /** - * - * @type {string} - * @memberof Instance - */ - 'clientNumber': string; - /** - * - * @type {boolean} - * @memberof Instance - */ - 'full': boolean; - /** - * - * @type {string} - * @memberof Instance - */ - 'id': string; - /** - * - * @type {string} - * @memberof Instance - */ - 'instanceId': string; - /** - * - * @type {string} - * @memberof Instance - */ - 'location': string; - /** - * - * @type {number} - * @memberof Instance - */ - 'n_users': number; - /** - * - * @type {string} - * @memberof Instance - */ - 'name': string; - /** - * - * @type {string} - * @memberof Instance - */ - 'nonce'?: string; - /** - * - * @type {string} - * @memberof Instance - */ - 'ownerId'?: string; - /** - * - * @type {boolean} - * @memberof Instance - */ - 'permanent': boolean; - /** - * - * @type {string} - * @memberof Instance - */ - 'photonRegion': string; - /** - * - * @type {InstancePlatforms} - * @memberof Instance - */ - 'platforms': InstancePlatforms; +export interface Notification { /** * * @type {string} - * @memberof Instance + * @memberof Notification */ - 'region': string; + 'created_at': string; /** - * + * **NOTICE:** This is not a JSON object, this is a json **encoded** object, meaning you have to json-de-encode to get the NotificationDetail object depending on the NotificationType. * @type {string} - * @memberof Instance - */ - 'shortName': string; - /** - * - * @type {Array} - * @memberof Instance + * @memberof Notification */ - 'tags': Array; + 'details': string; /** * * @type {string} - * @memberof Instance - */ - 'type': string; - /** - * Always empty on non-existing instances, and non-present on existing instances. - * @type {Array} - * @memberof Instance - * @deprecated - */ - 'users'?: Array; - /** - * Only present on non-existing instances, and only contains a very small subject of World object. Use World API instead. - * @type {object} - * @memberof Instance - * @deprecated + * @memberof Notification */ - 'world'?: object; + 'id': string; /** * * @type {string} - * @memberof Instance - */ - 'worldId': string; -} -/** - * - * @export - * @interface InstancePlatforms - */ -export interface InstancePlatforms { - /** - * - * @type {number} - * @memberof InstancePlatforms - */ - 'android': number; - /** - * - * @type {number} - * @memberof InstancePlatforms + * @memberof Notification */ - 'standalonewindows': number; -} -/** - * - * @export - * @interface InviteMessage - */ -export interface InviteMessage { + 'message': string; /** * * @type {boolean} - * @memberof InviteMessage + * @memberof Notification */ - 'canBeUpdated': boolean; + 'seen': boolean; /** * * @type {string} - * @memberof InviteMessage + * @memberof Notification */ - 'id': string; + 'senderUserId': string; /** * * @type {string} - * @memberof InviteMessage - */ - 'message': string; - /** - * - * @type {InviteMessageType} - * @memberof InviteMessage - */ - 'messageType': InviteMessageType; - /** - * Changes to 60 when updated, although probably server-side configurable. - * @type {number} - * @memberof InviteMessage - */ - 'remainingCooldownMinutes': number; - /** - * - * @type {number} - * @memberof InviteMessage + * @memberof Notification */ - 'slot': number; + 'senderUsername': string; /** * - * @type {string} - * @memberof InviteMessage + * @type {NotificationType} + * @memberof Notification */ - 'updatedAt': string; + 'type': NotificationType; } /** * @@ -2299,272 +2367,147 @@ export interface InviteMessage { * @enum {string} */ -export enum InviteMessageType { - Message = 'message' +export enum NotificationType { + FriendRequest = 'friendRequest', + Invite = 'invite', + InviteResponse = 'inviteResponse', + RequestInvite = 'requestInvite', + RequestInviteResponse = 'requestInviteResponse', + Votetokick = 'votetokick' } /** * * @export - * @interface InviteRequest - */ -export interface InviteRequest { - /** - * - * @type {string} - * @memberof InviteRequest - */ - 'instanceId': string; -} -/** - * - * @export - * @interface InviteResponse + * @interface PastDisplayName */ -export interface InviteResponse { +export interface PastDisplayName { /** * - * @type {number} - * @memberof InviteResponse - */ - 'responseSlot': number; -} -/** - * - * @export - * @interface LimitedUnityPackage - */ -export interface LimitedUnityPackage { - /** - * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. * @type {string} - * @memberof LimitedUnityPackage + * @memberof PastDisplayName */ - 'platform': string; + 'displayName': string; /** * * @type {string} - * @memberof LimitedUnityPackage + * @memberof PastDisplayName */ - 'unityVersion': string; + 'updated_at': string; } /** * * @export - * @interface LimitedUser + * @interface Permission */ -export interface LimitedUser { - /** - * - * @type {string} - * @memberof LimitedUser - */ - 'bio'?: string; - /** - * - * @type {string} - * @memberof LimitedUser - */ - 'currentAvatarImageUrl': string; - /** - * - * @type {string} - * @memberof LimitedUser - */ - 'currentAvatarThumbnailImageUrl': string; - /** - * - * @type {DeveloperType} - * @memberof LimitedUser - */ - 'developerType': DeveloperType; - /** - * - * @type {string} - * @memberof LimitedUser - */ - 'displayName': string; - /** - * - * @type {string} - * @memberof LimitedUser - */ - 'fallbackAvatar': string; +export interface Permission { /** * * @type {string} - * @memberof LimitedUser + * @memberof Permission */ 'id': string; - /** - * - * @type {boolean} - * @memberof LimitedUser - */ - 'isFriend': boolean; - /** - * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. - * @type {string} - * @memberof LimitedUser - */ - 'last_platform': string; - /** - * - * @type {string} - * @memberof LimitedUser - */ - 'profilePicOverride': string; - /** - * - * @type {UserStatus} - * @memberof LimitedUser - */ - 'status': UserStatus; /** * * @type {string} - * @memberof LimitedUser - */ - 'statusDescription': string; - /** - * <- Always empty. - * @type {Array} - * @memberof LimitedUser + * @memberof Permission */ - 'tags': Array; + 'name': string; /** * * @type {string} - * @memberof LimitedUser + * @memberof Permission */ - 'userIcon': string; + 'ownerId': string; /** * - * @type {string} - * @memberof LimitedUser + * @type {object} + * @memberof Permission */ - 'username': string; + 'data'?: object; } /** * * @export - * @interface LimitedWorld + * @interface PlayerModeration */ -export interface LimitedWorld { - /** - * - * @type {string} - * @memberof LimitedWorld - */ - 'authorId': string; - /** - * - * @type {string} - * @memberof LimitedWorld - */ - 'authorName': string; - /** - * - * @type {number} - * @memberof LimitedWorld - */ - 'capacity': number; +export interface PlayerModeration { /** * * @type {string} - * @memberof LimitedWorld - */ - 'created_at': string; - /** - * - * @type {number} - * @memberof LimitedWorld - */ - 'favorites': number; - /** - * - * @type {number} - * @memberof LimitedWorld + * @memberof PlayerModeration */ - 'heat': number; + 'created': string; /** * * @type {string} - * @memberof LimitedWorld + * @memberof PlayerModeration */ 'id': string; /** * * @type {string} - * @memberof LimitedWorld - */ - 'imageUrl': string; - /** - * - * @type {string} - * @memberof LimitedWorld - */ - 'labsPublicationDate': string; - /** - * - * @type {string} - * @memberof LimitedWorld - */ - 'name': string; - /** - * - * @type {number} - * @memberof LimitedWorld - */ - 'occupants': number; - /** - * - * @type {string} - * @memberof LimitedWorld - */ - 'organization': string; - /** - * - * @type {number} - * @memberof LimitedWorld - */ - 'popularity': number; - /** - * - * @type {string} - * @memberof LimitedWorld + * @memberof PlayerModeration */ - 'publicationDate': string; + 'sourceDisplayName': string; /** * - * @type {ReleaseStatus} - * @memberof LimitedWorld + * @type {string} + * @memberof PlayerModeration */ - 'releaseStatus': ReleaseStatus; + 'sourceUserId': string; /** * - * @type {Array} - * @memberof LimitedWorld + * @type {string} + * @memberof PlayerModeration */ - 'tags': Array; + 'targetDisplayName': string; /** * * @type {string} - * @memberof LimitedWorld + * @memberof PlayerModeration */ - 'thumbnailImageUrl': string; + 'targetUserId': string; /** * - * @type {Array} - * @memberof LimitedWorld + * @type {PlayerModerationType} + * @memberof PlayerModeration */ - 'unityPackages': Array; + 'type': PlayerModerationType; +} +/** + * + * @export + * @enum {string} + */ + +export enum PlayerModerationType { + Mute = 'mute', + Unmute = 'unmute', + Block = 'block', + Unblock = 'unblock', + HideAvatar = 'hideAvatar', + ShowAvatar = 'showAvatar' +} + +/** + * Public Announcement + * @export + * @interface PublicAnnouncement + */ +export interface PublicAnnouncement { /** - * + * Announcement name * @type {string} - * @memberof LimitedWorld + * @memberof PublicAnnouncement */ - 'updated_at': string; + 'name': string; + /** + * Announcement text + * @type {string} + * @memberof PublicAnnouncement + */ + 'text': string; } /** * @@ -2572,398 +2515,355 @@ export interface LimitedWorld { * @enum {string} */ -export enum MIMEType { - ImageJpeg = 'image/jpeg', - ImageJpg = 'image/jpg', - ImagePng = 'image/png', - ImageWebp = 'image/webp', - ImageGif = 'image/gif', - ImageBmp = 'image/bmp', - ImageSvgxml = 'image/svg+xml', - ImageTiff = 'image/tiff', - ApplicationXAvatar = 'application/x-avatar', - ApplicationXWorld = 'application/x-world', - ApplicationGzip = 'application/gzip', - ApplicationXRsyncSignature = 'application/x-rsync-signature', - ApplicationXRsyncDelta = 'application/x-rsync-delta', - ApplicationOctetStream = 'application/octet-stream' +export enum ReleaseStatus { + Public = 'public', + Private = 'private', + Hidden = 'hidden' } /** * * @export - * @interface ModelError + * @interface Response */ -export interface ModelError { +export interface Response { + /** + * + * @type {string} + * @memberof Response + */ + 'message'?: string; + /** + * + * @type {number} + * @memberof Response + */ + 'status_code': number; +} +/** + * + * @export + * @interface Success + */ +export interface Success { /** * * @type {Response} - * @memberof ModelError + * @memberof Success */ - 'error'?: Response; + 'success'?: Response; } /** * * @export - * @interface ModelFile + * @interface TwoFactorAuthCode */ -export interface ModelFile { +export interface TwoFactorAuthCode { /** * * @type {string} - * @memberof ModelFile + * @memberof TwoFactorAuthCode */ - 'extension': string; + 'code': string; +} +/** + * + * @export + * @interface UnityPackage + */ +export interface UnityPackage { /** * * @type {string} - * @memberof ModelFile + * @memberof UnityPackage */ - 'id': string; + 'assetUrl'?: string; /** * - * @type {MIMEType} - * @memberof ModelFile + * @type {object} + * @memberof UnityPackage */ - 'mimeType': MIMEType; + 'assetUrlObject'?: object; + /** + * + * @type {number} + * @memberof UnityPackage + */ + 'assetVersion': number; /** * * @type {string} - * @memberof ModelFile + * @memberof UnityPackage */ - 'name': string; + 'created_at'?: string; /** * * @type {string} - * @memberof ModelFile + * @memberof UnityPackage */ - 'ownerId': string; + 'id': string; + /** + * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. + * @type {string} + * @memberof UnityPackage + */ + 'platform': string; /** * - * @type {Array} - * @memberof ModelFile + * @type {string} + * @memberof UnityPackage */ - 'tags': Array; + 'pluginUrl'?: string; /** * - * @type {Set} - * @memberof ModelFile + * @type {object} + * @memberof UnityPackage */ - 'versions': Set; + 'pluginUrlObject'?: object; + /** + * + * @type {number} + * @memberof UnityPackage + */ + 'unitySortNumber'?: number; + /** + * + * @type {string} + * @memberof UnityPackage + */ + 'unityVersion': string; } /** * * @export - * @interface Notification + * @interface UpdateAvatarRequest */ -export interface Notification { +export interface UpdateAvatarRequest { /** * * @type {string} - * @memberof Notification - */ - 'created_at': string; - /** - * **NOTICE:** This is not a JSON object, this is a json **encoded** object, meaning you have to json-de-encode to get the NotificationDetail object depending on the NotificationType. - * @type {string} - * @memberof Notification + * @memberof UpdateAvatarRequest */ - 'details': string; + 'assetUrl'?: string; /** * * @type {string} - * @memberof Notification + * @memberof UpdateAvatarRequest */ - 'id': string; + 'id'?: string; /** * * @type {string} - * @memberof Notification + * @memberof UpdateAvatarRequest */ - 'message': string; + 'name'?: string; /** * - * @type {boolean} - * @memberof Notification + * @type {string} + * @memberof UpdateAvatarRequest */ - 'seen': boolean; + 'description'?: string; /** * - * @type {string} - * @memberof Notification + * @type {Array} + * @memberof UpdateAvatarRequest */ - 'senderUserId': string; + 'tags'?: Array; /** * * @type {string} - * @memberof Notification + * @memberof UpdateAvatarRequest */ - 'senderUsername': string; + 'imageUrl'?: string; /** * - * @type {NotificationType} - * @memberof Notification + * @type {ReleaseStatus} + * @memberof UpdateAvatarRequest */ - 'type': NotificationType; -} -/** - * - * @export - * @enum {string} - */ - -export enum NotificationType { - FriendRequest = 'friendRequest', - Invite = 'invite', - InviteResponse = 'inviteResponse', - RequestInvite = 'requestInvite', - RequestInviteResponse = 'requestInviteResponse', - Votetokick = 'votetokick' -} - -/** - * - * @export - * @interface PastDisplayName - */ -export interface PastDisplayName { + 'releaseStatus'?: ReleaseStatus; /** * - * @type {string} - * @memberof PastDisplayName + * @type {number} + * @memberof UpdateAvatarRequest */ - 'displayName': string; + 'version'?: number; /** * * @type {string} - * @memberof PastDisplayName + * @memberof UpdateAvatarRequest */ - 'updated_at': string; + 'unityPackageUrl'?: string; } /** * * @export - * @interface Permission + * @interface UpdateFavoriteGroupRequest */ -export interface Permission { - /** - * - * @type {object} - * @memberof Permission - */ - 'data'?: object; +export interface UpdateFavoriteGroupRequest { /** * * @type {string} - * @memberof Permission + * @memberof UpdateFavoriteGroupRequest */ - 'id': string; + 'displayName'?: string; /** * - * @type {string} - * @memberof Permission + * @type {FavoriteGroupVisibility} + * @memberof UpdateFavoriteGroupRequest */ - 'name': string; - /** - * - * @type {string} - * @memberof Permission + 'visibility'?: FavoriteGroupVisibility; + /** + * Tags on FavoriteGroups are believed to do nothing. + * @type {Array} + * @memberof UpdateFavoriteGroupRequest */ - 'ownerId': string; + 'tags'?: Array; } /** * * @export - * @interface PlayerModeration + * @interface UpdateUserRequest */ -export interface PlayerModeration { +export interface UpdateUserRequest { /** * * @type {string} - * @memberof PlayerModeration + * @memberof UpdateUserRequest */ - 'created': string; + 'email'?: string; /** * * @type {string} - * @memberof PlayerModeration + * @memberof UpdateUserRequest */ - 'id': string; + 'birthday'?: string; /** * - * @type {string} - * @memberof PlayerModeration + * @type {number} + * @memberof UpdateUserRequest */ - 'sourceDisplayName': string; + 'acceptedTOSVersion'?: number; /** * - * @type {string} - * @memberof PlayerModeration + * @type {Array} + * @memberof UpdateUserRequest */ - 'sourceUserId': string; + 'tags'?: Array; /** * - * @type {string} - * @memberof PlayerModeration + * @type {UserStatus} + * @memberof UpdateUserRequest */ - 'targetDisplayName': string; + 'status'?: UserStatus; /** * * @type {string} - * @memberof PlayerModeration + * @memberof UpdateUserRequest */ - 'targetUserId': string; + 'statusDescription'?: string; /** * - * @type {PlayerModerationType} - * @memberof PlayerModeration + * @type {string} + * @memberof UpdateUserRequest */ - 'type': PlayerModerationType; -} -/** - * - * @export - * @enum {string} - */ - -export enum PlayerModerationType { - Mute = 'mute', - Unmute = 'unmute', - Block = 'block', - Unblock = 'unblock', - HideAvatar = 'hideAvatar', - ShowAvatar = 'showAvatar' -} - -/** - * Public Announcement - * @export - * @interface PublicAnnouncement - */ -export interface PublicAnnouncement { + 'bio'?: string; /** - * Announcement name - * @type {string} - * @memberof PublicAnnouncement + * + * @type {Array} + * @memberof UpdateUserRequest */ - 'name': string; + 'bioLinks'?: Array; /** - * Announcement text + * MUST be a valid VRChat /file/ url. * @type {string} - * @memberof PublicAnnouncement + * @memberof UpdateUserRequest */ - 'text': string; -} -/** - * - * @export - * @enum {string} - */ - -export enum ReleaseStatus { - Public = 'public', - Private = 'private', - Hidden = 'hidden' + 'userIcon'?: string; } - /** * * @export - * @interface Response + * @interface UpdateWorldRequest */ -export interface Response { +export interface UpdateWorldRequest { /** * * @type {string} - * @memberof Response + * @memberof UpdateWorldRequest */ - 'message'?: string; + 'assetUrl'?: string; /** * - * @type {number} - * @memberof Response + * @type {string} + * @memberof UpdateWorldRequest */ - 'status_code': number; -} -/** - * - * @export - * @interface Success - */ -export interface Success { + 'assetVersion'?: string; /** * - * @type {Response} - * @memberof Success + * @type {string} + * @memberof UpdateWorldRequest */ - 'success'?: Response; -} -/** - * - * @export - * @interface UnityPackage - */ -export interface UnityPackage { + 'authorId'?: string; /** * * @type {string} - * @memberof UnityPackage + * @memberof UpdateWorldRequest */ - 'assetUrl'?: string; + 'authorName'?: string; /** * - * @type {object} - * @memberof UnityPackage + * @type {number} + * @memberof UpdateWorldRequest */ - 'assetUrlObject'?: object; + 'capacity'?: number; /** * - * @type {number} - * @memberof UnityPackage + * @type {string} + * @memberof UpdateWorldRequest */ - 'assetVersion': number; + 'description'?: string; /** * * @type {string} - * @memberof UnityPackage + * @memberof UpdateWorldRequest */ - 'created_at'?: string; + 'imageUrl'?: string; /** * * @type {string} - * @memberof UnityPackage + * @memberof UpdateWorldRequest */ - 'id': string; + 'name'?: string; /** * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. * @type {string} - * @memberof UnityPackage + * @memberof UpdateWorldRequest */ - 'platform': string; + 'platform'?: string; /** * - * @type {string} - * @memberof UnityPackage + * @type {ReleaseStatus} + * @memberof UpdateWorldRequest */ - 'pluginUrl'?: string; + 'releaseStatus'?: ReleaseStatus; /** * - * @type {object} - * @memberof UnityPackage + * @type {Array} + * @memberof UpdateWorldRequest */ - 'pluginUrlObject'?: object; + 'tags'?: Array; /** * - * @type {number} - * @memberof UnityPackage + * @type {string} + * @memberof UpdateWorldRequest */ - 'unitySortNumber'?: number; + 'unityPackageUrl'?: string; /** * * @type {string} - * @memberof UnityPackage + * @memberof UpdateWorldRequest */ - 'unityVersion': string; + 'unityVersion'?: string; } /** * @@ -3149,6 +3049,38 @@ export enum UserStatus { Offline = 'offline' } +/** + * + * @export + * @interface Verify2FAResult + */ +export interface Verify2FAResult { + /** + * + * @type {boolean} + * @memberof Verify2FAResult + */ + 'verified': boolean; +} +/** + * + * @export + * @interface VerifyAuthTokenResult + */ +export interface VerifyAuthTokenResult { + /** + * + * @type {boolean} + * @memberof VerifyAuthTokenResult + */ + 'ok': boolean; + /** + * + * @type {string} + * @memberof VerifyAuthTokenResult + */ + 'token': string; +} /** * * @export @@ -3348,6 +3280,38 @@ export interface World { */ 'visits': number; } +/** + * + * @export + * @interface WorldMetadata + */ +export interface WorldMetadata { + /** + * + * @type {string} + * @memberof WorldMetadata + */ + 'id': string; + /** + * + * @type {object} + * @memberof WorldMetadata + */ + 'metadata': object; +} +/** + * + * @export + * @interface WorldPublishStatus + */ +export interface WorldPublishStatus { + /** + * + * @type {boolean} + * @memberof WorldPublishStatus + */ + 'canPubilsh': boolean; +} /** * AuthenticationApi - axios parameter creator @@ -3518,11 +3482,11 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf /** * Finishes the login sequence with a normal 2FA-generated code for accounts with 2FA-protection enabled. * @summary Verify 2FA code - * @param {InlineObject} [inlineObject] + * @param {TwoFactorAuthCode} [twoFactorAuthCode] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - verify2FA: async (inlineObject?: InlineObject, options: AxiosRequestConfig = {}): Promise => { + verify2FA: async (twoFactorAuthCode?: TwoFactorAuthCode, options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/auth/twofactorauth/totp/verify`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -3544,7 +3508,7 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - localVarRequestOptions.data = serializeDataIfNeeded(inlineObject, localVarRequestOptions, configuration) + localVarRequestOptions.data = serializeDataIfNeeded(twoFactorAuthCode, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), @@ -3586,11 +3550,11 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf /** * Finishes the login sequence with an OTP (One Time Password) recovery code for accounts with 2FA-protection enabled. * @summary Verify 2FA code with Recovery code - * @param {InlineObject1} [inlineObject1] + * @param {TwoFactorAuthCode} [twoFactorAuthCode] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - verifyRecoveryCode: async (inlineObject1?: InlineObject1, options: AxiosRequestConfig = {}): Promise => { + verifyRecoveryCode: async (twoFactorAuthCode?: TwoFactorAuthCode, options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/auth/twofactorauth/otp/verify`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -3612,7 +3576,7 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - localVarRequestOptions.data = serializeDataIfNeeded(inlineObject1, localVarRequestOptions, configuration) + localVarRequestOptions.data = serializeDataIfNeeded(twoFactorAuthCode, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), @@ -3677,12 +3641,12 @@ export const AuthenticationApiFp = function(configuration?: Configuration) { /** * Finishes the login sequence with a normal 2FA-generated code for accounts with 2FA-protection enabled. * @summary Verify 2FA code - * @param {InlineObject} [inlineObject] + * @param {TwoFactorAuthCode} [twoFactorAuthCode] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async verify2FA(inlineObject?: InlineObject, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.verify2FA(inlineObject, options); + async verify2FA(twoFactorAuthCode?: TwoFactorAuthCode, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.verify2FA(twoFactorAuthCode, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** @@ -3691,19 +3655,19 @@ export const AuthenticationApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async verifyAuthToken(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async verifyAuthToken(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.verifyAuthToken(options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * Finishes the login sequence with an OTP (One Time Password) recovery code for accounts with 2FA-protection enabled. * @summary Verify 2FA code with Recovery code - * @param {InlineObject1} [inlineObject1] + * @param {TwoFactorAuthCode} [twoFactorAuthCode] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async verifyRecoveryCode(inlineObject1?: InlineObject1, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.verifyRecoveryCode(inlineObject1, options); + async verifyRecoveryCode(twoFactorAuthCode?: TwoFactorAuthCode, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.verifyRecoveryCode(twoFactorAuthCode, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, } @@ -3760,12 +3724,12 @@ export const AuthenticationApiFactory = function (configuration?: Configuration, /** * Finishes the login sequence with a normal 2FA-generated code for accounts with 2FA-protection enabled. * @summary Verify 2FA code - * @param {InlineObject} [inlineObject] + * @param {TwoFactorAuthCode} [twoFactorAuthCode] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - verify2FA(inlineObject?: InlineObject, options?: any): AxiosPromise { - return localVarFp.verify2FA(inlineObject, options).then((request) => request(axios, basePath)); + verify2FA(twoFactorAuthCode?: TwoFactorAuthCode, options?: any): AxiosPromise { + return localVarFp.verify2FA(twoFactorAuthCode, options).then((request) => request(axios, basePath)); }, /** * Verify whether the currently provided Auth Token is valid. @@ -3773,18 +3737,18 @@ export const AuthenticationApiFactory = function (configuration?: Configuration, * @param {*} [options] Override http request option. * @throws {RequiredError} */ - verifyAuthToken(options?: any): AxiosPromise { + verifyAuthToken(options?: any): AxiosPromise { return localVarFp.verifyAuthToken(options).then((request) => request(axios, basePath)); }, /** * Finishes the login sequence with an OTP (One Time Password) recovery code for accounts with 2FA-protection enabled. * @summary Verify 2FA code with Recovery code - * @param {InlineObject1} [inlineObject1] + * @param {TwoFactorAuthCode} [twoFactorAuthCode] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - verifyRecoveryCode(inlineObject1?: InlineObject1, options?: any): AxiosPromise { - return localVarFp.verifyRecoveryCode(inlineObject1, options).then((request) => request(axios, basePath)); + verifyRecoveryCode(twoFactorAuthCode?: TwoFactorAuthCode, options?: any): AxiosPromise { + return localVarFp.verifyRecoveryCode(twoFactorAuthCode, options).then((request) => request(axios, basePath)); }, }; }; @@ -3848,13 +3812,13 @@ export class AuthenticationApi extends BaseAPI { /** * Finishes the login sequence with a normal 2FA-generated code for accounts with 2FA-protection enabled. * @summary Verify 2FA code - * @param {InlineObject} [inlineObject] + * @param {TwoFactorAuthCode} [twoFactorAuthCode] * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof AuthenticationApi */ - public verify2FA(inlineObject?: InlineObject, options?: AxiosRequestConfig) { - return AuthenticationApiFp(this.configuration).verify2FA(inlineObject, options).then((request) => request(this.axios, this.basePath)); + public verify2FA(twoFactorAuthCode?: TwoFactorAuthCode, options?: AxiosRequestConfig) { + return AuthenticationApiFp(this.configuration).verify2FA(twoFactorAuthCode, options).then((request) => request(this.axios, this.basePath)); } /** @@ -3871,13 +3835,13 @@ export class AuthenticationApi extends BaseAPI { /** * Finishes the login sequence with an OTP (One Time Password) recovery code for accounts with 2FA-protection enabled. * @summary Verify 2FA code with Recovery code - * @param {InlineObject1} [inlineObject1] + * @param {TwoFactorAuthCode} [twoFactorAuthCode] * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof AuthenticationApi */ - public verifyRecoveryCode(inlineObject1?: InlineObject1, options?: AxiosRequestConfig) { - return AuthenticationApiFp(this.configuration).verifyRecoveryCode(inlineObject1, options).then((request) => request(this.axios, this.basePath)); + public verifyRecoveryCode(twoFactorAuthCode?: TwoFactorAuthCode, options?: AxiosRequestConfig) { + return AuthenticationApiFp(this.configuration).verifyRecoveryCode(twoFactorAuthCode, options).then((request) => request(this.axios, this.basePath)); } } @@ -3891,11 +3855,11 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati /** * Create an avatar. It\'s possible to optionally specify a ID if you want a custom one. Attempting to create an Avatar with an already claimed ID will result in a DB error. * @summary Create Avatar - * @param {InlineObject10} [inlineObject10] + * @param {CreateAvatarRequest} [createAvatarRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - createAvatar: async (inlineObject10?: InlineObject10, options: AxiosRequestConfig = {}): Promise => { + createAvatar: async (createAvatarRequest?: CreateAvatarRequest, options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/avatars`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -3919,7 +3883,7 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - localVarRequestOptions.data = serializeDataIfNeeded(inlineObject10, localVarRequestOptions, configuration) + localVarRequestOptions.data = serializeDataIfNeeded(createAvatarRequest, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), @@ -4229,6 +4193,44 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Switches into that avatar as your fallback avatar. + * @summary Select Fallback Avatar + * @param {string} avatarId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + selectFallbackAvatar: async (avatarId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'avatarId' is not null or undefined + assertParamExists('selectFallbackAvatar', 'avatarId', avatarId) + const localVarPath = `/avatars/{avatarId}/selectFallback` + .replace(`{${"avatarId"}}`, encodeURIComponent(String(avatarId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -4242,11 +4244,11 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati * Update information about a specific avatar. * @summary Update Avatar * @param {string} avatarId - * @param {InlineObject11} [inlineObject11] + * @param {UpdateAvatarRequest} [updateAvatarRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - updateAvatar: async (avatarId: string, inlineObject11?: InlineObject11, options: AxiosRequestConfig = {}): Promise => { + updateAvatar: async (avatarId: string, updateAvatarRequest?: UpdateAvatarRequest, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'avatarId' is not null or undefined assertParamExists('updateAvatar', 'avatarId', avatarId) const localVarPath = `/avatars/{avatarId}` @@ -4273,7 +4275,7 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - localVarRequestOptions.data = serializeDataIfNeeded(inlineObject11, localVarRequestOptions, configuration) + localVarRequestOptions.data = serializeDataIfNeeded(updateAvatarRequest, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), @@ -4293,12 +4295,12 @@ export const AvatarsApiFp = function(configuration?: Configuration) { /** * Create an avatar. It\'s possible to optionally specify a ID if you want a custom one. Attempting to create an Avatar with an already claimed ID will result in a DB error. * @summary Create Avatar - * @param {InlineObject10} [inlineObject10] + * @param {CreateAvatarRequest} [createAvatarRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async createAvatar(inlineObject10?: InlineObject10, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.createAvatar(inlineObject10, options); + async createAvatar(createAvatarRequest?: CreateAvatarRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.createAvatar(createAvatarRequest, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** @@ -4380,16 +4382,27 @@ export const AvatarsApiFp = function(configuration?: Configuration) { const localVarAxiosArgs = await localVarAxiosParamCreator.selectAvatar(avatarId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, + /** + * Switches into that avatar as your fallback avatar. + * @summary Select Fallback Avatar + * @param {string} avatarId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async selectFallbackAvatar(avatarId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.selectFallbackAvatar(avatarId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** * Update information about a specific avatar. * @summary Update Avatar * @param {string} avatarId - * @param {InlineObject11} [inlineObject11] + * @param {UpdateAvatarRequest} [updateAvatarRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async updateAvatar(avatarId: string, inlineObject11?: InlineObject11, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.updateAvatar(avatarId, inlineObject11, options); + async updateAvatar(avatarId: string, updateAvatarRequest?: UpdateAvatarRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.updateAvatar(avatarId, updateAvatarRequest, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, } @@ -4405,12 +4418,12 @@ export const AvatarsApiFactory = function (configuration?: Configuration, basePa /** * Create an avatar. It\'s possible to optionally specify a ID if you want a custom one. Attempting to create an Avatar with an already claimed ID will result in a DB error. * @summary Create Avatar - * @param {InlineObject10} [inlineObject10] + * @param {CreateAvatarRequest} [createAvatarRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - createAvatar(inlineObject10?: InlineObject10, options?: any): AxiosPromise { - return localVarFp.createAvatar(inlineObject10, options).then((request) => request(axios, basePath)); + createAvatar(createAvatarRequest?: CreateAvatarRequest, options?: any): AxiosPromise { + return localVarFp.createAvatar(createAvatarRequest, options).then((request) => request(axios, basePath)); }, /** * Delete an avatar. Notice an avatar is never fully \"deleted\", only its ReleaseStatus is set to \"hidden\" and the linked Files are deleted. The AvatarID is permanently reserved. @@ -4486,16 +4499,26 @@ export const AvatarsApiFactory = function (configuration?: Configuration, basePa selectAvatar(avatarId: string, options?: any): AxiosPromise { return localVarFp.selectAvatar(avatarId, options).then((request) => request(axios, basePath)); }, + /** + * Switches into that avatar as your fallback avatar. + * @summary Select Fallback Avatar + * @param {string} avatarId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + selectFallbackAvatar(avatarId: string, options?: any): AxiosPromise { + return localVarFp.selectFallbackAvatar(avatarId, options).then((request) => request(axios, basePath)); + }, /** * Update information about a specific avatar. * @summary Update Avatar * @param {string} avatarId - * @param {InlineObject11} [inlineObject11] + * @param {UpdateAvatarRequest} [updateAvatarRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - updateAvatar(avatarId: string, inlineObject11?: InlineObject11, options?: any): AxiosPromise { - return localVarFp.updateAvatar(avatarId, inlineObject11, options).then((request) => request(axios, basePath)); + updateAvatar(avatarId: string, updateAvatarRequest?: UpdateAvatarRequest, options?: any): AxiosPromise { + return localVarFp.updateAvatar(avatarId, updateAvatarRequest, options).then((request) => request(axios, basePath)); }, }; }; @@ -4510,13 +4533,13 @@ export class AvatarsApi extends BaseAPI { /** * Create an avatar. It\'s possible to optionally specify a ID if you want a custom one. Attempting to create an Avatar with an already claimed ID will result in a DB error. * @summary Create Avatar - * @param {InlineObject10} [inlineObject10] + * @param {CreateAvatarRequest} [createAvatarRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof AvatarsApi */ - public createAvatar(inlineObject10?: InlineObject10, options?: AxiosRequestConfig) { - return AvatarsApiFp(this.configuration).createAvatar(inlineObject10, options).then((request) => request(this.axios, this.basePath)); + public createAvatar(createAvatarRequest?: CreateAvatarRequest, options?: AxiosRequestConfig) { + return AvatarsApiFp(this.configuration).createAvatar(createAvatarRequest, options).then((request) => request(this.axios, this.basePath)); } /** @@ -4603,17 +4626,29 @@ export class AvatarsApi extends BaseAPI { return AvatarsApiFp(this.configuration).selectAvatar(avatarId, options).then((request) => request(this.axios, this.basePath)); } + /** + * Switches into that avatar as your fallback avatar. + * @summary Select Fallback Avatar + * @param {string} avatarId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AvatarsApi + */ + public selectFallbackAvatar(avatarId: string, options?: AxiosRequestConfig) { + return AvatarsApiFp(this.configuration).selectFallbackAvatar(avatarId, options).then((request) => request(this.axios, this.basePath)); + } + /** * Update information about a specific avatar. * @summary Update Avatar * @param {string} avatarId - * @param {InlineObject11} [inlineObject11] + * @param {UpdateAvatarRequest} [updateAvatarRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof AvatarsApi */ - public updateAvatar(avatarId: string, inlineObject11?: InlineObject11, options?: AxiosRequestConfig) { - return AvatarsApiFp(this.configuration).updateAvatar(avatarId, inlineObject11, options).then((request) => request(this.axios, this.basePath)); + public updateAvatar(avatarId: string, updateAvatarRequest?: UpdateAvatarRequest, options?: AxiosRequestConfig) { + return AvatarsApiFp(this.configuration).updateAvatar(avatarId, updateAvatarRequest, options).then((request) => request(this.axios, this.basePath)); } } @@ -4625,13 +4660,13 @@ export class AvatarsApi extends BaseAPI { export const FavoritesApiAxiosParamCreator = function (configuration?: Configuration) { return { /** - * Add a new favorite. Friend groups are named `group_0` through `group_3`. Avatar and World groups are named `avatars1` to `avatar4` and `worlds1` to `worlds4`. You cannot add people whom you are not friends with to your friends list. Destroying a friendship removes the person as favorite on both sides. + * Add a new favorite. Friend groups are named `group_0` through `group_3`. Avatar and World groups are named `avatars1` to `avatars4` and `worlds1` to `worlds4`. You cannot add people whom you are not friends with to your friends list. Destroying a friendship removes the person as favorite on both sides. * @summary Add Favorite - * @param {InlineObject8} [inlineObject8] + * @param {AddFavoriteRequest} [addFavoriteRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - addFavorite: async (inlineObject8?: InlineObject8, options: AxiosRequestConfig = {}): Promise => { + addFavorite: async (addFavoriteRequest?: AddFavoriteRequest, options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/favorites`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -4655,7 +4690,7 @@ export const FavoritesApiAxiosParamCreator = function (configuration?: Configura setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - localVarRequestOptions.data = serializeDataIfNeeded(inlineObject8, localVarRequestOptions, configuration) + localVarRequestOptions.data = serializeDataIfNeeded(addFavoriteRequest, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), @@ -4939,11 +4974,11 @@ export const FavoritesApiAxiosParamCreator = function (configuration?: Configura * @param {'world' | 'friend' | 'avatar'} favoriteGroupType The type of group to fetch, must be a valid FavoriteType. * @param {string} favoriteGroupName * @param {string} userId - * @param {InlineObject9} [inlineObject9] + * @param {UpdateFavoriteGroupRequest} [updateFavoriteGroupRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - updateFavoriteGroup: async (favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, inlineObject9?: InlineObject9, options: AxiosRequestConfig = {}): Promise => { + updateFavoriteGroup: async (favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, updateFavoriteGroupRequest?: UpdateFavoriteGroupRequest, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'favoriteGroupType' is not null or undefined assertParamExists('updateFavoriteGroup', 'favoriteGroupType', favoriteGroupType) // verify required parameter 'favoriteGroupName' is not null or undefined @@ -4976,7 +5011,7 @@ export const FavoritesApiAxiosParamCreator = function (configuration?: Configura setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - localVarRequestOptions.data = serializeDataIfNeeded(inlineObject9, localVarRequestOptions, configuration) + localVarRequestOptions.data = serializeDataIfNeeded(updateFavoriteGroupRequest, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), @@ -4994,14 +5029,14 @@ export const FavoritesApiFp = function(configuration?: Configuration) { const localVarAxiosParamCreator = FavoritesApiAxiosParamCreator(configuration) return { /** - * Add a new favorite. Friend groups are named `group_0` through `group_3`. Avatar and World groups are named `avatars1` to `avatar4` and `worlds1` to `worlds4`. You cannot add people whom you are not friends with to your friends list. Destroying a friendship removes the person as favorite on both sides. + * Add a new favorite. Friend groups are named `group_0` through `group_3`. Avatar and World groups are named `avatars1` to `avatars4` and `worlds1` to `worlds4`. You cannot add people whom you are not friends with to your friends list. Destroying a friendship removes the person as favorite on both sides. * @summary Add Favorite - * @param {InlineObject8} [inlineObject8] + * @param {AddFavoriteRequest} [addFavoriteRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async addFavorite(inlineObject8?: InlineObject8, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.addFavorite(inlineObject8, options); + async addFavorite(addFavoriteRequest?: AddFavoriteRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.addFavorite(addFavoriteRequest, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** @@ -5085,12 +5120,12 @@ export const FavoritesApiFp = function(configuration?: Configuration) { * @param {'world' | 'friend' | 'avatar'} favoriteGroupType The type of group to fetch, must be a valid FavoriteType. * @param {string} favoriteGroupName * @param {string} userId - * @param {InlineObject9} [inlineObject9] + * @param {UpdateFavoriteGroupRequest} [updateFavoriteGroupRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async updateFavoriteGroup(favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, inlineObject9?: InlineObject9, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.updateFavoriteGroup(favoriteGroupType, favoriteGroupName, userId, inlineObject9, options); + async updateFavoriteGroup(favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, updateFavoriteGroupRequest?: UpdateFavoriteGroupRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.updateFavoriteGroup(favoriteGroupType, favoriteGroupName, userId, updateFavoriteGroupRequest, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, } @@ -5104,14 +5139,14 @@ export const FavoritesApiFactory = function (configuration?: Configuration, base const localVarFp = FavoritesApiFp(configuration) return { /** - * Add a new favorite. Friend groups are named `group_0` through `group_3`. Avatar and World groups are named `avatars1` to `avatar4` and `worlds1` to `worlds4`. You cannot add people whom you are not friends with to your friends list. Destroying a friendship removes the person as favorite on both sides. + * Add a new favorite. Friend groups are named `group_0` through `group_3`. Avatar and World groups are named `avatars1` to `avatars4` and `worlds1` to `worlds4`. You cannot add people whom you are not friends with to your friends list. Destroying a friendship removes the person as favorite on both sides. * @summary Add Favorite - * @param {InlineObject8} [inlineObject8] + * @param {AddFavoriteRequest} [addFavoriteRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - addFavorite(inlineObject8?: InlineObject8, options?: any): AxiosPromise { - return localVarFp.addFavorite(inlineObject8, options).then((request) => request(axios, basePath)); + addFavorite(addFavoriteRequest?: AddFavoriteRequest, options?: any): AxiosPromise { + return localVarFp.addFavorite(addFavoriteRequest, options).then((request) => request(axios, basePath)); }, /** * Clear ALL contents of a specific favorite group. @@ -5188,12 +5223,12 @@ export const FavoritesApiFactory = function (configuration?: Configuration, base * @param {'world' | 'friend' | 'avatar'} favoriteGroupType The type of group to fetch, must be a valid FavoriteType. * @param {string} favoriteGroupName * @param {string} userId - * @param {InlineObject9} [inlineObject9] + * @param {UpdateFavoriteGroupRequest} [updateFavoriteGroupRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - updateFavoriteGroup(favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, inlineObject9?: InlineObject9, options?: any): AxiosPromise { - return localVarFp.updateFavoriteGroup(favoriteGroupType, favoriteGroupName, userId, inlineObject9, options).then((request) => request(axios, basePath)); + updateFavoriteGroup(favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, updateFavoriteGroupRequest?: UpdateFavoriteGroupRequest, options?: any): AxiosPromise { + return localVarFp.updateFavoriteGroup(favoriteGroupType, favoriteGroupName, userId, updateFavoriteGroupRequest, options).then((request) => request(axios, basePath)); }, }; }; @@ -5206,15 +5241,15 @@ export const FavoritesApiFactory = function (configuration?: Configuration, base */ export class FavoritesApi extends BaseAPI { /** - * Add a new favorite. Friend groups are named `group_0` through `group_3`. Avatar and World groups are named `avatars1` to `avatar4` and `worlds1` to `worlds4`. You cannot add people whom you are not friends with to your friends list. Destroying a friendship removes the person as favorite on both sides. + * Add a new favorite. Friend groups are named `group_0` through `group_3`. Avatar and World groups are named `avatars1` to `avatars4` and `worlds1` to `worlds4`. You cannot add people whom you are not friends with to your friends list. Destroying a friendship removes the person as favorite on both sides. * @summary Add Favorite - * @param {InlineObject8} [inlineObject8] + * @param {AddFavoriteRequest} [addFavoriteRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof FavoritesApi */ - public addFavorite(inlineObject8?: InlineObject8, options?: AxiosRequestConfig) { - return FavoritesApiFp(this.configuration).addFavorite(inlineObject8, options).then((request) => request(this.axios, this.basePath)); + public addFavorite(addFavoriteRequest?: AddFavoriteRequest, options?: AxiosRequestConfig) { + return FavoritesApiFp(this.configuration).addFavorite(addFavoriteRequest, options).then((request) => request(this.axios, this.basePath)); } /** @@ -5304,13 +5339,13 @@ export class FavoritesApi extends BaseAPI { * @param {'world' | 'friend' | 'avatar'} favoriteGroupType The type of group to fetch, must be a valid FavoriteType. * @param {string} favoriteGroupName * @param {string} userId - * @param {InlineObject9} [inlineObject9] + * @param {UpdateFavoriteGroupRequest} [updateFavoriteGroupRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof FavoritesApi */ - public updateFavoriteGroup(favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, inlineObject9?: InlineObject9, options?: AxiosRequestConfig) { - return FavoritesApiFp(this.configuration).updateFavoriteGroup(favoriteGroupType, favoriteGroupName, userId, inlineObject9, options).then((request) => request(this.axios, this.basePath)); + public updateFavoriteGroup(favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, updateFavoriteGroupRequest?: UpdateFavoriteGroupRequest, options?: AxiosRequestConfig) { + return FavoritesApiFp(this.configuration).updateFavoriteGroup(favoriteGroupType, favoriteGroupName, userId, updateFavoriteGroupRequest, options).then((request) => request(this.axios, this.basePath)); } } @@ -5324,11 +5359,11 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration /** * Creates a new File object * @summary Create File - * @param {InlineObject3} [inlineObject3] + * @param {CreateFileRequest} [createFileRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - createFile: async (inlineObject3?: InlineObject3, options: AxiosRequestConfig = {}): Promise => { + createFile: async (createFileRequest?: CreateFileRequest, options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/file`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -5352,7 +5387,7 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - localVarRequestOptions.data = serializeDataIfNeeded(inlineObject3, localVarRequestOptions, configuration) + localVarRequestOptions.data = serializeDataIfNeeded(createFileRequest, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), @@ -5363,11 +5398,11 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration * Creates a new FileVersion. Once a Version has been created, proceed to the `/file/{fileId}/{versionId}/file/start` endpoint to start a file upload. * @summary Create File Version * @param {string} fileId - * @param {InlineObject4} [inlineObject4] + * @param {CreateFileVersionRequest} [createFileVersionRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - createFileVersion: async (fileId: string, inlineObject4?: InlineObject4, options: AxiosRequestConfig = {}): Promise => { + createFileVersion: async (fileId: string, createFileVersionRequest?: CreateFileVersionRequest, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'fileId' is not null or undefined assertParamExists('createFileVersion', 'fileId', fileId) const localVarPath = `/file/{fileId}` @@ -5394,7 +5429,7 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - localVarRequestOptions.data = serializeDataIfNeeded(inlineObject4, localVarRequestOptions, configuration) + localVarRequestOptions.data = serializeDataIfNeeded(createFileVersionRequest, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), @@ -5529,11 +5564,11 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration * @param {string} fileId * @param {number} versionId * @param {'file' | 'signature' | 'delta'} fileType - * @param {InlineObject5} [inlineObject5] + * @param {FinishFileDataUploadRequest} [finishFileDataUploadRequest] Please see documentation on ETag\'s: [https://teppen.io/2018/06/23/aws_s3_etags/](https://teppen.io/2018/06/23/aws_s3_etags/) ETag\'s should NOT be present when uploading a `signature`. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - finishFileDataUpload: async (fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', inlineObject5?: InlineObject5, options: AxiosRequestConfig = {}): Promise => { + finishFileDataUpload: async (fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', finishFileDataUploadRequest?: FinishFileDataUploadRequest, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'fileId' is not null or undefined assertParamExists('finishFileDataUpload', 'fileId', fileId) // verify required parameter 'versionId' is not null or undefined @@ -5566,7 +5601,7 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - localVarRequestOptions.data = serializeDataIfNeeded(inlineObject5, localVarRequestOptions, configuration) + localVarRequestOptions.data = serializeDataIfNeeded(finishFileDataUploadRequest, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), @@ -5777,24 +5812,24 @@ export const FilesApiFp = function(configuration?: Configuration) { /** * Creates a new File object * @summary Create File - * @param {InlineObject3} [inlineObject3] + * @param {CreateFileRequest} [createFileRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async createFile(inlineObject3?: InlineObject3, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.createFile(inlineObject3, options); + async createFile(createFileRequest?: CreateFileRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.createFile(createFileRequest, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * Creates a new FileVersion. Once a Version has been created, proceed to the `/file/{fileId}/{versionId}/file/start` endpoint to start a file upload. * @summary Create File Version * @param {string} fileId - * @param {InlineObject4} [inlineObject4] + * @param {CreateFileVersionRequest} [createFileVersionRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async createFileVersion(fileId: string, inlineObject4?: InlineObject4, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.createFileVersion(fileId, inlineObject4, options); + async createFileVersion(fileId: string, createFileVersionRequest?: CreateFileVersionRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.createFileVersion(fileId, createFileVersionRequest, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** @@ -5838,12 +5873,12 @@ export const FilesApiFp = function(configuration?: Configuration) { * @param {string} fileId * @param {number} versionId * @param {'file' | 'signature' | 'delta'} fileType - * @param {InlineObject5} [inlineObject5] + * @param {FinishFileDataUploadRequest} [finishFileDataUploadRequest] Please see documentation on ETag\'s: [https://teppen.io/2018/06/23/aws_s3_etags/](https://teppen.io/2018/06/23/aws_s3_etags/) ETag\'s should NOT be present when uploading a `signature`. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async finishFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', inlineObject5?: InlineObject5, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.finishFileDataUpload(fileId, versionId, fileType, inlineObject5, options); + async finishFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', finishFileDataUploadRequest?: FinishFileDataUploadRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.finishFileDataUpload(fileId, versionId, fileType, finishFileDataUploadRequest, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** @@ -5866,7 +5901,7 @@ export const FilesApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getFileDataUploadStatus(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async getFileDataUploadStatus(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getFileDataUploadStatus(fileId, versionId, fileType, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -5894,7 +5929,7 @@ export const FilesApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async startFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', partNumber: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async startFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', partNumber: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.startFileDataUpload(fileId, versionId, fileType, partNumber, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -5911,23 +5946,23 @@ export const FilesApiFactory = function (configuration?: Configuration, basePath /** * Creates a new File object * @summary Create File - * @param {InlineObject3} [inlineObject3] + * @param {CreateFileRequest} [createFileRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - createFile(inlineObject3?: InlineObject3, options?: any): AxiosPromise { - return localVarFp.createFile(inlineObject3, options).then((request) => request(axios, basePath)); + createFile(createFileRequest?: CreateFileRequest, options?: any): AxiosPromise { + return localVarFp.createFile(createFileRequest, options).then((request) => request(axios, basePath)); }, /** * Creates a new FileVersion. Once a Version has been created, proceed to the `/file/{fileId}/{versionId}/file/start` endpoint to start a file upload. * @summary Create File Version * @param {string} fileId - * @param {InlineObject4} [inlineObject4] + * @param {CreateFileVersionRequest} [createFileVersionRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - createFileVersion(fileId: string, inlineObject4?: InlineObject4, options?: any): AxiosPromise { - return localVarFp.createFileVersion(fileId, inlineObject4, options).then((request) => request(axios, basePath)); + createFileVersion(fileId: string, createFileVersionRequest?: CreateFileVersionRequest, options?: any): AxiosPromise { + return localVarFp.createFileVersion(fileId, createFileVersionRequest, options).then((request) => request(axios, basePath)); }, /** * Deletes a File object. @@ -5967,12 +6002,12 @@ export const FilesApiFactory = function (configuration?: Configuration, basePath * @param {string} fileId * @param {number} versionId * @param {'file' | 'signature' | 'delta'} fileType - * @param {InlineObject5} [inlineObject5] + * @param {FinishFileDataUploadRequest} [finishFileDataUploadRequest] Please see documentation on ETag\'s: [https://teppen.io/2018/06/23/aws_s3_etags/](https://teppen.io/2018/06/23/aws_s3_etags/) ETag\'s should NOT be present when uploading a `signature`. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - finishFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', inlineObject5?: InlineObject5, options?: any): AxiosPromise { - return localVarFp.finishFileDataUpload(fileId, versionId, fileType, inlineObject5, options).then((request) => request(axios, basePath)); + finishFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', finishFileDataUploadRequest?: FinishFileDataUploadRequest, options?: any): AxiosPromise { + return localVarFp.finishFileDataUpload(fileId, versionId, fileType, finishFileDataUploadRequest, options).then((request) => request(axios, basePath)); }, /** * Shows general information about the \"File\" object. Each File can have several \"Version\"\'s, and each Version can have multiple real files or \"Data\" blobs. @@ -5993,7 +6028,7 @@ export const FilesApiFactory = function (configuration?: Configuration, basePath * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFileDataUploadStatus(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', options?: any): AxiosPromise { + getFileDataUploadStatus(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', options?: any): AxiosPromise { return localVarFp.getFileDataUploadStatus(fileId, versionId, fileType, options).then((request) => request(axios, basePath)); }, /** @@ -6019,7 +6054,7 @@ export const FilesApiFactory = function (configuration?: Configuration, basePath * @param {*} [options] Override http request option. * @throws {RequiredError} */ - startFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', partNumber: number, options?: any): AxiosPromise { + startFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', partNumber: number, options?: any): AxiosPromise { return localVarFp.startFileDataUpload(fileId, versionId, fileType, partNumber, options).then((request) => request(axios, basePath)); }, }; @@ -6035,26 +6070,26 @@ export class FilesApi extends BaseAPI { /** * Creates a new File object * @summary Create File - * @param {InlineObject3} [inlineObject3] + * @param {CreateFileRequest} [createFileRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof FilesApi */ - public createFile(inlineObject3?: InlineObject3, options?: AxiosRequestConfig) { - return FilesApiFp(this.configuration).createFile(inlineObject3, options).then((request) => request(this.axios, this.basePath)); + public createFile(createFileRequest?: CreateFileRequest, options?: AxiosRequestConfig) { + return FilesApiFp(this.configuration).createFile(createFileRequest, options).then((request) => request(this.axios, this.basePath)); } /** * Creates a new FileVersion. Once a Version has been created, proceed to the `/file/{fileId}/{versionId}/file/start` endpoint to start a file upload. * @summary Create File Version * @param {string} fileId - * @param {InlineObject4} [inlineObject4] + * @param {CreateFileVersionRequest} [createFileVersionRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof FilesApi */ - public createFileVersion(fileId: string, inlineObject4?: InlineObject4, options?: AxiosRequestConfig) { - return FilesApiFp(this.configuration).createFileVersion(fileId, inlineObject4, options).then((request) => request(this.axios, this.basePath)); + public createFileVersion(fileId: string, createFileVersionRequest?: CreateFileVersionRequest, options?: AxiosRequestConfig) { + return FilesApiFp(this.configuration).createFileVersion(fileId, createFileVersionRequest, options).then((request) => request(this.axios, this.basePath)); } /** @@ -6101,13 +6136,13 @@ export class FilesApi extends BaseAPI { * @param {string} fileId * @param {number} versionId * @param {'file' | 'signature' | 'delta'} fileType - * @param {InlineObject5} [inlineObject5] + * @param {FinishFileDataUploadRequest} [finishFileDataUploadRequest] Please see documentation on ETag\'s: [https://teppen.io/2018/06/23/aws_s3_etags/](https://teppen.io/2018/06/23/aws_s3_etags/) ETag\'s should NOT be present when uploading a `signature`. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof FilesApi */ - public finishFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', inlineObject5?: InlineObject5, options?: AxiosRequestConfig) { - return FilesApiFp(this.configuration).finishFileDataUpload(fileId, versionId, fileType, inlineObject5, options).then((request) => request(this.axios, this.basePath)); + public finishFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', finishFileDataUploadRequest?: FinishFileDataUploadRequest, options?: AxiosRequestConfig) { + return FilesApiFp(this.configuration).finishFileDataUpload(fileId, versionId, fileType, finishFileDataUploadRequest, options).then((request) => request(this.axios, this.basePath)); } /** @@ -6676,7 +6711,7 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio * Sends an invite to a user. Returns the Notification of type `invite` that was sent. * @summary Invite User * @param {string} userId - * @param {InviteRequest} [inviteRequest] Instance ID when inviting a user. + * @param {InviteRequest} [inviteRequest] Slot number of the Invite Message to use when inviting a user. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -6799,7 +6834,7 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio }; }, /** - * Sends a world invite to a user. + * Respond to an invite request by sending a world invite to the requesting user. `:notificationId` is the ID of the requesting notification. * @summary Respond Invite * @param {string} notificationId * @param {InviteResponse} [inviteResponse] Instance ID when inviting a user. @@ -6925,7 +6960,7 @@ export const InviteApiFp = function(configuration?: Configuration) { * Sends an invite to a user. Returns the Notification of type `invite` that was sent. * @summary Invite User * @param {string} userId - * @param {InviteRequest} [inviteRequest] Instance ID when inviting a user. + * @param {InviteRequest} [inviteRequest] Slot number of the Invite Message to use when inviting a user. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -6958,7 +6993,7 @@ export const InviteApiFp = function(configuration?: Configuration) { return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Sends a world invite to a user. + * Respond to an invite request by sending a world invite to the requesting user. `:notificationId` is the ID of the requesting notification. * @summary Respond Invite * @param {string} notificationId * @param {InviteResponse} [inviteResponse] Instance ID when inviting a user. @@ -7019,7 +7054,7 @@ export const InviteApiFactory = function (configuration?: Configuration, basePat * Sends an invite to a user. Returns the Notification of type `invite` that was sent. * @summary Invite User * @param {string} userId - * @param {InviteRequest} [inviteRequest] Instance ID when inviting a user. + * @param {InviteRequest} [inviteRequest] Slot number of the Invite Message to use when inviting a user. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -7049,7 +7084,7 @@ export const InviteApiFactory = function (configuration?: Configuration, basePat return localVarFp.resetInviteMessage(userId, messageType, messageId, options).then((request) => request(axios, basePath)); }, /** - * Sends a world invite to a user. + * Respond to an invite request by sending a world invite to the requesting user. `:notificationId` is the ID of the requesting notification. * @summary Respond Invite * @param {string} notificationId * @param {InviteResponse} [inviteResponse] Instance ID when inviting a user. @@ -7112,7 +7147,7 @@ export class InviteApi extends BaseAPI { * Sends an invite to a user. Returns the Notification of type `invite` that was sent. * @summary Invite User * @param {string} userId - * @param {InviteRequest} [inviteRequest] Instance ID when inviting a user. + * @param {InviteRequest} [inviteRequest] Slot number of the Invite Message to use when inviting a user. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof InviteApi @@ -7148,7 +7183,7 @@ export class InviteApi extends BaseAPI { } /** - * Sends a world invite to a user. + * Respond to an invite request by sending a world invite to the requesting user. `:notificationId` is the ID of the requesting notification. * @summary Respond Invite * @param {string} notificationId * @param {InviteResponse} [inviteResponse] Instance ID when inviting a user. @@ -7358,7 +7393,7 @@ export const NotificationsApiAxiosParamCreator = function (configuration?: Confi }, /** * Mark a notification as seen. - * @summary Mark As Read + * @summary Mark Notification As Read * @param {string} notificationId * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -7454,7 +7489,7 @@ export const NotificationsApiFp = function(configuration?: Configuration) { }, /** * Mark a notification as seen. - * @summary Mark As Read + * @summary Mark Notification As Read * @param {string} notificationId * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -7519,7 +7554,7 @@ export const NotificationsApiFactory = function (configuration?: Configuration, }, /** * Mark a notification as seen. - * @summary Mark As Read + * @summary Mark Notification As Read * @param {string} notificationId * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -7591,7 +7626,7 @@ export class NotificationsApi extends BaseAPI { /** * Mark a notification as seen. - * @summary Mark As Read + * @summary Mark Notification As Read * @param {string} notificationId * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -7611,7 +7646,7 @@ export const PermissionsApiAxiosParamCreator = function (configuration?: Configu return { /** * Returns a list of all permissions currently granted by the user. Permissions are assigned e.g. by subscribing to VRC+. - * @summary Get Assigned Permission + * @summary Get Assigned Permissions * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -7693,7 +7728,7 @@ export const PermissionsApiFp = function(configuration?: Configuration) { return { /** * Returns a list of all permissions currently granted by the user. Permissions are assigned e.g. by subscribing to VRC+. - * @summary Get Assigned Permission + * @summary Get Assigned Permissions * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -7724,7 +7759,7 @@ export const PermissionsApiFactory = function (configuration?: Configuration, ba return { /** * Returns a list of all permissions currently granted by the user. Permissions are assigned e.g. by subscribing to VRC+. - * @summary Get Assigned Permission + * @summary Get Assigned Permissions * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -7753,7 +7788,7 @@ export const PermissionsApiFactory = function (configuration?: Configuration, ba export class PermissionsApi extends BaseAPI { /** * Returns a list of all permissions currently granted by the user. Permissions are assigned e.g. by subscribing to VRC+. - * @summary Get Assigned Permission + * @summary Get Assigned Permissions * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof PermissionsApi @@ -7939,11 +7974,11 @@ export const PlayermoderationApiAxiosParamCreator = function (configuration?: Co /** * Moderate a user, e.g. unmute them or show their avatar. * @summary Moderate User - * @param {InlineObject12} [inlineObject12] + * @param {ModerateUserRequest} [moderateUserRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - moderateUser: async (inlineObject12?: InlineObject12, options: AxiosRequestConfig = {}): Promise => { + moderateUser: async (moderateUserRequest?: ModerateUserRequest, options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/auth/user/playermoderations`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -7967,7 +8002,7 @@ export const PlayermoderationApiAxiosParamCreator = function (configuration?: Co setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - localVarRequestOptions.data = serializeDataIfNeeded(inlineObject12, localVarRequestOptions, configuration) + localVarRequestOptions.data = serializeDataIfNeeded(moderateUserRequest, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), @@ -7975,13 +8010,13 @@ export const PlayermoderationApiAxiosParamCreator = function (configuration?: Co }; }, /** - * Removes a player moderation previously added through `moderateUser`. E.g if you previuosly have shown their avatar, but now want to reset it to default. + * Removes a player moderation previously added through `moderateUser`. E.g if you previously have shown their avatar, but now want to reset it to default. * @summary Unmoderate User - * @param {InlineObject13} [inlineObject13] + * @param {ModerateUserRequest} [moderateUserRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - unmoderateUser: async (inlineObject13?: InlineObject13, options: AxiosRequestConfig = {}): Promise => { + unmoderateUser: async (moderateUserRequest?: ModerateUserRequest, options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/auth/user/unplayermoderate`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -8005,7 +8040,7 @@ export const PlayermoderationApiAxiosParamCreator = function (configuration?: Co setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - localVarRequestOptions.data = serializeDataIfNeeded(inlineObject13, localVarRequestOptions, configuration) + localVarRequestOptions.data = serializeDataIfNeeded(moderateUserRequest, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), @@ -8069,23 +8104,23 @@ export const PlayermoderationApiFp = function(configuration?: Configuration) { /** * Moderate a user, e.g. unmute them or show their avatar. * @summary Moderate User - * @param {InlineObject12} [inlineObject12] + * @param {ModerateUserRequest} [moderateUserRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async moderateUser(inlineObject12?: InlineObject12, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.moderateUser(inlineObject12, options); + async moderateUser(moderateUserRequest?: ModerateUserRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.moderateUser(moderateUserRequest, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Removes a player moderation previously added through `moderateUser`. E.g if you previuosly have shown their avatar, but now want to reset it to default. + * Removes a player moderation previously added through `moderateUser`. E.g if you previously have shown their avatar, but now want to reset it to default. * @summary Unmoderate User - * @param {InlineObject13} [inlineObject13] + * @param {ModerateUserRequest} [moderateUserRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async unmoderateUser(inlineObject13?: InlineObject13, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.unmoderateUser(inlineObject13, options); + async unmoderateUser(moderateUserRequest?: ModerateUserRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.unmoderateUser(moderateUserRequest, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, } @@ -8141,22 +8176,22 @@ export const PlayermoderationApiFactory = function (configuration?: Configuratio /** * Moderate a user, e.g. unmute them or show their avatar. * @summary Moderate User - * @param {InlineObject12} [inlineObject12] + * @param {ModerateUserRequest} [moderateUserRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - moderateUser(inlineObject12?: InlineObject12, options?: any): AxiosPromise { - return localVarFp.moderateUser(inlineObject12, options).then((request) => request(axios, basePath)); + moderateUser(moderateUserRequest?: ModerateUserRequest, options?: any): AxiosPromise { + return localVarFp.moderateUser(moderateUserRequest, options).then((request) => request(axios, basePath)); }, /** - * Removes a player moderation previously added through `moderateUser`. E.g if you previuosly have shown their avatar, but now want to reset it to default. + * Removes a player moderation previously added through `moderateUser`. E.g if you previously have shown their avatar, but now want to reset it to default. * @summary Unmoderate User - * @param {InlineObject13} [inlineObject13] + * @param {ModerateUserRequest} [moderateUserRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - unmoderateUser(inlineObject13?: InlineObject13, options?: any): AxiosPromise { - return localVarFp.unmoderateUser(inlineObject13, options).then((request) => request(axios, basePath)); + unmoderateUser(moderateUserRequest?: ModerateUserRequest, options?: any): AxiosPromise { + return localVarFp.unmoderateUser(moderateUserRequest, options).then((request) => request(axios, basePath)); }, }; }; @@ -8219,25 +8254,25 @@ export class PlayermoderationApi extends BaseAPI { /** * Moderate a user, e.g. unmute them or show their avatar. * @summary Moderate User - * @param {InlineObject12} [inlineObject12] + * @param {ModerateUserRequest} [moderateUserRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof PlayermoderationApi */ - public moderateUser(inlineObject12?: InlineObject12, options?: AxiosRequestConfig) { - return PlayermoderationApiFp(this.configuration).moderateUser(inlineObject12, options).then((request) => request(this.axios, this.basePath)); + public moderateUser(moderateUserRequest?: ModerateUserRequest, options?: AxiosRequestConfig) { + return PlayermoderationApiFp(this.configuration).moderateUser(moderateUserRequest, options).then((request) => request(this.axios, this.basePath)); } /** - * Removes a player moderation previously added through `moderateUser`. E.g if you previuosly have shown their avatar, but now want to reset it to default. + * Removes a player moderation previously added through `moderateUser`. E.g if you previously have shown their avatar, but now want to reset it to default. * @summary Unmoderate User - * @param {InlineObject13} [inlineObject13] + * @param {ModerateUserRequest} [moderateUserRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof PlayermoderationApi */ - public unmoderateUser(inlineObject13?: InlineObject13, options?: AxiosRequestConfig) { - return PlayermoderationApiFp(this.configuration).unmoderateUser(inlineObject13, options).then((request) => request(this.axios, this.basePath)); + public unmoderateUser(moderateUserRequest?: ModerateUserRequest, options?: AxiosRequestConfig) { + return PlayermoderationApiFp(this.configuration).unmoderateUser(moderateUserRequest, options).then((request) => request(this.axios, this.basePath)); } } @@ -8250,7 +8285,7 @@ export const SystemApiAxiosParamCreator = function (configuration?: Configuratio return { /** * Fetches the CSS code to the frontend React website. - * @summary Download Frontend CSS + * @summary Download CSS * @param {'public' | 'internal'} [variant] Specifies which `variant` of the site. Public is the end-user site, while `internal` is the staff-only site with special pages for moderation and management. * @param {string} [branch] Specifies which git branch the site should load frontend source code from. * @param {*} [options] Override http request option. @@ -8381,7 +8416,7 @@ export const SystemApiAxiosParamCreator = function (configuration?: Configuratio }, /** * Fetches the JavaScript code to the frontend React website. - * @summary Download Frontend JavaScript + * @summary Download JavaScript * @param {'public' | 'internal'} [variant] Specifies which `variant` of the site. Public is the end-user site, while `internal` is the staff-only site with special pages for moderation and management. * @param {string} [branch] Specifies which git branch the site should load frontend source code from. * @param {*} [options] Override http request option. @@ -8461,7 +8496,7 @@ export const SystemApiFp = function(configuration?: Configuration) { return { /** * Fetches the CSS code to the frontend React website. - * @summary Download Frontend CSS + * @summary Download CSS * @param {'public' | 'internal'} [variant] Specifies which `variant` of the site. Public is the end-user site, while `internal` is the staff-only site with special pages for moderation and management. * @param {string} [branch] Specifies which git branch the site should load frontend source code from. * @param {*} [options] Override http request option. @@ -8498,13 +8533,13 @@ export const SystemApiFp = function(configuration?: Configuration) { * @deprecated * @throws {RequiredError} */ - async getHealth(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async getHealth(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getHealth(options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * Fetches the JavaScript code to the frontend React website. - * @summary Download Frontend JavaScript + * @summary Download JavaScript * @param {'public' | 'internal'} [variant] Specifies which `variant` of the site. Public is the end-user site, while `internal` is the staff-only site with special pages for moderation and management. * @param {string} [branch] Specifies which git branch the site should load frontend source code from. * @param {*} [options] Override http request option. @@ -8536,7 +8571,7 @@ export const SystemApiFactory = function (configuration?: Configuration, basePat return { /** * Fetches the CSS code to the frontend React website. - * @summary Download Frontend CSS + * @summary Download CSS * @param {'public' | 'internal'} [variant] Specifies which `variant` of the site. Public is the end-user site, while `internal` is the staff-only site with special pages for moderation and management. * @param {string} [branch] Specifies which git branch the site should load frontend source code from. * @param {*} [options] Override http request option. @@ -8570,12 +8605,12 @@ export const SystemApiFactory = function (configuration?: Configuration, basePat * @deprecated * @throws {RequiredError} */ - getHealth(options?: any): AxiosPromise { + getHealth(options?: any): AxiosPromise { return localVarFp.getHealth(options).then((request) => request(axios, basePath)); }, /** * Fetches the JavaScript code to the frontend React website. - * @summary Download Frontend JavaScript + * @summary Download JavaScript * @param {'public' | 'internal'} [variant] Specifies which `variant` of the site. Public is the end-user site, while `internal` is the staff-only site with special pages for moderation and management. * @param {string} [branch] Specifies which git branch the site should load frontend source code from. * @param {*} [options] Override http request option. @@ -8605,7 +8640,7 @@ export const SystemApiFactory = function (configuration?: Configuration, basePat export class SystemApi extends BaseAPI { /** * Fetches the CSS code to the frontend React website. - * @summary Download Frontend CSS + * @summary Download CSS * @param {'public' | 'internal'} [variant] Specifies which `variant` of the site. Public is the end-user site, while `internal` is the staff-only site with special pages for moderation and management. * @param {string} [branch] Specifies which git branch the site should load frontend source code from. * @param {*} [options] Override http request option. @@ -8652,7 +8687,7 @@ export class SystemApi extends BaseAPI { /** * Fetches the JavaScript code to the frontend React website. - * @summary Download Frontend JavaScript + * @summary Download JavaScript * @param {'public' | 'internal'} [variant] Specifies which `variant` of the site. Public is the end-user site, while `internal` is the staff-only site with special pages for moderation and management. * @param {string} [branch] Specifies which git branch the site should load frontend source code from. * @param {*} [options] Override http request option. @@ -8816,11 +8851,11 @@ export const UsersApiAxiosParamCreator = function (configuration?: Configuration * Update a users information such as the email and birthday. * @summary Update User Info * @param {string} userId - * @param {InlineObject2} [inlineObject2] + * @param {UpdateUserRequest} [updateUserRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - updateUser: async (userId: string, inlineObject2?: InlineObject2, options: AxiosRequestConfig = {}): Promise => { + updateUser: async (userId: string, updateUserRequest?: UpdateUserRequest, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'userId' is not null or undefined assertParamExists('updateUser', 'userId', userId) const localVarPath = `/users/{userId}` @@ -8847,7 +8882,7 @@ export const UsersApiAxiosParamCreator = function (configuration?: Configuration setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - localVarRequestOptions.data = serializeDataIfNeeded(inlineObject2, localVarRequestOptions, configuration) + localVarRequestOptions.data = serializeDataIfNeeded(updateUserRequest, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), @@ -8904,12 +8939,12 @@ export const UsersApiFp = function(configuration?: Configuration) { * Update a users information such as the email and birthday. * @summary Update User Info * @param {string} userId - * @param {InlineObject2} [inlineObject2] + * @param {UpdateUserRequest} [updateUserRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async updateUser(userId: string, inlineObject2?: InlineObject2, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.updateUser(userId, inlineObject2, options); + async updateUser(userId: string, updateUserRequest?: UpdateUserRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.updateUser(userId, updateUserRequest, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, } @@ -8959,12 +8994,12 @@ export const UsersApiFactory = function (configuration?: Configuration, basePath * Update a users information such as the email and birthday. * @summary Update User Info * @param {string} userId - * @param {InlineObject2} [inlineObject2] + * @param {UpdateUserRequest} [updateUserRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - updateUser(userId: string, inlineObject2?: InlineObject2, options?: any): AxiosPromise { - return localVarFp.updateUser(userId, inlineObject2, options).then((request) => request(axios, basePath)); + updateUser(userId: string, updateUserRequest?: UpdateUserRequest, options?: any): AxiosPromise { + return localVarFp.updateUser(userId, updateUserRequest, options).then((request) => request(axios, basePath)); }, }; }; @@ -9019,13 +9054,13 @@ export class UsersApi extends BaseAPI { * Update a users information such as the email and birthday. * @summary Update User Info * @param {string} userId - * @param {InlineObject2} [inlineObject2] + * @param {UpdateUserRequest} [updateUserRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof UsersApi */ - public updateUser(userId: string, inlineObject2?: InlineObject2, options?: AxiosRequestConfig) { - return UsersApiFp(this.configuration).updateUser(userId, inlineObject2, options).then((request) => request(this.axios, this.basePath)); + public updateUser(userId: string, updateUserRequest?: UpdateUserRequest, options?: AxiosRequestConfig) { + return UsersApiFp(this.configuration).updateUser(userId, updateUserRequest, options).then((request) => request(this.axios, this.basePath)); } } @@ -9039,11 +9074,11 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio /** * Create a new world. This endpoint requires `assetUrl` to be a valid File object with `.vrcw` file extension, and `imageUrl` to be a valid File object with an image file extension. * @summary Create World - * @param {InlineObject6} [inlineObject6] + * @param {CreateWorldRequest} [createWorldRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - createWorld: async (inlineObject6?: InlineObject6, options: AxiosRequestConfig = {}): Promise => { + createWorld: async (createWorldRequest?: CreateWorldRequest, options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/worlds`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -9063,7 +9098,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - localVarRequestOptions.data = serializeDataIfNeeded(inlineObject6, localVarRequestOptions, configuration) + localVarRequestOptions.data = serializeDataIfNeeded(createWorldRequest, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), @@ -9739,11 +9774,11 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio * Update information about a specific World. * @summary Update World * @param {string} worldId - * @param {InlineObject7} [inlineObject7] + * @param {UpdateWorldRequest} [updateWorldRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - updateWorld: async (worldId: string, inlineObject7?: InlineObject7, options: AxiosRequestConfig = {}): Promise => { + updateWorld: async (worldId: string, updateWorldRequest?: UpdateWorldRequest, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'worldId' is not null or undefined assertParamExists('updateWorld', 'worldId', worldId) const localVarPath = `/worlds/{worldId}` @@ -9770,7 +9805,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - localVarRequestOptions.data = serializeDataIfNeeded(inlineObject7, localVarRequestOptions, configuration) + localVarRequestOptions.data = serializeDataIfNeeded(updateWorldRequest, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), @@ -9790,12 +9825,12 @@ export const WorldsApiFp = function(configuration?: Configuration) { /** * Create a new world. This endpoint requires `assetUrl` to be a valid File object with `.vrcw` file extension, and `imageUrl` to be a valid File object with an image file extension. * @summary Create World - * @param {InlineObject6} [inlineObject6] + * @param {CreateWorldRequest} [createWorldRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async createWorld(inlineObject6?: InlineObject6, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.createWorld(inlineObject6, options); + async createWorld(createWorldRequest?: CreateWorldRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.createWorld(createWorldRequest, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** @@ -9908,7 +9943,7 @@ export const WorldsApiFp = function(configuration?: Configuration) { * @deprecated * @throws {RequiredError} */ - async getWorldMetadata(worldId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async getWorldMetadata(worldId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getWorldMetadata(worldId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -9919,7 +9954,7 @@ export const WorldsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getWorldPublishStatus(worldId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async getWorldPublishStatus(worldId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getWorldPublishStatus(worldId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -9973,12 +10008,12 @@ export const WorldsApiFp = function(configuration?: Configuration) { * Update information about a specific World. * @summary Update World * @param {string} worldId - * @param {InlineObject7} [inlineObject7] + * @param {UpdateWorldRequest} [updateWorldRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async updateWorld(worldId: string, inlineObject7?: InlineObject7, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.updateWorld(worldId, inlineObject7, options); + async updateWorld(worldId: string, updateWorldRequest?: UpdateWorldRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.updateWorld(worldId, updateWorldRequest, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, } @@ -9994,12 +10029,12 @@ export const WorldsApiFactory = function (configuration?: Configuration, basePat /** * Create a new world. This endpoint requires `assetUrl` to be a valid File object with `.vrcw` file extension, and `imageUrl` to be a valid File object with an image file extension. * @summary Create World - * @param {InlineObject6} [inlineObject6] + * @param {CreateWorldRequest} [createWorldRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - createWorld(inlineObject6?: InlineObject6, options?: any): AxiosPromise { - return localVarFp.createWorld(inlineObject6, options).then((request) => request(axios, basePath)); + createWorld(createWorldRequest?: CreateWorldRequest, options?: any): AxiosPromise { + return localVarFp.createWorld(createWorldRequest, options).then((request) => request(axios, basePath)); }, /** * Delete a world. Notice a world is never fully \"deleted\", only its ReleaseStatus is set to \"hidden\" and the linked Files are deleted. The WorldID is permanently reserved. @@ -10105,7 +10140,7 @@ export const WorldsApiFactory = function (configuration?: Configuration, basePat * @deprecated * @throws {RequiredError} */ - getWorldMetadata(worldId: string, options?: any): AxiosPromise { + getWorldMetadata(worldId: string, options?: any): AxiosPromise { return localVarFp.getWorldMetadata(worldId, options).then((request) => request(axios, basePath)); }, /** @@ -10115,7 +10150,7 @@ export const WorldsApiFactory = function (configuration?: Configuration, basePat * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getWorldPublishStatus(worldId: string, options?: any): AxiosPromise { + getWorldPublishStatus(worldId: string, options?: any): AxiosPromise { return localVarFp.getWorldPublishStatus(worldId, options).then((request) => request(axios, basePath)); }, /** @@ -10165,12 +10200,12 @@ export const WorldsApiFactory = function (configuration?: Configuration, basePat * Update information about a specific World. * @summary Update World * @param {string} worldId - * @param {InlineObject7} [inlineObject7] + * @param {UpdateWorldRequest} [updateWorldRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - updateWorld(worldId: string, inlineObject7?: InlineObject7, options?: any): AxiosPromise { - return localVarFp.updateWorld(worldId, inlineObject7, options).then((request) => request(axios, basePath)); + updateWorld(worldId: string, updateWorldRequest?: UpdateWorldRequest, options?: any): AxiosPromise { + return localVarFp.updateWorld(worldId, updateWorldRequest, options).then((request) => request(axios, basePath)); }, }; }; @@ -10185,13 +10220,13 @@ export class WorldsApi extends BaseAPI { /** * Create a new world. This endpoint requires `assetUrl` to be a valid File object with `.vrcw` file extension, and `imageUrl` to be a valid File object with an image file extension. * @summary Create World - * @param {InlineObject6} [inlineObject6] + * @param {CreateWorldRequest} [createWorldRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof WorldsApi */ - public createWorld(inlineObject6?: InlineObject6, options?: AxiosRequestConfig) { - return WorldsApiFp(this.configuration).createWorld(inlineObject6, options).then((request) => request(this.axios, this.basePath)); + public createWorld(createWorldRequest?: CreateWorldRequest, options?: AxiosRequestConfig) { + return WorldsApiFp(this.configuration).createWorld(createWorldRequest, options).then((request) => request(this.axios, this.basePath)); } /** @@ -10380,13 +10415,13 @@ export class WorldsApi extends BaseAPI { * Update information about a specific World. * @summary Update World * @param {string} worldId - * @param {InlineObject7} [inlineObject7] + * @param {UpdateWorldRequest} [updateWorldRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof WorldsApi */ - public updateWorld(worldId: string, inlineObject7?: InlineObject7, options?: AxiosRequestConfig) { - return WorldsApiFp(this.configuration).updateWorld(worldId, inlineObject7, options).then((request) => request(this.axios, this.basePath)); + public updateWorld(worldId: string, updateWorldRequest?: UpdateWorldRequest, options?: AxiosRequestConfig) { + return WorldsApiFp(this.configuration).updateWorld(worldId, updateWorldRequest, options).then((request) => request(this.axios, this.basePath)); } } diff --git a/base.ts b/base.ts index ef1ebe3..47691ef 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.4.2 + * The version of the OpenAPI document: 1.5.0 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index 212cf9f..fe1d16c 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.4.2 + * The version of the OpenAPI document: 1.5.0 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index dbf1467..0f3d57f 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.4.2 + * The version of the OpenAPI document: 1.5.0 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index 0c60d9c..3b1bac4 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.4.2 + * The version of the OpenAPI document: 1.5.0 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index b658ebd..f928dc4 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.4.2", + "version": "1.5.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.4.2", + "version": "1.5.0", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index ef18ed4..8ecbea7 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.4.2", + "version": "1.5.0", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "keywords": [ From cce004487143a5df431d4192654edc609b1e544e Mon Sep 17 00:00:00 2001 From: Foorack Date: Sun, 31 Oct 2021 02:38:08 +0200 Subject: [PATCH 058/130] ci: update specification URL for lower cache time --- generate.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/generate.sh b/generate.sh index 093d26b..9a4bce7 100644 --- a/generate.sh +++ b/generate.sh @@ -10,7 +10,7 @@ rm *.ts -rf --git-user-id=vrchatapi \ --git-repo-id=vrchatapi-javascript \ -o . \ --i https://vrchatapi.github.io/specification/openapi.yaml \ +-i https://raw.githubusercontent.com/vrchatapi/specification/gh-pages/openapi.yaml \ --http-user-agent="vrchatapi-javascript" # Modify package.json From 333f14e7b2d2898589e328a1a29b6c0b6e868b88 Mon Sep 17 00:00:00 2001 From: VRCCat Date: Sun, 31 Oct 2021 00:41:20 +0000 Subject: [PATCH 059/130] Upgrade Node SDK to spec 1.5.1 --- api.ts | 443 ++++++++++++++++++++++++++++++++++++++-------- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 +- package.json | 2 +- 7 files changed, 381 insertions(+), 76 deletions(-) diff --git a/api.ts b/api.ts index 1362d7a..1f4af0b 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.5.0 + * The version of the OpenAPI document: 1.5.1 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -1705,6 +1705,19 @@ export interface FriendStatus { */ 'outgoingRequest': boolean; } +/** + * + * @export + * @interface InlineResponse404 + */ +export interface InlineResponse404 { + /** + * + * @type {Error} + * @memberof InlineResponse404 + */ + 'error': Error; +} /** * * @export @@ -2719,6 +2732,19 @@ export interface UpdateFavoriteGroupRequest { */ 'tags'?: Array; } +/** + * + * @export + * @interface UpdateInviteMessageRequest + */ +export interface UpdateInviteMessageRequest { + /** + * + * @type {string} + * @memberof UpdateInviteMessageRequest + */ + 'message': string; +} /** * * @export @@ -6613,6 +6639,278 @@ export class FriendsApi extends BaseAPI { } +/** + * InstancesApi - axios parameter creator + * @export + */ +export const InstancesApiAxiosParamCreator = function (configuration?: Configuration) { + return { + /** + * Returns an instance. + * @summary Get Instance + * @param {string} worldId + * @param {string} instanceId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getInstance: async (worldId: string, instanceId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'worldId' is not null or undefined + assertParamExists('getInstance', 'worldId', worldId) + // verify required parameter 'instanceId' is not null or undefined + assertParamExists('getInstance', 'instanceId', instanceId) + const localVarPath = `/instances/{worldId}:{instanceId}` + .replace(`{${"worldId"}}`, encodeURIComponent(String(worldId))) + .replace(`{${"instanceId"}}`, encodeURIComponent(String(instanceId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Returns an instance short name. + * @summary Get Instance Short Name + * @param {string} worldId + * @param {string} instanceId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getShortName: async (worldId: string, instanceId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'worldId' is not null or undefined + assertParamExists('getShortName', 'worldId', worldId) + // verify required parameter 'instanceId' is not null or undefined + assertParamExists('getShortName', 'instanceId', instanceId) + const localVarPath = `/instances/{worldId}:{instanceId}/shortName` + .replace(`{${"worldId"}}`, encodeURIComponent(String(worldId))) + .replace(`{${"instanceId"}}`, encodeURIComponent(String(instanceId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Sends an invite to the instance to yourself. + * @summary Send Self Invite + * @param {string} worldId + * @param {string} instanceId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + sendSelfInvite: async (worldId: string, instanceId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'worldId' is not null or undefined + assertParamExists('sendSelfInvite', 'worldId', worldId) + // verify required parameter 'instanceId' is not null or undefined + assertParamExists('sendSelfInvite', 'instanceId', instanceId) + const localVarPath = `/instances/{worldId}:{instanceId}/invite` + .replace(`{${"worldId"}}`, encodeURIComponent(String(worldId))) + .replace(`{${"instanceId"}}`, encodeURIComponent(String(instanceId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + } +}; + +/** + * InstancesApi - functional programming interface + * @export + */ +export const InstancesApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = InstancesApiAxiosParamCreator(configuration) + return { + /** + * Returns an instance. + * @summary Get Instance + * @param {string} worldId + * @param {string} instanceId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getInstance(worldId: string, instanceId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getInstance(worldId, instanceId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Returns an instance short name. + * @summary Get Instance Short Name + * @param {string} worldId + * @param {string} instanceId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getShortName(worldId: string, instanceId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getShortName(worldId, instanceId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Sends an invite to the instance to yourself. + * @summary Send Self Invite + * @param {string} worldId + * @param {string} instanceId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async sendSelfInvite(worldId: string, instanceId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.sendSelfInvite(worldId, instanceId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + } +}; + +/** + * InstancesApi - factory interface + * @export + */ +export const InstancesApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = InstancesApiFp(configuration) + return { + /** + * Returns an instance. + * @summary Get Instance + * @param {string} worldId + * @param {string} instanceId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getInstance(worldId: string, instanceId: string, options?: any): AxiosPromise { + return localVarFp.getInstance(worldId, instanceId, options).then((request) => request(axios, basePath)); + }, + /** + * Returns an instance short name. + * @summary Get Instance Short Name + * @param {string} worldId + * @param {string} instanceId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getShortName(worldId: string, instanceId: string, options?: any): AxiosPromise { + return localVarFp.getShortName(worldId, instanceId, options).then((request) => request(axios, basePath)); + }, + /** + * Sends an invite to the instance to yourself. + * @summary Send Self Invite + * @param {string} worldId + * @param {string} instanceId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + sendSelfInvite(worldId: string, instanceId: string, options?: any): AxiosPromise { + return localVarFp.sendSelfInvite(worldId, instanceId, options).then((request) => request(axios, basePath)); + }, + }; +}; + +/** + * InstancesApi - object-oriented interface + * @export + * @class InstancesApi + * @extends {BaseAPI} + */ +export class InstancesApi extends BaseAPI { + /** + * Returns an instance. + * @summary Get Instance + * @param {string} worldId + * @param {string} instanceId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof InstancesApi + */ + public getInstance(worldId: string, instanceId: string, options?: AxiosRequestConfig) { + return InstancesApiFp(this.configuration).getInstance(worldId, instanceId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Returns an instance short name. + * @summary Get Instance Short Name + * @param {string} worldId + * @param {string} instanceId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof InstancesApi + */ + public getShortName(worldId: string, instanceId: string, options?: AxiosRequestConfig) { + return InstancesApiFp(this.configuration).getShortName(worldId, instanceId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Sends an invite to the instance to yourself. + * @summary Send Self Invite + * @param {string} worldId + * @param {string} instanceId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof InstancesApi + */ + public sendSelfInvite(worldId: string, instanceId: string, options?: AxiosRequestConfig) { + return InstancesApiFp(this.configuration).sendSelfInvite(worldId, instanceId, options).then((request) => request(this.axios, this.basePath)); + } +} + + /** * InviteApi - axios parameter creator * @export @@ -6621,24 +6919,24 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio return { /** * Returns a single Invite Message. This returns the exact same information but less than `getInviteMessages`. Admin Credentials are required to view messages of other users! Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite - * @summary Get Invite Messages + * @summary Get Invite Message * @param {string} userId * @param {'message' | 'response' | 'request' | 'requestResponse'} messageType - * @param {number} messageId + * @param {number} slot * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getInviteMessage: async (userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', messageId: number, options: AxiosRequestConfig = {}): Promise => { + getInviteMessage: async (userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', slot: number, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'userId' is not null or undefined assertParamExists('getInviteMessage', 'userId', userId) // verify required parameter 'messageType' is not null or undefined assertParamExists('getInviteMessage', 'messageType', messageType) - // verify required parameter 'messageId' is not null or undefined - assertParamExists('getInviteMessage', 'messageId', messageId) - const localVarPath = `/message/{userId}/{messageType}/{messageId}` + // verify required parameter 'slot' is not null or undefined + assertParamExists('getInviteMessage', 'slot', slot) + const localVarPath = `/message/{userId}/{messageType}/{slot}` .replace(`{${"userId"}}`, encodeURIComponent(String(userId))) .replace(`{${"messageType"}}`, encodeURIComponent(String(messageType))) - .replace(`{${"messageId"}}`, encodeURIComponent(String(messageId))); + .replace(`{${"slot"}}`, encodeURIComponent(String(slot))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -6788,25 +7086,25 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio }; }, /** - * Resets a single Invite Message back to it\'s original message, and then returns a list of all of them. Admin Credentials are required to update messages of other users! Resetting a message respects the rate-limit, but resetting it does not set the rate-limit to 60 like when editing it. It is possible to edit it right after resetting it. Trying to edit a message before the cooldown timer expires results in a 429 Too Fast Error. Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite + * Resets a single Invite Message back to it\'s original message, and then returns a list of all of them. Admin Credentials are required to update messages of other users! Resetting a message respects the rate-limit, so it is not possible to reset within the 60 minutes countdown. Resetting it does however not set the rate-limit to 60 like when editing it. It is possible to edit it right after resetting it. Trying to edit a message before the cooldown timer expires results in a 429 \"Too Fast Error\". Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite The DELETE endpoint does not have/require any request body. * @summary Reset Invite Message * @param {string} userId * @param {'message' | 'response' | 'request' | 'requestResponse'} messageType - * @param {number} messageId + * @param {number} slot * @param {*} [options] Override http request option. * @throws {RequiredError} */ - resetInviteMessage: async (userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', messageId: number, options: AxiosRequestConfig = {}): Promise => { + resetInviteMessage: async (userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', slot: number, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'userId' is not null or undefined assertParamExists('resetInviteMessage', 'userId', userId) // verify required parameter 'messageType' is not null or undefined assertParamExists('resetInviteMessage', 'messageType', messageType) - // verify required parameter 'messageId' is not null or undefined - assertParamExists('resetInviteMessage', 'messageId', messageId) - const localVarPath = `/message/{userId}/{messageType}/{messageId}` + // verify required parameter 'slot' is not null or undefined + assertParamExists('resetInviteMessage', 'slot', slot) + const localVarPath = `/message/{userId}/{messageType}/{slot}` .replace(`{${"userId"}}`, encodeURIComponent(String(userId))) .replace(`{${"messageType"}}`, encodeURIComponent(String(messageType))) - .replace(`{${"messageId"}}`, encodeURIComponent(String(messageId))); + .replace(`{${"slot"}}`, encodeURIComponent(String(slot))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -6876,25 +7174,26 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio }; }, /** - * Updates a single Invite Message and then returns a list of all of them. Admin Credentials are required to update messages of other users! Updating a message automatically sets the cooldown timer to 60 minutes. Trying to edit a message before the cooldown timer expires results in a 429 Too Fast Error. Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite + * Updates a single Invite Message and then returns a list of all of them. Admin Credentials are required to update messages of other users! Updating a message automatically sets the cooldown timer to 60 minutes. Trying to edit a message before the cooldown timer expires results in a 429 \"Too Fast Error\". Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite * @summary Update Invite Message * @param {string} userId * @param {'message' | 'response' | 'request' | 'requestResponse'} messageType - * @param {number} messageId + * @param {number} slot + * @param {UpdateInviteMessageRequest} [updateInviteMessageRequest] Message of what to set the invite message to. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - updateInviteMessage: async (userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', messageId: number, options: AxiosRequestConfig = {}): Promise => { + updateInviteMessage: async (userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', slot: number, updateInviteMessageRequest?: UpdateInviteMessageRequest, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'userId' is not null or undefined assertParamExists('updateInviteMessage', 'userId', userId) // verify required parameter 'messageType' is not null or undefined assertParamExists('updateInviteMessage', 'messageType', messageType) - // verify required parameter 'messageId' is not null or undefined - assertParamExists('updateInviteMessage', 'messageId', messageId) - const localVarPath = `/message/{userId}/{messageType}/{messageId}` + // verify required parameter 'slot' is not null or undefined + assertParamExists('updateInviteMessage', 'slot', slot) + const localVarPath = `/message/{userId}/{messageType}/{slot}` .replace(`{${"userId"}}`, encodeURIComponent(String(userId))) .replace(`{${"messageType"}}`, encodeURIComponent(String(messageType))) - .replace(`{${"messageId"}}`, encodeURIComponent(String(messageId))); + .replace(`{${"slot"}}`, encodeURIComponent(String(slot))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -6912,9 +7211,12 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio + localVarHeaderParameter['Content-Type'] = 'application/json'; + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(updateInviteMessageRequest, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), @@ -6933,15 +7235,15 @@ export const InviteApiFp = function(configuration?: Configuration) { return { /** * Returns a single Invite Message. This returns the exact same information but less than `getInviteMessages`. Admin Credentials are required to view messages of other users! Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite - * @summary Get Invite Messages + * @summary Get Invite Message * @param {string} userId * @param {'message' | 'response' | 'request' | 'requestResponse'} messageType - * @param {number} messageId + * @param {number} slot * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getInviteMessage(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', messageId: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getInviteMessage(userId, messageType, messageId, options); + async getInviteMessage(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', slot: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getInviteMessage(userId, messageType, slot, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** @@ -6980,16 +7282,16 @@ export const InviteApiFp = function(configuration?: Configuration) { return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Resets a single Invite Message back to it\'s original message, and then returns a list of all of them. Admin Credentials are required to update messages of other users! Resetting a message respects the rate-limit, but resetting it does not set the rate-limit to 60 like when editing it. It is possible to edit it right after resetting it. Trying to edit a message before the cooldown timer expires results in a 429 Too Fast Error. Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite + * Resets a single Invite Message back to it\'s original message, and then returns a list of all of them. Admin Credentials are required to update messages of other users! Resetting a message respects the rate-limit, so it is not possible to reset within the 60 minutes countdown. Resetting it does however not set the rate-limit to 60 like when editing it. It is possible to edit it right after resetting it. Trying to edit a message before the cooldown timer expires results in a 429 \"Too Fast Error\". Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite The DELETE endpoint does not have/require any request body. * @summary Reset Invite Message * @param {string} userId * @param {'message' | 'response' | 'request' | 'requestResponse'} messageType - * @param {number} messageId + * @param {number} slot * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async resetInviteMessage(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', messageId: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { - const localVarAxiosArgs = await localVarAxiosParamCreator.resetInviteMessage(userId, messageType, messageId, options); + async resetInviteMessage(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', slot: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.resetInviteMessage(userId, messageType, slot, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** @@ -7005,16 +7307,17 @@ export const InviteApiFp = function(configuration?: Configuration) { return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Updates a single Invite Message and then returns a list of all of them. Admin Credentials are required to update messages of other users! Updating a message automatically sets the cooldown timer to 60 minutes. Trying to edit a message before the cooldown timer expires results in a 429 Too Fast Error. Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite + * Updates a single Invite Message and then returns a list of all of them. Admin Credentials are required to update messages of other users! Updating a message automatically sets the cooldown timer to 60 minutes. Trying to edit a message before the cooldown timer expires results in a 429 \"Too Fast Error\". Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite * @summary Update Invite Message * @param {string} userId * @param {'message' | 'response' | 'request' | 'requestResponse'} messageType - * @param {number} messageId + * @param {number} slot + * @param {UpdateInviteMessageRequest} [updateInviteMessageRequest] Message of what to set the invite message to. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async updateInviteMessage(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', messageId: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { - const localVarAxiosArgs = await localVarAxiosParamCreator.updateInviteMessage(userId, messageType, messageId, options); + async updateInviteMessage(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', slot: number, updateInviteMessageRequest?: UpdateInviteMessageRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.updateInviteMessage(userId, messageType, slot, updateInviteMessageRequest, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, } @@ -7029,15 +7332,15 @@ export const InviteApiFactory = function (configuration?: Configuration, basePat return { /** * Returns a single Invite Message. This returns the exact same information but less than `getInviteMessages`. Admin Credentials are required to view messages of other users! Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite - * @summary Get Invite Messages + * @summary Get Invite Message * @param {string} userId * @param {'message' | 'response' | 'request' | 'requestResponse'} messageType - * @param {number} messageId + * @param {number} slot * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getInviteMessage(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', messageId: number, options?: any): AxiosPromise { - return localVarFp.getInviteMessage(userId, messageType, messageId, options).then((request) => request(axios, basePath)); + getInviteMessage(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', slot: number, options?: any): AxiosPromise { + return localVarFp.getInviteMessage(userId, messageType, slot, options).then((request) => request(axios, basePath)); }, /** * Returns a list of all the users Invite Messages. Admin Credentials are required to view messages of other users! Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite @@ -7072,16 +7375,16 @@ export const InviteApiFactory = function (configuration?: Configuration, basePat return localVarFp.requestInvite(userId, options).then((request) => request(axios, basePath)); }, /** - * Resets a single Invite Message back to it\'s original message, and then returns a list of all of them. Admin Credentials are required to update messages of other users! Resetting a message respects the rate-limit, but resetting it does not set the rate-limit to 60 like when editing it. It is possible to edit it right after resetting it. Trying to edit a message before the cooldown timer expires results in a 429 Too Fast Error. Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite + * Resets a single Invite Message back to it\'s original message, and then returns a list of all of them. Admin Credentials are required to update messages of other users! Resetting a message respects the rate-limit, so it is not possible to reset within the 60 minutes countdown. Resetting it does however not set the rate-limit to 60 like when editing it. It is possible to edit it right after resetting it. Trying to edit a message before the cooldown timer expires results in a 429 \"Too Fast Error\". Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite The DELETE endpoint does not have/require any request body. * @summary Reset Invite Message * @param {string} userId * @param {'message' | 'response' | 'request' | 'requestResponse'} messageType - * @param {number} messageId + * @param {number} slot * @param {*} [options] Override http request option. * @throws {RequiredError} */ - resetInviteMessage(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', messageId: number, options?: any): AxiosPromise> { - return localVarFp.resetInviteMessage(userId, messageType, messageId, options).then((request) => request(axios, basePath)); + resetInviteMessage(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', slot: number, options?: any): AxiosPromise> { + return localVarFp.resetInviteMessage(userId, messageType, slot, options).then((request) => request(axios, basePath)); }, /** * Respond to an invite request by sending a world invite to the requesting user. `:notificationId` is the ID of the requesting notification. @@ -7095,16 +7398,17 @@ export const InviteApiFactory = function (configuration?: Configuration, basePat return localVarFp.respondInvite(notificationId, inviteResponse, options).then((request) => request(axios, basePath)); }, /** - * Updates a single Invite Message and then returns a list of all of them. Admin Credentials are required to update messages of other users! Updating a message automatically sets the cooldown timer to 60 minutes. Trying to edit a message before the cooldown timer expires results in a 429 Too Fast Error. Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite + * Updates a single Invite Message and then returns a list of all of them. Admin Credentials are required to update messages of other users! Updating a message automatically sets the cooldown timer to 60 minutes. Trying to edit a message before the cooldown timer expires results in a 429 \"Too Fast Error\". Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite * @summary Update Invite Message * @param {string} userId * @param {'message' | 'response' | 'request' | 'requestResponse'} messageType - * @param {number} messageId + * @param {number} slot + * @param {UpdateInviteMessageRequest} [updateInviteMessageRequest] Message of what to set the invite message to. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - updateInviteMessage(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', messageId: number, options?: any): AxiosPromise> { - return localVarFp.updateInviteMessage(userId, messageType, messageId, options).then((request) => request(axios, basePath)); + updateInviteMessage(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', slot: number, updateInviteMessageRequest?: UpdateInviteMessageRequest, options?: any): AxiosPromise> { + return localVarFp.updateInviteMessage(userId, messageType, slot, updateInviteMessageRequest, options).then((request) => request(axios, basePath)); }, }; }; @@ -7118,16 +7422,16 @@ export const InviteApiFactory = function (configuration?: Configuration, basePat export class InviteApi extends BaseAPI { /** * Returns a single Invite Message. This returns the exact same information but less than `getInviteMessages`. Admin Credentials are required to view messages of other users! Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite - * @summary Get Invite Messages + * @summary Get Invite Message * @param {string} userId * @param {'message' | 'response' | 'request' | 'requestResponse'} messageType - * @param {number} messageId + * @param {number} slot * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof InviteApi */ - public getInviteMessage(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', messageId: number, options?: AxiosRequestConfig) { - return InviteApiFp(this.configuration).getInviteMessage(userId, messageType, messageId, options).then((request) => request(this.axios, this.basePath)); + public getInviteMessage(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', slot: number, options?: AxiosRequestConfig) { + return InviteApiFp(this.configuration).getInviteMessage(userId, messageType, slot, options).then((request) => request(this.axios, this.basePath)); } /** @@ -7169,17 +7473,17 @@ export class InviteApi extends BaseAPI { } /** - * Resets a single Invite Message back to it\'s original message, and then returns a list of all of them. Admin Credentials are required to update messages of other users! Resetting a message respects the rate-limit, but resetting it does not set the rate-limit to 60 like when editing it. It is possible to edit it right after resetting it. Trying to edit a message before the cooldown timer expires results in a 429 Too Fast Error. Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite + * Resets a single Invite Message back to it\'s original message, and then returns a list of all of them. Admin Credentials are required to update messages of other users! Resetting a message respects the rate-limit, so it is not possible to reset within the 60 minutes countdown. Resetting it does however not set the rate-limit to 60 like when editing it. It is possible to edit it right after resetting it. Trying to edit a message before the cooldown timer expires results in a 429 \"Too Fast Error\". Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite The DELETE endpoint does not have/require any request body. * @summary Reset Invite Message * @param {string} userId * @param {'message' | 'response' | 'request' | 'requestResponse'} messageType - * @param {number} messageId + * @param {number} slot * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof InviteApi */ - public resetInviteMessage(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', messageId: number, options?: AxiosRequestConfig) { - return InviteApiFp(this.configuration).resetInviteMessage(userId, messageType, messageId, options).then((request) => request(this.axios, this.basePath)); + public resetInviteMessage(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', slot: number, options?: AxiosRequestConfig) { + return InviteApiFp(this.configuration).resetInviteMessage(userId, messageType, slot, options).then((request) => request(this.axios, this.basePath)); } /** @@ -7196,17 +7500,18 @@ export class InviteApi extends BaseAPI { } /** - * Updates a single Invite Message and then returns a list of all of them. Admin Credentials are required to update messages of other users! Updating a message automatically sets the cooldown timer to 60 minutes. Trying to edit a message before the cooldown timer expires results in a 429 Too Fast Error. Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite + * Updates a single Invite Message and then returns a list of all of them. Admin Credentials are required to update messages of other users! Updating a message automatically sets the cooldown timer to 60 minutes. Trying to edit a message before the cooldown timer expires results in a 429 \"Too Fast Error\". Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite * @summary Update Invite Message * @param {string} userId * @param {'message' | 'response' | 'request' | 'requestResponse'} messageType - * @param {number} messageId + * @param {number} slot + * @param {UpdateInviteMessageRequest} [updateInviteMessageRequest] Message of what to set the invite message to. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof InviteApi */ - public updateInviteMessage(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', messageId: number, options?: AxiosRequestConfig) { - return InviteApiFp(this.configuration).updateInviteMessage(userId, messageType, messageId, options).then((request) => request(this.axios, this.basePath)); + public updateInviteMessage(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', slot: number, updateInviteMessageRequest?: UpdateInviteMessageRequest, options?: AxiosRequestConfig) { + return InviteApiFp(this.configuration).updateInviteMessage(userId, messageType, slot, updateInviteMessageRequest, options).then((request) => request(this.axios, this.basePath)); } } @@ -8063,7 +8368,7 @@ export const PlayermoderationApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async clearAllPlayerModerations(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async clearAllPlayerModerations(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.clearAllPlayerModerations(options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -8139,7 +8444,7 @@ export const PlayermoderationApiFactory = function (configuration?: Configuratio * @param {*} [options] Override http request option. * @throws {RequiredError} */ - clearAllPlayerModerations(options?: any): AxiosPromise { + clearAllPlayerModerations(options?: any): AxiosPromise { return localVarFp.clearAllPlayerModerations(options).then((request) => request(axios, basePath)); }, /** @@ -8292,7 +8597,7 @@ export const SystemApiAxiosParamCreator = function (configuration?: Configuratio * @throws {RequiredError} */ getCSS: async (variant?: 'public' | 'internal', branch?: string, options: AxiosRequestConfig = {}): Promise => { - const localVarPath = `/css/app.js`; + const localVarPath = `/css/app.css`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -8354,7 +8659,7 @@ export const SystemApiAxiosParamCreator = function (configuration?: Configuratio }; }, /** - * Returns in plain format the number of currently online users. **NOTE:** The response type is not of JSON, but is an integer in plain ASCII format. + * Returns the current number of online users. **NOTE:** The response type is not a JSON object, but a simple JSON integer. * @summary Current Online Users * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -8455,7 +8760,7 @@ export const SystemApiAxiosParamCreator = function (configuration?: Configuratio }; }, /** - * Returns in plain format the current time of the API server. **NOTE:** The response type is not of JSON, but is a string in plain ASCII format. + * Returns the current time of the API server. **NOTE:** The response type is not a JSON object, but a simple JSON string. * @summary Current System Time * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -8517,7 +8822,7 @@ export const SystemApiFp = function(configuration?: Configuration) { return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Returns in plain format the number of currently online users. **NOTE:** The response type is not of JSON, but is an integer in plain ASCII format. + * Returns the current number of online users. **NOTE:** The response type is not a JSON object, but a simple JSON integer. * @summary Current Online Users * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -8550,7 +8855,7 @@ export const SystemApiFp = function(configuration?: Configuration) { return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Returns in plain format the current time of the API server. **NOTE:** The response type is not of JSON, but is a string in plain ASCII format. + * Returns the current time of the API server. **NOTE:** The response type is not a JSON object, but a simple JSON string. * @summary Current System Time * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -8590,7 +8895,7 @@ export const SystemApiFactory = function (configuration?: Configuration, basePat return localVarFp.getConfig(options).then((request) => request(axios, basePath)); }, /** - * Returns in plain format the number of currently online users. **NOTE:** The response type is not of JSON, but is an integer in plain ASCII format. + * Returns the current number of online users. **NOTE:** The response type is not a JSON object, but a simple JSON integer. * @summary Current Online Users * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -8620,7 +8925,7 @@ export const SystemApiFactory = function (configuration?: Configuration, basePat return localVarFp.getJavaScript(variant, branch, options).then((request) => request(axios, basePath)); }, /** - * Returns in plain format the current time of the API server. **NOTE:** The response type is not of JSON, but is a string in plain ASCII format. + * Returns the current time of the API server. **NOTE:** The response type is not a JSON object, but a simple JSON string. * @summary Current System Time * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -8663,7 +8968,7 @@ export class SystemApi extends BaseAPI { } /** - * Returns in plain format the number of currently online users. **NOTE:** The response type is not of JSON, but is an integer in plain ASCII format. + * Returns the current number of online users. **NOTE:** The response type is not a JSON object, but a simple JSON integer. * @summary Current Online Users * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -8699,7 +9004,7 @@ export class SystemApi extends BaseAPI { } /** - * Returns in plain format the current time of the API server. **NOTE:** The response type is not of JSON, but is a string in plain ASCII format. + * Returns the current time of the API server. **NOTE:** The response type is not a JSON object, but a simple JSON string. * @summary Current System Time * @param {*} [options] Override http request option. * @throws {RequiredError} diff --git a/base.ts b/base.ts index 47691ef..d87b346 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.5.0 + * The version of the OpenAPI document: 1.5.1 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index fe1d16c..6faa391 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.5.0 + * The version of the OpenAPI document: 1.5.1 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index 0f3d57f..77e3c82 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.5.0 + * The version of the OpenAPI document: 1.5.1 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index 3b1bac4..5fceb9d 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.5.0 + * The version of the OpenAPI document: 1.5.1 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index f928dc4..379a8df 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.5.0", + "version": "1.5.1", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.5.0", + "version": "1.5.1", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index 8ecbea7..3c45ed7 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.5.0", + "version": "1.5.1", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "keywords": [ From 90d55f8931237d81478be9a86aa4c1a10d7c04b4 Mon Sep 17 00:00:00 2001 From: VRCCat Date: Sun, 31 Oct 2021 01:15:32 +0000 Subject: [PATCH 060/130] Upgrade Node SDK to spec 1.5.2 --- api.ts | 3208 ++++++++++++++++++++++++++++----------------- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 +- package.json | 2 +- 7 files changed, 2038 insertions(+), 1184 deletions(-) diff --git a/api.ts b/api.ts index 1f4af0b..c75bcf4 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.5.1 + * The version of the OpenAPI document: 1.5.2 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -1705,19 +1705,6 @@ export interface FriendStatus { */ 'outgoingRequest': boolean; } -/** - * - * @export - * @interface InlineResponse404 - */ -export interface InlineResponse404 { - /** - * - * @type {Error} - * @memberof InlineResponse404 - */ - 'error': Error; -} /** * * @export @@ -1966,6 +1953,92 @@ export interface InviteResponse { */ 'responseSlot': number; } +/** + * + * @export + * @interface License + */ +export interface License { + /** + * Either a AvatarID, LicenseGroupID, PermissionID or ProductID. This depends on the `forType` field. + * @type {string} + * @memberof License + */ + 'forId': string; + /** + * + * @type {LicenseType} + * @memberof License + */ + 'forType': LicenseType; + /** + * + * @type {string} + * @memberof License + */ + 'forName': string; + /** + * + * @type {LicenseAction} + * @memberof License + */ + 'forAction': LicenseAction; +} +/** + * + * @export + * @enum {string} + */ + +export enum LicenseAction { + Wear = 'wear', + Have = 'have' +} + +/** + * + * @export + * @interface LicenseGroup + */ +export interface LicenseGroup { + /** + * + * @type {string} + * @memberof LicenseGroup + */ + 'id': string; + /** + * + * @type {string} + * @memberof LicenseGroup + */ + 'name': string; + /** + * + * @type {string} + * @memberof LicenseGroup + */ + 'description': string; + /** + * + * @type {Array} + * @memberof LicenseGroup + */ + 'licenses': Array; +} +/** + * + * @export + * @enum {string} + */ + +export enum LicenseType { + Avatar = 'avatar', + LicenseGroup = 'licenseGroup', + Permission = 'permission', + Product = 'product' +} + /** * * @export @@ -2556,807 +2629,1742 @@ export interface Response { /** * * @export - * @interface Success + * @interface Subscription */ -export interface Success { +export interface Subscription { /** * - * @type {Response} - * @memberof Success + * @type {string} + * @memberof Subscription */ - 'success'?: Response; + 'id': string; + /** + * + * @type {string} + * @memberof Subscription + */ + 'steamItemId': string; + /** + * + * @type {number} + * @memberof Subscription + */ + 'amount': number; + /** + * + * @type {string} + * @memberof Subscription + */ + 'description': string; + /** + * + * @type {SubscriptionPeriod} + * @memberof Subscription + */ + 'period': SubscriptionPeriod; + /** + * + * @type {number} + * @memberof Subscription + */ + 'tier': number; } /** * * @export - * @interface TwoFactorAuthCode + * @enum {string} */ -export interface TwoFactorAuthCode { + +export enum SubscriptionPeriod { + Hour = 'hour', + Day = 'day', + Week = 'week', + Month = 'month', + Year = 'year' +} + +/** + * + * @export + * @interface Success + */ +export interface Success { /** * - * @type {string} - * @memberof TwoFactorAuthCode + * @type {Response} + * @memberof Success */ - 'code': string; + 'success'?: Response; } /** * * @export - * @interface UnityPackage + * @interface Transaction */ -export interface UnityPackage { +export interface Transaction { /** * * @type {string} - * @memberof UnityPackage + * @memberof Transaction */ - 'assetUrl'?: string; + 'id': string; /** * - * @type {object} - * @memberof UnityPackage + * @type {TransactionStatus} + * @memberof Transaction */ - 'assetUrlObject'?: object; + 'status': TransactionStatus; /** * - * @type {number} - * @memberof UnityPackage + * @type {Subscription} + * @memberof Transaction */ - 'assetVersion': number; + 'subscription': Subscription; /** * - * @type {string} - * @memberof UnityPackage + * @type {boolean} + * @memberof Transaction */ - 'created_at'?: string; + 'sandbox': boolean; /** * * @type {string} - * @memberof UnityPackage - */ - 'id': string; - /** - * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. - * @type {string} - * @memberof UnityPackage + * @memberof Transaction */ - 'platform': string; + 'created_at': string; /** * * @type {string} - * @memberof UnityPackage + * @memberof Transaction */ - 'pluginUrl'?: string; + 'updated_at': string; /** * - * @type {object} - * @memberof UnityPackage + * @type {TransactionSteamInfo} + * @memberof Transaction */ - 'pluginUrlObject'?: object; + 'steam'?: TransactionSteamInfo; /** * - * @type {number} - * @memberof UnityPackage + * @type {TransactionAgreement} + * @memberof Transaction */ - 'unitySortNumber'?: number; + 'agreement'?: TransactionAgreement; /** * * @type {string} - * @memberof UnityPackage + * @memberof Transaction */ - 'unityVersion': string; + 'error': string; } /** * * @export - * @interface UpdateAvatarRequest + * @interface TransactionAgreement */ -export interface UpdateAvatarRequest { +export interface TransactionAgreement { /** * * @type {string} - * @memberof UpdateAvatarRequest + * @memberof TransactionAgreement */ - 'assetUrl'?: string; + 'agreementId': string; /** * + * @type {number} + * @memberof TransactionAgreement + */ + 'itemId': number; + /** + * This is NOT TransactionStatus, but whatever Steam return. * @type {string} - * @memberof UpdateAvatarRequest + * @memberof TransactionAgreement */ - 'id'?: string; + 'status': string; /** * * @type {string} - * @memberof UpdateAvatarRequest + * @memberof TransactionAgreement */ - 'name'?: string; + 'period': string; /** * - * @type {string} - * @memberof UpdateAvatarRequest + * @type {number} + * @memberof TransactionAgreement */ - 'description'?: string; + 'frequency': number; /** * - * @type {Array} - * @memberof UpdateAvatarRequest + * @type {string} + * @memberof TransactionAgreement */ - 'tags'?: Array; + 'billingType': string; /** * * @type {string} - * @memberof UpdateAvatarRequest + * @memberof TransactionAgreement */ - 'imageUrl'?: string; + 'startDate': string; /** * - * @type {ReleaseStatus} - * @memberof UpdateAvatarRequest + * @type {string} + * @memberof TransactionAgreement */ - 'releaseStatus'?: ReleaseStatus; + 'endDate': string; /** * * @type {number} - * @memberof UpdateAvatarRequest + * @memberof TransactionAgreement */ - 'version'?: number; + 'recurringAmt': number; /** * * @type {string} - * @memberof UpdateAvatarRequest + * @memberof TransactionAgreement */ - 'unityPackageUrl'?: string; -} -/** - * - * @export - * @interface UpdateFavoriteGroupRequest - */ -export interface UpdateFavoriteGroupRequest { + 'currency': string; /** * * @type {string} - * @memberof UpdateFavoriteGroupRequest + * @memberof TransactionAgreement */ - 'displayName'?: string; + 'timeCreated': string; /** * - * @type {FavoriteGroupVisibility} - * @memberof UpdateFavoriteGroupRequest - */ - 'visibility'?: FavoriteGroupVisibility; - /** - * Tags on FavoriteGroups are believed to do nothing. - * @type {Array} - * @memberof UpdateFavoriteGroupRequest + * @type {string} + * @memberof TransactionAgreement */ - 'tags'?: Array; -} -/** - * - * @export - * @interface UpdateInviteMessageRequest - */ -export interface UpdateInviteMessageRequest { + 'nextPayment': string; /** * * @type {string} - * @memberof UpdateInviteMessageRequest + * @memberof TransactionAgreement */ - 'message': string; -} -/** - * - * @export - * @interface UpdateUserRequest - */ -export interface UpdateUserRequest { + 'lastPayment': string; /** * - * @type {string} - * @memberof UpdateUserRequest + * @type {number} + * @memberof TransactionAgreement */ - 'email'?: string; + 'lastAmount': number; /** * - * @type {string} - * @memberof UpdateUserRequest + * @type {number} + * @memberof TransactionAgreement */ - 'birthday'?: string; + 'lastAmountVat': number; /** * * @type {number} - * @memberof UpdateUserRequest + * @memberof TransactionAgreement */ - 'acceptedTOSVersion'?: number; + 'outstanding': number; /** * - * @type {Array} - * @memberof UpdateUserRequest + * @type {number} + * @memberof TransactionAgreement */ - 'tags'?: Array; + 'failedAttempts': number; +} +/** + * + * @export + * @enum {string} + */ + +export enum TransactionStatus { + Active = 'active', + Failed = 'failed', + Expired = 'expired', + Chargeback = 'chargeback' +} + +/** + * + * @export + * @interface TransactionSteamInfo + */ +export interface TransactionSteamInfo { /** * - * @type {UserStatus} - * @memberof UpdateUserRequest + * @type {TransactionSteamWalletInfo} + * @memberof TransactionSteamInfo */ - 'status'?: UserStatus; + 'walletInfo': TransactionSteamWalletInfo; /** - * + * Steam User ID * @type {string} - * @memberof UpdateUserRequest + * @memberof TransactionSteamInfo */ - 'statusDescription'?: string; + 'steamId': string; /** - * + * Steam Order ID * @type {string} - * @memberof UpdateUserRequest + * @memberof TransactionSteamInfo */ - 'bio'?: string; + 'orderId': string; /** - * - * @type {Array} - * @memberof UpdateUserRequest + * Empty + * @type {string} + * @memberof TransactionSteamInfo */ - 'bioLinks'?: Array; + 'steamUrl': string; /** - * MUST be a valid VRChat /file/ url. + * Steam Transaction ID, NOT the same as VRChat TransactionID * @type {string} - * @memberof UpdateUserRequest + * @memberof TransactionSteamInfo */ - 'userIcon'?: string; + 'transId': string; } /** * * @export - * @interface UpdateWorldRequest + * @interface TransactionSteamWalletInfo */ -export interface UpdateWorldRequest { +export interface TransactionSteamWalletInfo { /** * * @type {string} - * @memberof UpdateWorldRequest + * @memberof TransactionSteamWalletInfo */ - 'assetUrl'?: string; + 'state': string; /** * * @type {string} - * @memberof UpdateWorldRequest + * @memberof TransactionSteamWalletInfo */ - 'assetVersion'?: string; + 'country': string; /** * * @type {string} - * @memberof UpdateWorldRequest + * @memberof TransactionSteamWalletInfo */ - 'authorId'?: string; + 'currency': string; /** * * @type {string} - * @memberof UpdateWorldRequest + * @memberof TransactionSteamWalletInfo */ - 'authorName'?: string; + 'status': string; +} +/** + * + * @export + * @interface TwoFactorAuthCode + */ +export interface TwoFactorAuthCode { /** * - * @type {number} - * @memberof UpdateWorldRequest + * @type {string} + * @memberof TwoFactorAuthCode */ - 'capacity'?: number; + 'code': string; +} +/** + * + * @export + * @interface UnityPackage + */ +export interface UnityPackage { /** * * @type {string} - * @memberof UpdateWorldRequest + * @memberof UnityPackage */ - 'description'?: string; + 'assetUrl'?: string; + /** + * + * @type {object} + * @memberof UnityPackage + */ + 'assetUrlObject'?: object; + /** + * + * @type {number} + * @memberof UnityPackage + */ + 'assetVersion': number; /** * * @type {string} - * @memberof UpdateWorldRequest + * @memberof UnityPackage */ - 'imageUrl'?: string; + 'created_at'?: string; /** * * @type {string} - * @memberof UpdateWorldRequest + * @memberof UnityPackage */ - 'name'?: string; + 'id': string; /** * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. * @type {string} - * @memberof UpdateWorldRequest + * @memberof UnityPackage */ - 'platform'?: string; + 'platform': string; /** * - * @type {ReleaseStatus} - * @memberof UpdateWorldRequest + * @type {string} + * @memberof UnityPackage */ - 'releaseStatus'?: ReleaseStatus; + 'pluginUrl'?: string; /** * - * @type {Array} - * @memberof UpdateWorldRequest + * @type {object} + * @memberof UnityPackage */ - 'tags'?: Array; + 'pluginUrlObject'?: object; /** * - * @type {string} - * @memberof UpdateWorldRequest + * @type {number} + * @memberof UnityPackage */ - 'unityPackageUrl'?: string; + 'unitySortNumber'?: number; /** * * @type {string} - * @memberof UpdateWorldRequest + * @memberof UnityPackage */ - 'unityVersion'?: string; + 'unityVersion': string; } /** * * @export - * @interface User + * @interface UpdateAvatarRequest */ -export interface User { +export interface UpdateAvatarRequest { /** * - * @type {boolean} - * @memberof User + * @type {string} + * @memberof UpdateAvatarRequest */ - 'allowAvatarCopying': boolean; + 'assetUrl'?: string; /** * * @type {string} - * @memberof User + * @memberof UpdateAvatarRequest */ - 'bio': string; + 'id'?: string; /** * - * @type {Array} - * @memberof User + * @type {string} + * @memberof UpdateAvatarRequest */ - 'bioLinks': Array; + 'name'?: string; /** * * @type {string} - * @memberof User + * @memberof UpdateAvatarRequest */ - 'currentAvatarImageUrl': string; + 'description'?: string; /** * - * @type {string} - * @memberof User + * @type {Array} + * @memberof UpdateAvatarRequest */ - 'currentAvatarThumbnailImageUrl': string; + 'tags'?: Array; /** * * @type {string} - * @memberof User + * @memberof UpdateAvatarRequest */ - 'date_joined': string; + 'imageUrl'?: string; /** * - * @type {DeveloperType} - * @memberof User + * @type {ReleaseStatus} + * @memberof UpdateAvatarRequest */ - 'developerType': DeveloperType; + 'releaseStatus'?: ReleaseStatus; /** * - * @type {string} - * @memberof User + * @type {number} + * @memberof UpdateAvatarRequest */ - 'displayName': string; + 'version'?: number; /** * * @type {string} - * @memberof User + * @memberof UpdateAvatarRequest */ - 'friendKey': string; + 'unityPackageUrl'?: string; +} +/** + * + * @export + * @interface UpdateFavoriteGroupRequest + */ +export interface UpdateFavoriteGroupRequest { /** * * @type {string} - * @memberof User + * @memberof UpdateFavoriteGroupRequest */ - 'id': string; + 'displayName'?: string; /** * - * @type {string} - * @memberof User + * @type {FavoriteGroupVisibility} + * @memberof UpdateFavoriteGroupRequest */ - 'instanceId'?: string; + 'visibility'?: FavoriteGroupVisibility; /** - * - * @type {boolean} - * @memberof User + * Tags on FavoriteGroups are believed to do nothing. + * @type {Array} + * @memberof UpdateFavoriteGroupRequest */ - 'isFriend': boolean; + 'tags'?: Array; +} +/** + * + * @export + * @interface UpdateInviteMessageRequest + */ +export interface UpdateInviteMessageRequest { /** * * @type {string} - * @memberof User + * @memberof UpdateInviteMessageRequest */ - 'last_login': string; + 'message': string; +} +/** + * + * @export + * @interface UpdateUserRequest + */ +export interface UpdateUserRequest { /** - * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. + * * @type {string} - * @memberof User + * @memberof UpdateUserRequest */ - 'last_platform': string; + 'email'?: string; /** * * @type {string} - * @memberof User + * @memberof UpdateUserRequest */ - 'location'?: string; + 'birthday'?: string; /** * - * @type {string} - * @memberof User + * @type {number} + * @memberof UpdateUserRequest */ - 'profilePicOverride': string; + 'acceptedTOSVersion'?: number; /** * - * @type {UserState} - * @memberof User + * @type {Array} + * @memberof UpdateUserRequest */ - 'state': UserState; + 'tags'?: Array; /** * * @type {UserStatus} - * @memberof User + * @memberof UpdateUserRequest */ - 'status': UserStatus; + 'status'?: UserStatus; /** * * @type {string} - * @memberof User + * @memberof UpdateUserRequest */ - 'statusDescription': string; + 'statusDescription'?: string; + /** + * + * @type {string} + * @memberof UpdateUserRequest + */ + 'bio'?: string; /** * * @type {Array} - * @memberof User + * @memberof UpdateUserRequest */ - 'tags': Array; + 'bioLinks'?: Array; + /** + * MUST be a valid VRChat /file/ url. + * @type {string} + * @memberof UpdateUserRequest + */ + 'userIcon'?: string; +} +/** + * + * @export + * @interface UpdateWorldRequest + */ +export interface UpdateWorldRequest { /** * * @type {string} - * @memberof User + * @memberof UpdateWorldRequest */ - 'userIcon': string; + 'assetUrl'?: string; /** * * @type {string} - * @memberof User + * @memberof UpdateWorldRequest */ - 'username': string; + 'assetVersion'?: string; /** * * @type {string} - * @memberof User + * @memberof UpdateWorldRequest */ - 'worldId'?: string; -} -/** - * Status object representing if a queried user by username or userId exists or not. This model is primarily used by the `/auth/exists` endpoint, which in turn is used during registration. Please see the documentation on that endpoint for more information on usage. - * @export - * @interface UserExists - */ -export interface UserExists { + 'authorId'?: string; /** - * Status if a user exist with that username or userId. - * @type {boolean} - * @memberof UserExists + * + * @type {string} + * @memberof UpdateWorldRequest */ - 'userExists': boolean; -} -/** - * * \"online\" User is online in VRChat * \"active\" User is online, but not in VRChat * \"offline\" User is offline Always offline when returned through `getCurrentUser` (/auth/user). - * @export - * @enum {string} - */ - -export enum UserState { - Offline = 'offline', - Active = 'active', - Online = 'online' -} - -/** - * Defines the User\'s current status, for example \"ask me\", \"join me\" or \"offline. This status is a combined indicator of their online activity and privacy preference. - * @export - * @enum {string} - */ - -export enum UserStatus { - Active = 'active', - JoinMe = 'join me', - AskMe = 'ask me', - Busy = 'busy', - Offline = 'offline' -} - -/** - * - * @export - * @interface Verify2FAResult - */ -export interface Verify2FAResult { - /** - * - * @type {boolean} - * @memberof Verify2FAResult - */ - 'verified': boolean; -} -/** - * - * @export - * @interface VerifyAuthTokenResult - */ -export interface VerifyAuthTokenResult { + 'authorName'?: string; /** * - * @type {boolean} - * @memberof VerifyAuthTokenResult + * @type {number} + * @memberof UpdateWorldRequest */ - 'ok': boolean; + 'capacity'?: number; /** * * @type {string} - * @memberof VerifyAuthTokenResult + * @memberof UpdateWorldRequest */ - 'token': string; -} -/** - * - * @export - * @interface World - */ -export interface World { + 'description'?: string; /** * * @type {string} - * @memberof World - */ - 'assetUrl': string; - /** - * - * @type {object} - * @memberof World + * @memberof UpdateWorldRequest */ - 'assetUrlObject': object; + 'imageUrl'?: string; /** * * @type {string} - * @memberof World + * @memberof UpdateWorldRequest */ - 'authorId': string; + 'name'?: string; /** - * + * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. * @type {string} - * @memberof World + * @memberof UpdateWorldRequest */ - 'authorName': string; + 'platform'?: string; /** * - * @type {number} - * @memberof World + * @type {ReleaseStatus} + * @memberof UpdateWorldRequest */ - 'capacity': number; + 'releaseStatus'?: ReleaseStatus; /** * - * @type {string} - * @memberof World + * @type {Array} + * @memberof UpdateWorldRequest */ - 'created_at': string; + 'tags'?: Array; /** * * @type {string} - * @memberof World + * @memberof UpdateWorldRequest */ - 'description': string; + 'unityPackageUrl'?: string; /** * - * @type {number} - * @memberof World + * @type {string} + * @memberof UpdateWorldRequest */ - 'favorites'?: number; + 'unityVersion'?: string; +} +/** + * + * @export + * @interface User + */ +export interface User { /** * * @type {boolean} - * @memberof World + * @memberof User */ - 'featured': boolean; + 'allowAvatarCopying': boolean; /** * - * @type {number} - * @memberof World + * @type {string} + * @memberof User */ - 'heat': number; + 'bio': string; /** * - * @type {string} - * @memberof World + * @type {Array} + * @memberof User */ - 'id': string; + 'bioLinks': Array; /** * * @type {string} - * @memberof World + * @memberof User */ - 'imageUrl': string; + 'currentAvatarImageUrl': string; /** * - * @type {Array>} - * @memberof World + * @type {string} + * @memberof User */ - 'instances'?: Array>; + 'currentAvatarThumbnailImageUrl': string; /** * * @type {string} - * @memberof World + * @memberof User */ - 'labsPublicationDate': string; + 'date_joined': string; /** * - * @type {string} - * @memberof World + * @type {DeveloperType} + * @memberof User */ - 'name': string; + 'developerType': DeveloperType; /** * * @type {string} - * @memberof World + * @memberof User */ - 'namespace': string; + 'displayName': string; /** * - * @type {number} - * @memberof World + * @type {string} + * @memberof User */ - 'occupants'?: number; + 'friendKey': string; /** * * @type {string} - * @memberof World + * @memberof User */ - 'organization': string; + 'id': string; /** * - * @type {object} - * @memberof World + * @type {string} + * @memberof User */ - 'pluginUrlObject': object; + 'instanceId'?: string; /** * - * @type {number} - * @memberof World + * @type {boolean} + * @memberof User */ - 'popularity': number; + 'isFriend': boolean; /** * * @type {string} - * @memberof World + * @memberof User */ - 'previewYoutubeId'?: string; + 'last_login': string; /** - * - * @type {number} - * @memberof World + * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. + * @type {string} + * @memberof User */ - 'privateOccupants'?: number; + 'last_platform': string; /** * - * @type {number} - * @memberof World + * @type {string} + * @memberof User */ - 'publicOccupants'?: number; + 'location'?: string; /** * * @type {string} - * @memberof World + * @memberof User */ - 'publicationDate': string; + 'profilePicOverride': string; /** * - * @type {ReleaseStatus} - * @memberof World + * @type {UserState} + * @memberof User */ - 'releaseStatus': ReleaseStatus; + 'state': UserState; /** * - * @type {Array} - * @memberof World + * @type {UserStatus} + * @memberof User */ - 'tags': Array; + 'status': UserStatus; /** * * @type {string} - * @memberof World - */ - 'thumbnailImageUrl': string; - /** - * - * @type {object} - * @memberof World + * @memberof User */ - 'unityPackageUrlObject': object; + 'statusDescription': string; /** * - * @type {Array} - * @memberof World + * @type {Array} + * @memberof User */ - 'unityPackages': Array; + 'tags': Array; /** * * @type {string} - * @memberof World + * @memberof User */ - 'updated_at': string; + 'userIcon': string; /** * - * @type {number} - * @memberof World + * @type {string} + * @memberof User */ - 'version': number; + 'username': string; /** * - * @type {number} - * @memberof World + * @type {string} + * @memberof User */ - 'visits': number; + 'worldId'?: string; } /** - * + * Status object representing if a queried user by username or userId exists or not. This model is primarily used by the `/auth/exists` endpoint, which in turn is used during registration. Please see the documentation on that endpoint for more information on usage. * @export - * @interface WorldMetadata + * @interface UserExists */ -export interface WorldMetadata { - /** - * - * @type {string} - * @memberof WorldMetadata - */ - 'id': string; +export interface UserExists { /** - * - * @type {object} - * @memberof WorldMetadata + * Status if a user exist with that username or userId. + * @type {boolean} + * @memberof UserExists */ - 'metadata': object; + 'userExists': boolean; } +/** + * * \"online\" User is online in VRChat * \"active\" User is online, but not in VRChat * \"offline\" User is offline Always offline when returned through `getCurrentUser` (/auth/user). + * @export + * @enum {string} + */ + +export enum UserState { + Offline = 'offline', + Active = 'active', + Online = 'online' +} + +/** + * Defines the User\'s current status, for example \"ask me\", \"join me\" or \"offline. This status is a combined indicator of their online activity and privacy preference. + * @export + * @enum {string} + */ + +export enum UserStatus { + Active = 'active', + JoinMe = 'join me', + AskMe = 'ask me', + Busy = 'busy', + Offline = 'offline' +} + /** * * @export - * @interface WorldPublishStatus + * @interface UserSubscription */ -export interface WorldPublishStatus { +export interface UserSubscription { + /** + * + * @type {string} + * @memberof UserSubscription + */ + 'id': string; + /** + * + * @type {string} + * @memberof UserSubscription + */ + 'transactionId': string; + /** + * Which \"Store\" it came from. Right now only Stores are \"Steam\" and \"Admin\". + * @type {string} + * @memberof UserSubscription + */ + 'store': string; + /** + * + * @type {string} + * @memberof UserSubscription + */ + 'steamItemId'?: string; + /** + * + * @type {number} + * @memberof UserSubscription + */ + 'amount': number; + /** + * + * @type {string} + * @memberof UserSubscription + */ + 'description': string; + /** + * + * @type {SubscriptionPeriod} + * @memberof UserSubscription + */ + 'period': SubscriptionPeriod; + /** + * + * @type {number} + * @memberof UserSubscription + */ + 'tier': number; + /** + * + * @type {boolean} + * @memberof UserSubscription + */ + 'active': boolean; + /** + * + * @type {TransactionStatus} + * @memberof UserSubscription + */ + 'status': TransactionStatus; + /** + * + * @type {string} + * @memberof UserSubscription + */ + 'expires': string; + /** + * + * @type {string} + * @memberof UserSubscription + */ + 'created_at': string; + /** + * + * @type {string} + * @memberof UserSubscription + */ + 'updated_at': string; + /** + * + * @type {Array} + * @memberof UserSubscription + */ + 'licenseGroups': Array; + /** + * + * @type {boolean} + * @memberof UserSubscription + */ + 'isGift': boolean; +} +/** + * + * @export + * @interface Verify2FAResult + */ +export interface Verify2FAResult { + /** + * + * @type {boolean} + * @memberof Verify2FAResult + */ + 'verified': boolean; +} +/** + * + * @export + * @interface VerifyAuthTokenResult + */ +export interface VerifyAuthTokenResult { + /** + * + * @type {boolean} + * @memberof VerifyAuthTokenResult + */ + 'ok': boolean; + /** + * + * @type {string} + * @memberof VerifyAuthTokenResult + */ + 'token': string; +} +/** + * + * @export + * @interface World + */ +export interface World { + /** + * + * @type {string} + * @memberof World + */ + 'assetUrl': string; + /** + * + * @type {object} + * @memberof World + */ + 'assetUrlObject': object; + /** + * + * @type {string} + * @memberof World + */ + 'authorId': string; + /** + * + * @type {string} + * @memberof World + */ + 'authorName': string; + /** + * + * @type {number} + * @memberof World + */ + 'capacity': number; + /** + * + * @type {string} + * @memberof World + */ + 'created_at': string; + /** + * + * @type {string} + * @memberof World + */ + 'description': string; + /** + * + * @type {number} + * @memberof World + */ + 'favorites'?: number; + /** + * + * @type {boolean} + * @memberof World + */ + 'featured': boolean; + /** + * + * @type {number} + * @memberof World + */ + 'heat': number; + /** + * + * @type {string} + * @memberof World + */ + 'id': string; + /** + * + * @type {string} + * @memberof World + */ + 'imageUrl': string; + /** + * + * @type {Array>} + * @memberof World + */ + 'instances'?: Array>; + /** + * + * @type {string} + * @memberof World + */ + 'labsPublicationDate': string; + /** + * + * @type {string} + * @memberof World + */ + 'name': string; + /** + * + * @type {string} + * @memberof World + */ + 'namespace': string; + /** + * + * @type {number} + * @memberof World + */ + 'occupants'?: number; + /** + * + * @type {string} + * @memberof World + */ + 'organization': string; + /** + * + * @type {object} + * @memberof World + */ + 'pluginUrlObject': object; + /** + * + * @type {number} + * @memberof World + */ + 'popularity': number; + /** + * + * @type {string} + * @memberof World + */ + 'previewYoutubeId'?: string; + /** + * + * @type {number} + * @memberof World + */ + 'privateOccupants'?: number; + /** + * + * @type {number} + * @memberof World + */ + 'publicOccupants'?: number; + /** + * + * @type {string} + * @memberof World + */ + 'publicationDate': string; + /** + * + * @type {ReleaseStatus} + * @memberof World + */ + 'releaseStatus': ReleaseStatus; + /** + * + * @type {Array} + * @memberof World + */ + 'tags': Array; + /** + * + * @type {string} + * @memberof World + */ + 'thumbnailImageUrl': string; + /** + * + * @type {object} + * @memberof World + */ + 'unityPackageUrlObject': object; + /** + * + * @type {Array} + * @memberof World + */ + 'unityPackages': Array; + /** + * + * @type {string} + * @memberof World + */ + 'updated_at': string; + /** + * + * @type {number} + * @memberof World + */ + 'version': number; + /** + * + * @type {number} + * @memberof World + */ + 'visits': number; +} +/** + * + * @export + * @interface WorldMetadata + */ +export interface WorldMetadata { + /** + * + * @type {string} + * @memberof WorldMetadata + */ + 'id': string; + /** + * + * @type {object} + * @memberof WorldMetadata + */ + 'metadata': object; +} +/** + * + * @export + * @interface WorldPublishStatus + */ +export interface WorldPublishStatus { + /** + * + * @type {boolean} + * @memberof WorldPublishStatus + */ + 'canPubilsh': boolean; +} + +/** + * AuthenticationApi - axios parameter creator + * @export + */ +export const AuthenticationApiAxiosParamCreator = function (configuration?: Configuration) { + return { + /** + * Checks if a user by a given `username`, `displayName` or `email` exist. This is used during registration to check if a username has already been taken, during change of displayName to check if a displayName is available, and during change of email to check if the email is already used. In the later two cases the `excludeUserId` is used to exclude oneself, otherwise the result would always be true. It is **REQUIRED** to include **AT LEAST** `username`, `displayName` **or** `email` query parameter. Although they can be combined - in addition with `excludeUserId` (generally to exclude yourself) - to further fine-tune the search. + * @summary Check User Exists + * @param {string} [email] Filter by email. + * @param {string} [displayName] Filter by displayName. + * @param {string} [userId] Filter by UserID. + * @param {string} [excludeUserId] Exclude by UserID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + checkUserExists: async (email?: string, displayName?: string, userId?: string, excludeUserId?: string, options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/auth/exists`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + if (email !== undefined) { + localVarQueryParameter['email'] = email; + } + + if (displayName !== undefined) { + localVarQueryParameter['displayName'] = displayName; + } + + if (userId !== undefined) { + localVarQueryParameter['userId'] = userId; + } + + if (excludeUserId !== undefined) { + localVarQueryParameter['excludeUserId'] = excludeUserId; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Deletes the account with given ID. Normal users only have permission to delete their own account. Account deletion is 14 days from this request, and will be cancelled if you do an authenticated request with the account afterwards. **VRC+ NOTE:** Despite the 14-days cooldown, any VRC+ subscription will be cancelled **immediately**. **METHOD NOTE:** Despite this being a Delete action, the method type required is PUT. + * @summary Delete User + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + deleteUser: async (userId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'userId' is not null or undefined + assertParamExists('deleteUser', 'userId', userId) + const localVarPath = `/user/{userId}/delete` + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * This endpoint does the following two operations: 1) Checks if you are already logged in by looking for a valid `auth` cookie. If you are have a valid auth cookie then no additional auth-related actions are taken. If you are **not** logged in then it will log you in with the `Authorization` header and set the `auth` cookie. The `auth` cookie will only be sent once. 2) If logged in, this function will also return the CurrentUser object containing detailed information about the currently logged in user. **WARNING: Session Limit:** Each authentication with login credentials counts as a separate session, out of which you have a limited amount. Make sure to save and reuse the `auth` cookie if you are often restarting the program. The provided API libraries automatically save cookies during runtime, but does not persist during restart. While it can be fine to use username/password during development, expect in production to very fast run into the rate-limit and be temporarily blocked from making new sessions until older ones expire. The exact number of simultaneous sessions is unknown/undisclosed. + * @summary Login and/or Get Current User Info + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getCurrentUser: async (options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/auth/user`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + // authentication authHeader required + // http basic authentication required + setBasicAuthToObject(localVarRequestOptions, configuration) + + // authentication twoFactorAuthCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Invalidates the login session. + * @summary Logout + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + logout: async (options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/logout`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Finishes the login sequence with a normal 2FA-generated code for accounts with 2FA-protection enabled. + * @summary Verify 2FA code + * @param {TwoFactorAuthCode} [twoFactorAuthCode] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + verify2FA: async (twoFactorAuthCode?: TwoFactorAuthCode, options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/auth/twofactorauth/totp/verify`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(twoFactorAuthCode, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Verify whether the currently provided Auth Token is valid. + * @summary Verify Auth Token + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + verifyAuthToken: async (options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/auth`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Finishes the login sequence with an OTP (One Time Password) recovery code for accounts with 2FA-protection enabled. + * @summary Verify 2FA code with Recovery code + * @param {TwoFactorAuthCode} [twoFactorAuthCode] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + verifyRecoveryCode: async (twoFactorAuthCode?: TwoFactorAuthCode, options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/auth/twofactorauth/otp/verify`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(twoFactorAuthCode, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + } +}; + +/** + * AuthenticationApi - functional programming interface + * @export + */ +export const AuthenticationApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = AuthenticationApiAxiosParamCreator(configuration) + return { + /** + * Checks if a user by a given `username`, `displayName` or `email` exist. This is used during registration to check if a username has already been taken, during change of displayName to check if a displayName is available, and during change of email to check if the email is already used. In the later two cases the `excludeUserId` is used to exclude oneself, otherwise the result would always be true. It is **REQUIRED** to include **AT LEAST** `username`, `displayName` **or** `email` query parameter. Although they can be combined - in addition with `excludeUserId` (generally to exclude yourself) - to further fine-tune the search. + * @summary Check User Exists + * @param {string} [email] Filter by email. + * @param {string} [displayName] Filter by displayName. + * @param {string} [userId] Filter by UserID. + * @param {string} [excludeUserId] Exclude by UserID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async checkUserExists(email?: string, displayName?: string, userId?: string, excludeUserId?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.checkUserExists(email, displayName, userId, excludeUserId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Deletes the account with given ID. Normal users only have permission to delete their own account. Account deletion is 14 days from this request, and will be cancelled if you do an authenticated request with the account afterwards. **VRC+ NOTE:** Despite the 14-days cooldown, any VRC+ subscription will be cancelled **immediately**. **METHOD NOTE:** Despite this being a Delete action, the method type required is PUT. + * @summary Delete User + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async deleteUser(userId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.deleteUser(userId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * This endpoint does the following two operations: 1) Checks if you are already logged in by looking for a valid `auth` cookie. If you are have a valid auth cookie then no additional auth-related actions are taken. If you are **not** logged in then it will log you in with the `Authorization` header and set the `auth` cookie. The `auth` cookie will only be sent once. 2) If logged in, this function will also return the CurrentUser object containing detailed information about the currently logged in user. **WARNING: Session Limit:** Each authentication with login credentials counts as a separate session, out of which you have a limited amount. Make sure to save and reuse the `auth` cookie if you are often restarting the program. The provided API libraries automatically save cookies during runtime, but does not persist during restart. While it can be fine to use username/password during development, expect in production to very fast run into the rate-limit and be temporarily blocked from making new sessions until older ones expire. The exact number of simultaneous sessions is unknown/undisclosed. + * @summary Login and/or Get Current User Info + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getCurrentUser(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getCurrentUser(options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Invalidates the login session. + * @summary Logout + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async logout(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.logout(options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Finishes the login sequence with a normal 2FA-generated code for accounts with 2FA-protection enabled. + * @summary Verify 2FA code + * @param {TwoFactorAuthCode} [twoFactorAuthCode] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async verify2FA(twoFactorAuthCode?: TwoFactorAuthCode, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.verify2FA(twoFactorAuthCode, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Verify whether the currently provided Auth Token is valid. + * @summary Verify Auth Token + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async verifyAuthToken(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.verifyAuthToken(options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Finishes the login sequence with an OTP (One Time Password) recovery code for accounts with 2FA-protection enabled. + * @summary Verify 2FA code with Recovery code + * @param {TwoFactorAuthCode} [twoFactorAuthCode] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async verifyRecoveryCode(twoFactorAuthCode?: TwoFactorAuthCode, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.verifyRecoveryCode(twoFactorAuthCode, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + } +}; + +/** + * AuthenticationApi - factory interface + * @export + */ +export const AuthenticationApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = AuthenticationApiFp(configuration) + return { + /** + * Checks if a user by a given `username`, `displayName` or `email` exist. This is used during registration to check if a username has already been taken, during change of displayName to check if a displayName is available, and during change of email to check if the email is already used. In the later two cases the `excludeUserId` is used to exclude oneself, otherwise the result would always be true. It is **REQUIRED** to include **AT LEAST** `username`, `displayName` **or** `email` query parameter. Although they can be combined - in addition with `excludeUserId` (generally to exclude yourself) - to further fine-tune the search. + * @summary Check User Exists + * @param {string} [email] Filter by email. + * @param {string} [displayName] Filter by displayName. + * @param {string} [userId] Filter by UserID. + * @param {string} [excludeUserId] Exclude by UserID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + checkUserExists(email?: string, displayName?: string, userId?: string, excludeUserId?: string, options?: any): AxiosPromise { + return localVarFp.checkUserExists(email, displayName, userId, excludeUserId, options).then((request) => request(axios, basePath)); + }, + /** + * Deletes the account with given ID. Normal users only have permission to delete their own account. Account deletion is 14 days from this request, and will be cancelled if you do an authenticated request with the account afterwards. **VRC+ NOTE:** Despite the 14-days cooldown, any VRC+ subscription will be cancelled **immediately**. **METHOD NOTE:** Despite this being a Delete action, the method type required is PUT. + * @summary Delete User + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + deleteUser(userId: string, options?: any): AxiosPromise { + return localVarFp.deleteUser(userId, options).then((request) => request(axios, basePath)); + }, + /** + * This endpoint does the following two operations: 1) Checks if you are already logged in by looking for a valid `auth` cookie. If you are have a valid auth cookie then no additional auth-related actions are taken. If you are **not** logged in then it will log you in with the `Authorization` header and set the `auth` cookie. The `auth` cookie will only be sent once. 2) If logged in, this function will also return the CurrentUser object containing detailed information about the currently logged in user. **WARNING: Session Limit:** Each authentication with login credentials counts as a separate session, out of which you have a limited amount. Make sure to save and reuse the `auth` cookie if you are often restarting the program. The provided API libraries automatically save cookies during runtime, but does not persist during restart. While it can be fine to use username/password during development, expect in production to very fast run into the rate-limit and be temporarily blocked from making new sessions until older ones expire. The exact number of simultaneous sessions is unknown/undisclosed. + * @summary Login and/or Get Current User Info + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getCurrentUser(options?: any): AxiosPromise { + return localVarFp.getCurrentUser(options).then((request) => request(axios, basePath)); + }, + /** + * Invalidates the login session. + * @summary Logout + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + logout(options?: any): AxiosPromise { + return localVarFp.logout(options).then((request) => request(axios, basePath)); + }, + /** + * Finishes the login sequence with a normal 2FA-generated code for accounts with 2FA-protection enabled. + * @summary Verify 2FA code + * @param {TwoFactorAuthCode} [twoFactorAuthCode] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + verify2FA(twoFactorAuthCode?: TwoFactorAuthCode, options?: any): AxiosPromise { + return localVarFp.verify2FA(twoFactorAuthCode, options).then((request) => request(axios, basePath)); + }, + /** + * Verify whether the currently provided Auth Token is valid. + * @summary Verify Auth Token + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + verifyAuthToken(options?: any): AxiosPromise { + return localVarFp.verifyAuthToken(options).then((request) => request(axios, basePath)); + }, + /** + * Finishes the login sequence with an OTP (One Time Password) recovery code for accounts with 2FA-protection enabled. + * @summary Verify 2FA code with Recovery code + * @param {TwoFactorAuthCode} [twoFactorAuthCode] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + verifyRecoveryCode(twoFactorAuthCode?: TwoFactorAuthCode, options?: any): AxiosPromise { + return localVarFp.verifyRecoveryCode(twoFactorAuthCode, options).then((request) => request(axios, basePath)); + }, + }; +}; + +/** + * AuthenticationApi - object-oriented interface + * @export + * @class AuthenticationApi + * @extends {BaseAPI} + */ +export class AuthenticationApi extends BaseAPI { + /** + * Checks if a user by a given `username`, `displayName` or `email` exist. This is used during registration to check if a username has already been taken, during change of displayName to check if a displayName is available, and during change of email to check if the email is already used. In the later two cases the `excludeUserId` is used to exclude oneself, otherwise the result would always be true. It is **REQUIRED** to include **AT LEAST** `username`, `displayName` **or** `email` query parameter. Although they can be combined - in addition with `excludeUserId` (generally to exclude yourself) - to further fine-tune the search. + * @summary Check User Exists + * @param {string} [email] Filter by email. + * @param {string} [displayName] Filter by displayName. + * @param {string} [userId] Filter by UserID. + * @param {string} [excludeUserId] Exclude by UserID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AuthenticationApi + */ + public checkUserExists(email?: string, displayName?: string, userId?: string, excludeUserId?: string, options?: AxiosRequestConfig) { + return AuthenticationApiFp(this.configuration).checkUserExists(email, displayName, userId, excludeUserId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Deletes the account with given ID. Normal users only have permission to delete their own account. Account deletion is 14 days from this request, and will be cancelled if you do an authenticated request with the account afterwards. **VRC+ NOTE:** Despite the 14-days cooldown, any VRC+ subscription will be cancelled **immediately**. **METHOD NOTE:** Despite this being a Delete action, the method type required is PUT. + * @summary Delete User + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AuthenticationApi + */ + public deleteUser(userId: string, options?: AxiosRequestConfig) { + return AuthenticationApiFp(this.configuration).deleteUser(userId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * This endpoint does the following two operations: 1) Checks if you are already logged in by looking for a valid `auth` cookie. If you are have a valid auth cookie then no additional auth-related actions are taken. If you are **not** logged in then it will log you in with the `Authorization` header and set the `auth` cookie. The `auth` cookie will only be sent once. 2) If logged in, this function will also return the CurrentUser object containing detailed information about the currently logged in user. **WARNING: Session Limit:** Each authentication with login credentials counts as a separate session, out of which you have a limited amount. Make sure to save and reuse the `auth` cookie if you are often restarting the program. The provided API libraries automatically save cookies during runtime, but does not persist during restart. While it can be fine to use username/password during development, expect in production to very fast run into the rate-limit and be temporarily blocked from making new sessions until older ones expire. The exact number of simultaneous sessions is unknown/undisclosed. + * @summary Login and/or Get Current User Info + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AuthenticationApi + */ + public getCurrentUser(options?: AxiosRequestConfig) { + return AuthenticationApiFp(this.configuration).getCurrentUser(options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Invalidates the login session. + * @summary Logout + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AuthenticationApi + */ + public logout(options?: AxiosRequestConfig) { + return AuthenticationApiFp(this.configuration).logout(options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Finishes the login sequence with a normal 2FA-generated code for accounts with 2FA-protection enabled. + * @summary Verify 2FA code + * @param {TwoFactorAuthCode} [twoFactorAuthCode] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AuthenticationApi + */ + public verify2FA(twoFactorAuthCode?: TwoFactorAuthCode, options?: AxiosRequestConfig) { + return AuthenticationApiFp(this.configuration).verify2FA(twoFactorAuthCode, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Verify whether the currently provided Auth Token is valid. + * @summary Verify Auth Token + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AuthenticationApi + */ + public verifyAuthToken(options?: AxiosRequestConfig) { + return AuthenticationApiFp(this.configuration).verifyAuthToken(options).then((request) => request(this.axios, this.basePath)); + } + /** - * - * @type {boolean} - * @memberof WorldPublishStatus + * Finishes the login sequence with an OTP (One Time Password) recovery code for accounts with 2FA-protection enabled. + * @summary Verify 2FA code with Recovery code + * @param {TwoFactorAuthCode} [twoFactorAuthCode] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AuthenticationApi */ - 'canPubilsh': boolean; + public verifyRecoveryCode(twoFactorAuthCode?: TwoFactorAuthCode, options?: AxiosRequestConfig) { + return AuthenticationApiFp(this.configuration).verifyRecoveryCode(twoFactorAuthCode, options).then((request) => request(this.axios, this.basePath)); + } } + /** - * AuthenticationApi - axios parameter creator + * AvatarsApi - axios parameter creator * @export */ -export const AuthenticationApiAxiosParamCreator = function (configuration?: Configuration) { +export const AvatarsApiAxiosParamCreator = function (configuration?: Configuration) { return { /** - * Checks if a user by a given `username`, `displayName` or `email` exist. This is used during registration to check if a username has already been taken, during change of displayName to check if a displayName is available, and during change of email to check if the email is already used. In the later two cases the `excludeUserId` is used to exclude oneself, otherwise the result would always be true. It is **REQUIRED** to include **AT LEAST** `username`, `displayName` **or** `email` query parameter. Although they can be combined - in addition with `excludeUserId` (generally to exclude yourself) - to further fine-tune the search. - * @summary Check User Exists - * @param {string} [email] Filter by email. - * @param {string} [displayName] Filter by displayName. - * @param {string} [userId] Filter by UserID. - * @param {string} [excludeUserId] Exclude by UserID. + * Create an avatar. It\'s possible to optionally specify a ID if you want a custom one. Attempting to create an Avatar with an already claimed ID will result in a DB error. + * @summary Create Avatar + * @param {CreateAvatarRequest} [createAvatarRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - checkUserExists: async (email?: string, displayName?: string, userId?: string, excludeUserId?: string, options: AxiosRequestConfig = {}): Promise => { - const localVarPath = `/auth/exists`; + createAvatar: async (createAvatarRequest?: CreateAvatarRequest, options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/avatars`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -3364,28 +4372,55 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; // authentication apiKeyCookie required - if (email !== undefined) { - localVarQueryParameter['email'] = email; - } + // authentication authCookie required - if (displayName !== undefined) { - localVarQueryParameter['displayName'] = displayName; - } - if (userId !== undefined) { - localVarQueryParameter['userId'] = userId; - } + + localVarHeaderParameter['Content-Type'] = 'application/json'; - if (excludeUserId !== undefined) { - localVarQueryParameter['excludeUserId'] = excludeUserId; + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(createAvatarRequest, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Delete an avatar. Notice an avatar is never fully \"deleted\", only its ReleaseStatus is set to \"hidden\" and the linked Files are deleted. The AvatarID is permanently reserved. + * @summary Delete Avatar + * @param {string} avatarId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + deleteAvatar: async (avatarId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'avatarId' is not null or undefined + assertParamExists('deleteAvatar', 'avatarId', avatarId) + const localVarPath = `/avatars/{avatarId}` + .replace(`{${"avatarId"}}`, encodeURIComponent(String(avatarId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; } + const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + setSearchParams(localVarUrlObj, localVarQueryParameter); @@ -3398,17 +4433,17 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf }; }, /** - * Deletes the account with given ID. Normal users only have permission to delete their own account. Account deletion is 14 days from this request, and will be cancelled if you do an authenticated request with the account afterwards. **VRC+ NOTE:** Despite the 14-days cooldown, any VRC+ subscription will be cancelled **immediately**. **METHOD NOTE:** Despite this being a Delete action, the method type required is PUT. - * @summary Delete User - * @param {string} userId + * Get information about a specific Avatar. + * @summary Get Avatar + * @param {string} avatarId * @param {*} [options] Override http request option. * @throws {RequiredError} */ - deleteUser: async (userId: string, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'userId' is not null or undefined - assertParamExists('deleteUser', 'userId', userId) - const localVarPath = `/user/{userId}/delete` - .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); + getAvatar: async (avatarId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'avatarId' is not null or undefined + assertParamExists('getAvatar', 'avatarId', avatarId) + const localVarPath = `/avatars/{avatarId}` + .replace(`{${"avatarId"}}`, encodeURIComponent(String(avatarId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -3416,7 +4451,7 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; @@ -3436,13 +4471,26 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf }; }, /** - * This endpoint does the following two operations: 1) Checks if you are already logged in by looking for a valid `auth` cookie. If you are have a valid auth cookie then no additional auth-related actions are taken. If you are **not** logged in then it will log you in with the `Authorization` header and set the `auth` cookie. The `auth` cookie will only be sent once. 2) If logged in, this function will also return the CurrentUser object containing detailed information about the currently logged in user. **WARNING: Session Limit:** Each authentication with login credentials counts as a separate session, out of which you have a limited amount. Make sure to save and reuse the `auth` cookie if you are often restarting the program. The provided API libraries automatically save cookies during runtime, but does not persist during restart. While it can be fine to use username/password during development, expect in production to very fast run into the rate-limit and be temporarily blocked from making new sessions until older ones expire. The exact number of simultaneous sessions is unknown/undisclosed. - * @summary Login and/or Get Current User Info + * Search and list favorited avatars by query filters. + * @summary List Favorited Avatars + * @param {string} [featured] Filters on featured results. + * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] + * @param {number} [n] The number of objects to return. + * @param {'ascending' | 'descending'} [order] + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [search] Filters by world name. + * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [notag] Tags to exclude (comma-separated). + * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. + * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. + * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. + * @param {string} [platform] The platform the asset supports. + * @param {string} [userId] Target user to see information on, admin-only. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getCurrentUser: async (options: AxiosRequestConfig = {}): Promise => { - const localVarPath = `/auth/user`; + getFavoritedAvatars: async (featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/avatars/favorites`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -3454,13 +4502,61 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; + // authentication apiKeyCookie required + // authentication authCookie required - // authentication authHeader required - // http basic authentication required - setBasicAuthToObject(localVarRequestOptions, configuration) + if (featured !== undefined) { + localVarQueryParameter['featured'] = featured; + } - // authentication twoFactorAuthCookie required + if (sort !== undefined) { + localVarQueryParameter['sort'] = sort; + } + + if (n !== undefined) { + localVarQueryParameter['n'] = n; + } + + if (order !== undefined) { + localVarQueryParameter['order'] = order; + } + + if (offset !== undefined) { + localVarQueryParameter['offset'] = offset; + } + + if (search !== undefined) { + localVarQueryParameter['search'] = search; + } + + if (tag !== undefined) { + localVarQueryParameter['tag'] = tag; + } + + if (notag !== undefined) { + localVarQueryParameter['notag'] = notag; + } + + if (releaseStatus !== undefined) { + localVarQueryParameter['releaseStatus'] = releaseStatus; + } + + if (maxUnityVersion !== undefined) { + localVarQueryParameter['maxUnityVersion'] = maxUnityVersion; + } + + if (minUnityVersion !== undefined) { + localVarQueryParameter['minUnityVersion'] = minUnityVersion; + } + + if (platform !== undefined) { + localVarQueryParameter['platform'] = platform; + } + + if (userId !== undefined) { + localVarQueryParameter['userId'] = userId; + } @@ -3474,13 +4570,26 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf }; }, /** - * Invalidates the login session. - * @summary Logout + * Search and list avatars by query filters. You can only search your own or featured avatars. It is not possible as a normal user to search other peoples avatars. + * @summary Search Avatars + * @param {string} [featured] Filters on featured results. + * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] + * @param {'me'} [user] Set to `me` for searching own avatars. + * @param {string} [userId] Filter by UserID. + * @param {number} [n] The number of objects to return. + * @param {'ascending' | 'descending'} [order] + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [notag] Tags to exclude (comma-separated). + * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. + * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. + * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. + * @param {string} [platform] The platform the asset supports. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - logout: async (options: AxiosRequestConfig = {}): Promise => { - const localVarPath = `/logout`; + searchAvatars: async (featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/avatars`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -3488,11 +4597,65 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication authCookie required + // authentication apiKeyCookie required + + // authentication authCookie required + + if (featured !== undefined) { + localVarQueryParameter['featured'] = featured; + } + + if (sort !== undefined) { + localVarQueryParameter['sort'] = sort; + } + + if (user !== undefined) { + localVarQueryParameter['user'] = user; + } + + if (userId !== undefined) { + localVarQueryParameter['userId'] = userId; + } + + if (n !== undefined) { + localVarQueryParameter['n'] = n; + } + + if (order !== undefined) { + localVarQueryParameter['order'] = order; + } + + if (offset !== undefined) { + localVarQueryParameter['offset'] = offset; + } + + if (tag !== undefined) { + localVarQueryParameter['tag'] = tag; + } + + if (notag !== undefined) { + localVarQueryParameter['notag'] = notag; + } + + if (releaseStatus !== undefined) { + localVarQueryParameter['releaseStatus'] = releaseStatus; + } + + if (maxUnityVersion !== undefined) { + localVarQueryParameter['maxUnityVersion'] = maxUnityVersion; + } + + if (minUnityVersion !== undefined) { + localVarQueryParameter['minUnityVersion'] = minUnityVersion; + } + + if (platform !== undefined) { + localVarQueryParameter['platform'] = platform; + } @@ -3506,14 +4669,17 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf }; }, /** - * Finishes the login sequence with a normal 2FA-generated code for accounts with 2FA-protection enabled. - * @summary Verify 2FA code - * @param {TwoFactorAuthCode} [twoFactorAuthCode] + * Switches into that avatar. + * @summary Select Avatar + * @param {string} avatarId * @param {*} [options] Override http request option. * @throws {RequiredError} */ - verify2FA: async (twoFactorAuthCode?: TwoFactorAuthCode, options: AxiosRequestConfig = {}): Promise => { - const localVarPath = `/auth/twofactorauth/totp/verify`; + selectAvatar: async (avatarId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'avatarId' is not null or undefined + assertParamExists('selectAvatar', 'avatarId', avatarId) + const localVarPath = `/avatars/{avatarId}/select` + .replace(`{${"avatarId"}}`, encodeURIComponent(String(avatarId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -3521,20 +4687,19 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; + // authentication apiKeyCookie required + // authentication authCookie required - localVarHeaderParameter['Content-Type'] = 'application/json'; - setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - localVarRequestOptions.data = serializeDataIfNeeded(twoFactorAuthCode, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), @@ -3542,13 +4707,17 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf }; }, /** - * Verify whether the currently provided Auth Token is valid. - * @summary Verify Auth Token + * Switches into that avatar as your fallback avatar. + * @summary Select Fallback Avatar + * @param {string} avatarId * @param {*} [options] Override http request option. * @throws {RequiredError} */ - verifyAuthToken: async (options: AxiosRequestConfig = {}): Promise => { - const localVarPath = `/auth`; + selectFallbackAvatar: async (avatarId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'avatarId' is not null or undefined + assertParamExists('selectFallbackAvatar', 'avatarId', avatarId) + const localVarPath = `/avatars/{avatarId}/selectFallback` + .replace(`{${"avatarId"}}`, encodeURIComponent(String(avatarId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -3556,10 +4725,12 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; + // authentication apiKeyCookie required + // authentication authCookie required @@ -3574,14 +4745,18 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf }; }, /** - * Finishes the login sequence with an OTP (One Time Password) recovery code for accounts with 2FA-protection enabled. - * @summary Verify 2FA code with Recovery code - * @param {TwoFactorAuthCode} [twoFactorAuthCode] + * Update information about a specific avatar. + * @summary Update Avatar + * @param {string} avatarId + * @param {UpdateAvatarRequest} [updateAvatarRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - verifyRecoveryCode: async (twoFactorAuthCode?: TwoFactorAuthCode, options: AxiosRequestConfig = {}): Promise => { - const localVarPath = `/auth/twofactorauth/otp/verify`; + updateAvatar: async (avatarId: string, updateAvatarRequest?: UpdateAvatarRequest, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'avatarId' is not null or undefined + assertParamExists('updateAvatar', 'avatarId', avatarId) + const localVarPath = `/avatars/{avatarId}` + .replace(`{${"avatarId"}}`, encodeURIComponent(String(avatarId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -3589,10 +4764,12 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; + // authentication apiKeyCookie required + // authentication authCookie required @@ -3602,7 +4779,7 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - localVarRequestOptions.data = serializeDataIfNeeded(twoFactorAuthCode, localVarRequestOptions, configuration) + localVarRequestOptions.data = serializeDataIfNeeded(updateAvatarRequest, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), @@ -3613,406 +4790,387 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf }; /** - * AuthenticationApi - functional programming interface + * AvatarsApi - functional programming interface * @export */ -export const AuthenticationApiFp = function(configuration?: Configuration) { - const localVarAxiosParamCreator = AuthenticationApiAxiosParamCreator(configuration) +export const AvatarsApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = AvatarsApiAxiosParamCreator(configuration) return { /** - * Checks if a user by a given `username`, `displayName` or `email` exist. This is used during registration to check if a username has already been taken, during change of displayName to check if a displayName is available, and during change of email to check if the email is already used. In the later two cases the `excludeUserId` is used to exclude oneself, otherwise the result would always be true. It is **REQUIRED** to include **AT LEAST** `username`, `displayName` **or** `email` query parameter. Although they can be combined - in addition with `excludeUserId` (generally to exclude yourself) - to further fine-tune the search. - * @summary Check User Exists - * @param {string} [email] Filter by email. - * @param {string} [displayName] Filter by displayName. - * @param {string} [userId] Filter by UserID. - * @param {string} [excludeUserId] Exclude by UserID. + * Create an avatar. It\'s possible to optionally specify a ID if you want a custom one. Attempting to create an Avatar with an already claimed ID will result in a DB error. + * @summary Create Avatar + * @param {CreateAvatarRequest} [createAvatarRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async checkUserExists(email?: string, displayName?: string, userId?: string, excludeUserId?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.checkUserExists(email, displayName, userId, excludeUserId, options); + async createAvatar(createAvatarRequest?: CreateAvatarRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.createAvatar(createAvatarRequest, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Deletes the account with given ID. Normal users only have permission to delete their own account. Account deletion is 14 days from this request, and will be cancelled if you do an authenticated request with the account afterwards. **VRC+ NOTE:** Despite the 14-days cooldown, any VRC+ subscription will be cancelled **immediately**. **METHOD NOTE:** Despite this being a Delete action, the method type required is PUT. - * @summary Delete User - * @param {string} userId + * Delete an avatar. Notice an avatar is never fully \"deleted\", only its ReleaseStatus is set to \"hidden\" and the linked Files are deleted. The AvatarID is permanently reserved. + * @summary Delete Avatar + * @param {string} avatarId * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async deleteUser(userId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.deleteUser(userId, options); + async deleteAvatar(avatarId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.deleteAvatar(avatarId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * This endpoint does the following two operations: 1) Checks if you are already logged in by looking for a valid `auth` cookie. If you are have a valid auth cookie then no additional auth-related actions are taken. If you are **not** logged in then it will log you in with the `Authorization` header and set the `auth` cookie. The `auth` cookie will only be sent once. 2) If logged in, this function will also return the CurrentUser object containing detailed information about the currently logged in user. **WARNING: Session Limit:** Each authentication with login credentials counts as a separate session, out of which you have a limited amount. Make sure to save and reuse the `auth` cookie if you are often restarting the program. The provided API libraries automatically save cookies during runtime, but does not persist during restart. While it can be fine to use username/password during development, expect in production to very fast run into the rate-limit and be temporarily blocked from making new sessions until older ones expire. The exact number of simultaneous sessions is unknown/undisclosed. - * @summary Login and/or Get Current User Info + * Get information about a specific Avatar. + * @summary Get Avatar + * @param {string} avatarId * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getCurrentUser(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getCurrentUser(options); + async getAvatar(avatarId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getAvatar(avatarId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Invalidates the login session. - * @summary Logout + * Search and list favorited avatars by query filters. + * @summary List Favorited Avatars + * @param {string} [featured] Filters on featured results. + * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] + * @param {number} [n] The number of objects to return. + * @param {'ascending' | 'descending'} [order] + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [search] Filters by world name. + * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [notag] Tags to exclude (comma-separated). + * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. + * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. + * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. + * @param {string} [platform] The platform the asset supports. + * @param {string} [userId] Target user to see information on, admin-only. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async logout(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.logout(options); + async getFavoritedAvatars(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getFavoritedAvatars(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Finishes the login sequence with a normal 2FA-generated code for accounts with 2FA-protection enabled. - * @summary Verify 2FA code - * @param {TwoFactorAuthCode} [twoFactorAuthCode] + * Search and list avatars by query filters. You can only search your own or featured avatars. It is not possible as a normal user to search other peoples avatars. + * @summary Search Avatars + * @param {string} [featured] Filters on featured results. + * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] + * @param {'me'} [user] Set to `me` for searching own avatars. + * @param {string} [userId] Filter by UserID. + * @param {number} [n] The number of objects to return. + * @param {'ascending' | 'descending'} [order] + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [notag] Tags to exclude (comma-separated). + * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. + * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. + * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. + * @param {string} [platform] The platform the asset supports. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async verify2FA(twoFactorAuthCode?: TwoFactorAuthCode, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.verify2FA(twoFactorAuthCode, options); + async searchAvatars(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.searchAvatars(featured, sort, user, userId, n, order, offset, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Verify whether the currently provided Auth Token is valid. - * @summary Verify Auth Token + * Switches into that avatar. + * @summary Select Avatar + * @param {string} avatarId * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async verifyAuthToken(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.verifyAuthToken(options); + async selectAvatar(avatarId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.selectAvatar(avatarId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Finishes the login sequence with an OTP (One Time Password) recovery code for accounts with 2FA-protection enabled. - * @summary Verify 2FA code with Recovery code - * @param {TwoFactorAuthCode} [twoFactorAuthCode] + * Switches into that avatar as your fallback avatar. + * @summary Select Fallback Avatar + * @param {string} avatarId * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async verifyRecoveryCode(twoFactorAuthCode?: TwoFactorAuthCode, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.verifyRecoveryCode(twoFactorAuthCode, options); + async selectFallbackAvatar(avatarId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.selectFallbackAvatar(avatarId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Update information about a specific avatar. + * @summary Update Avatar + * @param {string} avatarId + * @param {UpdateAvatarRequest} [updateAvatarRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async updateAvatar(avatarId: string, updateAvatarRequest?: UpdateAvatarRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.updateAvatar(avatarId, updateAvatarRequest, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, } }; /** - * AuthenticationApi - factory interface + * AvatarsApi - factory interface * @export */ -export const AuthenticationApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { - const localVarFp = AuthenticationApiFp(configuration) +export const AvatarsApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = AvatarsApiFp(configuration) return { /** - * Checks if a user by a given `username`, `displayName` or `email` exist. This is used during registration to check if a username has already been taken, during change of displayName to check if a displayName is available, and during change of email to check if the email is already used. In the later two cases the `excludeUserId` is used to exclude oneself, otherwise the result would always be true. It is **REQUIRED** to include **AT LEAST** `username`, `displayName` **or** `email` query parameter. Although they can be combined - in addition with `excludeUserId` (generally to exclude yourself) - to further fine-tune the search. - * @summary Check User Exists - * @param {string} [email] Filter by email. - * @param {string} [displayName] Filter by displayName. - * @param {string} [userId] Filter by UserID. - * @param {string} [excludeUserId] Exclude by UserID. + * Create an avatar. It\'s possible to optionally specify a ID if you want a custom one. Attempting to create an Avatar with an already claimed ID will result in a DB error. + * @summary Create Avatar + * @param {CreateAvatarRequest} [createAvatarRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - checkUserExists(email?: string, displayName?: string, userId?: string, excludeUserId?: string, options?: any): AxiosPromise { - return localVarFp.checkUserExists(email, displayName, userId, excludeUserId, options).then((request) => request(axios, basePath)); + createAvatar(createAvatarRequest?: CreateAvatarRequest, options?: any): AxiosPromise { + return localVarFp.createAvatar(createAvatarRequest, options).then((request) => request(axios, basePath)); }, /** - * Deletes the account with given ID. Normal users only have permission to delete their own account. Account deletion is 14 days from this request, and will be cancelled if you do an authenticated request with the account afterwards. **VRC+ NOTE:** Despite the 14-days cooldown, any VRC+ subscription will be cancelled **immediately**. **METHOD NOTE:** Despite this being a Delete action, the method type required is PUT. - * @summary Delete User - * @param {string} userId + * Delete an avatar. Notice an avatar is never fully \"deleted\", only its ReleaseStatus is set to \"hidden\" and the linked Files are deleted. The AvatarID is permanently reserved. + * @summary Delete Avatar + * @param {string} avatarId * @param {*} [options] Override http request option. * @throws {RequiredError} */ - deleteUser(userId: string, options?: any): AxiosPromise { - return localVarFp.deleteUser(userId, options).then((request) => request(axios, basePath)); + deleteAvatar(avatarId: string, options?: any): AxiosPromise { + return localVarFp.deleteAvatar(avatarId, options).then((request) => request(axios, basePath)); }, /** - * This endpoint does the following two operations: 1) Checks if you are already logged in by looking for a valid `auth` cookie. If you are have a valid auth cookie then no additional auth-related actions are taken. If you are **not** logged in then it will log you in with the `Authorization` header and set the `auth` cookie. The `auth` cookie will only be sent once. 2) If logged in, this function will also return the CurrentUser object containing detailed information about the currently logged in user. **WARNING: Session Limit:** Each authentication with login credentials counts as a separate session, out of which you have a limited amount. Make sure to save and reuse the `auth` cookie if you are often restarting the program. The provided API libraries automatically save cookies during runtime, but does not persist during restart. While it can be fine to use username/password during development, expect in production to very fast run into the rate-limit and be temporarily blocked from making new sessions until older ones expire. The exact number of simultaneous sessions is unknown/undisclosed. - * @summary Login and/or Get Current User Info + * Get information about a specific Avatar. + * @summary Get Avatar + * @param {string} avatarId * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getCurrentUser(options?: any): AxiosPromise { - return localVarFp.getCurrentUser(options).then((request) => request(axios, basePath)); + getAvatar(avatarId: string, options?: any): AxiosPromise { + return localVarFp.getAvatar(avatarId, options).then((request) => request(axios, basePath)); }, /** - * Invalidates the login session. - * @summary Logout + * Search and list favorited avatars by query filters. + * @summary List Favorited Avatars + * @param {string} [featured] Filters on featured results. + * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] + * @param {number} [n] The number of objects to return. + * @param {'ascending' | 'descending'} [order] + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [search] Filters by world name. + * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [notag] Tags to exclude (comma-separated). + * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. + * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. + * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. + * @param {string} [platform] The platform the asset supports. + * @param {string} [userId] Target user to see information on, admin-only. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - logout(options?: any): AxiosPromise { - return localVarFp.logout(options).then((request) => request(axios, basePath)); + getFavoritedAvatars(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any): AxiosPromise> { + return localVarFp.getFavoritedAvatars(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options).then((request) => request(axios, basePath)); }, /** - * Finishes the login sequence with a normal 2FA-generated code for accounts with 2FA-protection enabled. - * @summary Verify 2FA code - * @param {TwoFactorAuthCode} [twoFactorAuthCode] + * Search and list avatars by query filters. You can only search your own or featured avatars. It is not possible as a normal user to search other peoples avatars. + * @summary Search Avatars + * @param {string} [featured] Filters on featured results. + * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] + * @param {'me'} [user] Set to `me` for searching own avatars. + * @param {string} [userId] Filter by UserID. + * @param {number} [n] The number of objects to return. + * @param {'ascending' | 'descending'} [order] + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [notag] Tags to exclude (comma-separated). + * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. + * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. + * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. + * @param {string} [platform] The platform the asset supports. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + searchAvatars(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: any): AxiosPromise> { + return localVarFp.searchAvatars(featured, sort, user, userId, n, order, offset, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options).then((request) => request(axios, basePath)); + }, + /** + * Switches into that avatar. + * @summary Select Avatar + * @param {string} avatarId * @param {*} [options] Override http request option. * @throws {RequiredError} */ - verify2FA(twoFactorAuthCode?: TwoFactorAuthCode, options?: any): AxiosPromise { - return localVarFp.verify2FA(twoFactorAuthCode, options).then((request) => request(axios, basePath)); + selectAvatar(avatarId: string, options?: any): AxiosPromise { + return localVarFp.selectAvatar(avatarId, options).then((request) => request(axios, basePath)); }, /** - * Verify whether the currently provided Auth Token is valid. - * @summary Verify Auth Token + * Switches into that avatar as your fallback avatar. + * @summary Select Fallback Avatar + * @param {string} avatarId * @param {*} [options] Override http request option. * @throws {RequiredError} */ - verifyAuthToken(options?: any): AxiosPromise { - return localVarFp.verifyAuthToken(options).then((request) => request(axios, basePath)); + selectFallbackAvatar(avatarId: string, options?: any): AxiosPromise { + return localVarFp.selectFallbackAvatar(avatarId, options).then((request) => request(axios, basePath)); }, /** - * Finishes the login sequence with an OTP (One Time Password) recovery code for accounts with 2FA-protection enabled. - * @summary Verify 2FA code with Recovery code - * @param {TwoFactorAuthCode} [twoFactorAuthCode] + * Update information about a specific avatar. + * @summary Update Avatar + * @param {string} avatarId + * @param {UpdateAvatarRequest} [updateAvatarRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - verifyRecoveryCode(twoFactorAuthCode?: TwoFactorAuthCode, options?: any): AxiosPromise { - return localVarFp.verifyRecoveryCode(twoFactorAuthCode, options).then((request) => request(axios, basePath)); + updateAvatar(avatarId: string, updateAvatarRequest?: UpdateAvatarRequest, options?: any): AxiosPromise { + return localVarFp.updateAvatar(avatarId, updateAvatarRequest, options).then((request) => request(axios, basePath)); }, }; }; /** - * AuthenticationApi - object-oriented interface + * AvatarsApi - object-oriented interface * @export - * @class AuthenticationApi + * @class AvatarsApi * @extends {BaseAPI} */ -export class AuthenticationApi extends BaseAPI { +export class AvatarsApi extends BaseAPI { /** - * Checks if a user by a given `username`, `displayName` or `email` exist. This is used during registration to check if a username has already been taken, during change of displayName to check if a displayName is available, and during change of email to check if the email is already used. In the later two cases the `excludeUserId` is used to exclude oneself, otherwise the result would always be true. It is **REQUIRED** to include **AT LEAST** `username`, `displayName` **or** `email` query parameter. Although they can be combined - in addition with `excludeUserId` (generally to exclude yourself) - to further fine-tune the search. - * @summary Check User Exists - * @param {string} [email] Filter by email. - * @param {string} [displayName] Filter by displayName. - * @param {string} [userId] Filter by UserID. - * @param {string} [excludeUserId] Exclude by UserID. + * Create an avatar. It\'s possible to optionally specify a ID if you want a custom one. Attempting to create an Avatar with an already claimed ID will result in a DB error. + * @summary Create Avatar + * @param {CreateAvatarRequest} [createAvatarRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof AuthenticationApi + * @memberof AvatarsApi */ - public checkUserExists(email?: string, displayName?: string, userId?: string, excludeUserId?: string, options?: AxiosRequestConfig) { - return AuthenticationApiFp(this.configuration).checkUserExists(email, displayName, userId, excludeUserId, options).then((request) => request(this.axios, this.basePath)); + public createAvatar(createAvatarRequest?: CreateAvatarRequest, options?: AxiosRequestConfig) { + return AvatarsApiFp(this.configuration).createAvatar(createAvatarRequest, options).then((request) => request(this.axios, this.basePath)); } /** - * Deletes the account with given ID. Normal users only have permission to delete their own account. Account deletion is 14 days from this request, and will be cancelled if you do an authenticated request with the account afterwards. **VRC+ NOTE:** Despite the 14-days cooldown, any VRC+ subscription will be cancelled **immediately**. **METHOD NOTE:** Despite this being a Delete action, the method type required is PUT. - * @summary Delete User - * @param {string} userId + * Delete an avatar. Notice an avatar is never fully \"deleted\", only its ReleaseStatus is set to \"hidden\" and the linked Files are deleted. The AvatarID is permanently reserved. + * @summary Delete Avatar + * @param {string} avatarId * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof AuthenticationApi + * @memberof AvatarsApi */ - public deleteUser(userId: string, options?: AxiosRequestConfig) { - return AuthenticationApiFp(this.configuration).deleteUser(userId, options).then((request) => request(this.axios, this.basePath)); + public deleteAvatar(avatarId: string, options?: AxiosRequestConfig) { + return AvatarsApiFp(this.configuration).deleteAvatar(avatarId, options).then((request) => request(this.axios, this.basePath)); } /** - * This endpoint does the following two operations: 1) Checks if you are already logged in by looking for a valid `auth` cookie. If you are have a valid auth cookie then no additional auth-related actions are taken. If you are **not** logged in then it will log you in with the `Authorization` header and set the `auth` cookie. The `auth` cookie will only be sent once. 2) If logged in, this function will also return the CurrentUser object containing detailed information about the currently logged in user. **WARNING: Session Limit:** Each authentication with login credentials counts as a separate session, out of which you have a limited amount. Make sure to save and reuse the `auth` cookie if you are often restarting the program. The provided API libraries automatically save cookies during runtime, but does not persist during restart. While it can be fine to use username/password during development, expect in production to very fast run into the rate-limit and be temporarily blocked from making new sessions until older ones expire. The exact number of simultaneous sessions is unknown/undisclosed. - * @summary Login and/or Get Current User Info + * Get information about a specific Avatar. + * @summary Get Avatar + * @param {string} avatarId * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof AuthenticationApi + * @memberof AvatarsApi */ - public getCurrentUser(options?: AxiosRequestConfig) { - return AuthenticationApiFp(this.configuration).getCurrentUser(options).then((request) => request(this.axios, this.basePath)); + public getAvatar(avatarId: string, options?: AxiosRequestConfig) { + return AvatarsApiFp(this.configuration).getAvatar(avatarId, options).then((request) => request(this.axios, this.basePath)); } /** - * Invalidates the login session. - * @summary Logout + * Search and list favorited avatars by query filters. + * @summary List Favorited Avatars + * @param {string} [featured] Filters on featured results. + * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] + * @param {number} [n] The number of objects to return. + * @param {'ascending' | 'descending'} [order] + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [search] Filters by world name. + * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [notag] Tags to exclude (comma-separated). + * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. + * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. + * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. + * @param {string} [platform] The platform the asset supports. + * @param {string} [userId] Target user to see information on, admin-only. * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof AuthenticationApi + * @memberof AvatarsApi */ - public logout(options?: AxiosRequestConfig) { - return AuthenticationApiFp(this.configuration).logout(options).then((request) => request(this.axios, this.basePath)); + public getFavoritedAvatars(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: AxiosRequestConfig) { + return AvatarsApiFp(this.configuration).getFavoritedAvatars(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options).then((request) => request(this.axios, this.basePath)); } /** - * Finishes the login sequence with a normal 2FA-generated code for accounts with 2FA-protection enabled. - * @summary Verify 2FA code - * @param {TwoFactorAuthCode} [twoFactorAuthCode] + * Search and list avatars by query filters. You can only search your own or featured avatars. It is not possible as a normal user to search other peoples avatars. + * @summary Search Avatars + * @param {string} [featured] Filters on featured results. + * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] + * @param {'me'} [user] Set to `me` for searching own avatars. + * @param {string} [userId] Filter by UserID. + * @param {number} [n] The number of objects to return. + * @param {'ascending' | 'descending'} [order] + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [notag] Tags to exclude (comma-separated). + * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. + * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. + * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. + * @param {string} [platform] The platform the asset supports. * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof AuthenticationApi + * @memberof AvatarsApi */ - public verify2FA(twoFactorAuthCode?: TwoFactorAuthCode, options?: AxiosRequestConfig) { - return AuthenticationApiFp(this.configuration).verify2FA(twoFactorAuthCode, options).then((request) => request(this.axios, this.basePath)); + public searchAvatars(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: AxiosRequestConfig) { + return AvatarsApiFp(this.configuration).searchAvatars(featured, sort, user, userId, n, order, offset, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options).then((request) => request(this.axios, this.basePath)); } /** - * Verify whether the currently provided Auth Token is valid. - * @summary Verify Auth Token + * Switches into that avatar. + * @summary Select Avatar + * @param {string} avatarId * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof AuthenticationApi + * @memberof AvatarsApi */ - public verifyAuthToken(options?: AxiosRequestConfig) { - return AuthenticationApiFp(this.configuration).verifyAuthToken(options).then((request) => request(this.axios, this.basePath)); + public selectAvatar(avatarId: string, options?: AxiosRequestConfig) { + return AvatarsApiFp(this.configuration).selectAvatar(avatarId, options).then((request) => request(this.axios, this.basePath)); } /** - * Finishes the login sequence with an OTP (One Time Password) recovery code for accounts with 2FA-protection enabled. - * @summary Verify 2FA code with Recovery code - * @param {TwoFactorAuthCode} [twoFactorAuthCode] + * Switches into that avatar as your fallback avatar. + * @summary Select Fallback Avatar + * @param {string} avatarId * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof AuthenticationApi + * @memberof AvatarsApi */ - public verifyRecoveryCode(twoFactorAuthCode?: TwoFactorAuthCode, options?: AxiosRequestConfig) { - return AuthenticationApiFp(this.configuration).verifyRecoveryCode(twoFactorAuthCode, options).then((request) => request(this.axios, this.basePath)); + public selectFallbackAvatar(avatarId: string, options?: AxiosRequestConfig) { + return AvatarsApiFp(this.configuration).selectFallbackAvatar(avatarId, options).then((request) => request(this.axios, this.basePath)); } -} - - -/** - * AvatarsApi - axios parameter creator - * @export - */ -export const AvatarsApiAxiosParamCreator = function (configuration?: Configuration) { - return { - /** - * Create an avatar. It\'s possible to optionally specify a ID if you want a custom one. Attempting to create an Avatar with an already claimed ID will result in a DB error. - * @summary Create Avatar - * @param {CreateAvatarRequest} [createAvatarRequest] - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - createAvatar: async (createAvatarRequest?: CreateAvatarRequest, options: AxiosRequestConfig = {}): Promise => { - const localVarPath = `/avatars`; - // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); - let baseOptions; - if (configuration) { - baseOptions = configuration.baseOptions; - } - - const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; - const localVarHeaderParameter = {} as any; - const localVarQueryParameter = {} as any; - - // authentication apiKeyCookie required - - // authentication authCookie required - - - - localVarHeaderParameter['Content-Type'] = 'application/json'; - - setSearchParams(localVarUrlObj, localVarQueryParameter); - let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; - localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - localVarRequestOptions.data = serializeDataIfNeeded(createAvatarRequest, localVarRequestOptions, configuration) - - return { - url: toPathString(localVarUrlObj), - options: localVarRequestOptions, - }; - }, - /** - * Delete an avatar. Notice an avatar is never fully \"deleted\", only its ReleaseStatus is set to \"hidden\" and the linked Files are deleted. The AvatarID is permanently reserved. - * @summary Delete Avatar - * @param {string} avatarId - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - deleteAvatar: async (avatarId: string, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'avatarId' is not null or undefined - assertParamExists('deleteAvatar', 'avatarId', avatarId) - const localVarPath = `/avatars/{avatarId}` - .replace(`{${"avatarId"}}`, encodeURIComponent(String(avatarId))); - // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); - let baseOptions; - if (configuration) { - baseOptions = configuration.baseOptions; - } - - const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; - const localVarHeaderParameter = {} as any; - const localVarQueryParameter = {} as any; - - // authentication apiKeyCookie required - - // authentication authCookie required - - - - setSearchParams(localVarUrlObj, localVarQueryParameter); - let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; - localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - - return { - url: toPathString(localVarUrlObj), - options: localVarRequestOptions, - }; - }, - /** - * Get information about a specific Avatar. - * @summary Get Avatar - * @param {string} avatarId - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - getAvatar: async (avatarId: string, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'avatarId' is not null or undefined - assertParamExists('getAvatar', 'avatarId', avatarId) - const localVarPath = `/avatars/{avatarId}` - .replace(`{${"avatarId"}}`, encodeURIComponent(String(avatarId))); - // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); - let baseOptions; - if (configuration) { - baseOptions = configuration.baseOptions; - } - - const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; - const localVarHeaderParameter = {} as any; - const localVarQueryParameter = {} as any; - - // authentication apiKeyCookie required - - // authentication authCookie required + /** + * Update information about a specific avatar. + * @summary Update Avatar + * @param {string} avatarId + * @param {UpdateAvatarRequest} [updateAvatarRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AvatarsApi + */ + public updateAvatar(avatarId: string, updateAvatarRequest?: UpdateAvatarRequest, options?: AxiosRequestConfig) { + return AvatarsApiFp(this.configuration).updateAvatar(avatarId, updateAvatarRequest, options).then((request) => request(this.axios, this.basePath)); + } +} - - setSearchParams(localVarUrlObj, localVarQueryParameter); - let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; - localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - return { - url: toPathString(localVarUrlObj), - options: localVarRequestOptions, - }; - }, +/** + * EconomyApi - axios parameter creator + * @export + */ +export const EconomyApiAxiosParamCreator = function (configuration?: Configuration) { + return { /** - * Search and list favorited avatars by query filters. - * @summary List Favorited Avatars - * @param {string} [featured] Filters on featured results. - * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] - * @param {number} [n] The number of objects to return. - * @param {'ascending' | 'descending'} [order] - * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. - * @param {string} [search] Filters by world name. - * @param {string} [tag] Tags to include (comma-separated). - * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. - * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. - * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. - * @param {string} [platform] The platform the asset supports. - * @param {string} [userId] Target user to see information on, admin-only. + * Get a list of all current user subscriptions. + * @summary Get Current Subscriptions * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFavoritedAvatars: async (featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options: AxiosRequestConfig = {}): Promise => { - const localVarPath = `/avatars/favorites`; + getCurrentSubscriptions: async (options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/auth/user/subscription`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -4028,58 +5186,6 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati // authentication authCookie required - if (featured !== undefined) { - localVarQueryParameter['featured'] = featured; - } - - if (sort !== undefined) { - localVarQueryParameter['sort'] = sort; - } - - if (n !== undefined) { - localVarQueryParameter['n'] = n; - } - - if (order !== undefined) { - localVarQueryParameter['order'] = order; - } - - if (offset !== undefined) { - localVarQueryParameter['offset'] = offset; - } - - if (search !== undefined) { - localVarQueryParameter['search'] = search; - } - - if (tag !== undefined) { - localVarQueryParameter['tag'] = tag; - } - - if (notag !== undefined) { - localVarQueryParameter['notag'] = notag; - } - - if (releaseStatus !== undefined) { - localVarQueryParameter['releaseStatus'] = releaseStatus; - } - - if (maxUnityVersion !== undefined) { - localVarQueryParameter['maxUnityVersion'] = maxUnityVersion; - } - - if (minUnityVersion !== undefined) { - localVarQueryParameter['minUnityVersion'] = minUnityVersion; - } - - if (platform !== undefined) { - localVarQueryParameter['platform'] = platform; - } - - if (userId !== undefined) { - localVarQueryParameter['userId'] = userId; - } - setSearchParams(localVarUrlObj, localVarQueryParameter); @@ -4092,26 +5198,17 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati }; }, /** - * Search and list avatars by query filters. You can only search your own or featured avatars. It is not possible as a normal user to search other peoples avatars. - * @summary Search Avatars - * @param {string} [featured] Filters on featured results. - * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] - * @param {'me'} [user] Set to `me` for searching own avatars. - * @param {string} [userId] Filter by UserID. - * @param {number} [n] The number of objects to return. - * @param {'ascending' | 'descending'} [order] - * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. - * @param {string} [tag] Tags to include (comma-separated). - * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. - * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. - * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. - * @param {string} [platform] The platform the asset supports. + * Get a single License Group by given ID. + * @summary Get License Group + * @param {string} licenseGroupId * @param {*} [options] Override http request option. * @throws {RequiredError} */ - searchAvatars: async (featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options: AxiosRequestConfig = {}): Promise => { - const localVarPath = `/avatars`; + getLicenseGroup: async (licenseGroupId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'licenseGroupId' is not null or undefined + assertParamExists('getLicenseGroup', 'licenseGroupId', licenseGroupId) + const localVarPath = `/licenseGroups/{licenseGroupId}` + .replace(`{${"licenseGroupId"}}`, encodeURIComponent(String(licenseGroupId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -4127,58 +5224,6 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati // authentication authCookie required - if (featured !== undefined) { - localVarQueryParameter['featured'] = featured; - } - - if (sort !== undefined) { - localVarQueryParameter['sort'] = sort; - } - - if (user !== undefined) { - localVarQueryParameter['user'] = user; - } - - if (userId !== undefined) { - localVarQueryParameter['userId'] = userId; - } - - if (n !== undefined) { - localVarQueryParameter['n'] = n; - } - - if (order !== undefined) { - localVarQueryParameter['order'] = order; - } - - if (offset !== undefined) { - localVarQueryParameter['offset'] = offset; - } - - if (tag !== undefined) { - localVarQueryParameter['tag'] = tag; - } - - if (notag !== undefined) { - localVarQueryParameter['notag'] = notag; - } - - if (releaseStatus !== undefined) { - localVarQueryParameter['releaseStatus'] = releaseStatus; - } - - if (maxUnityVersion !== undefined) { - localVarQueryParameter['maxUnityVersion'] = maxUnityVersion; - } - - if (minUnityVersion !== undefined) { - localVarQueryParameter['minUnityVersion'] = minUnityVersion; - } - - if (platform !== undefined) { - localVarQueryParameter['platform'] = platform; - } - setSearchParams(localVarUrlObj, localVarQueryParameter); @@ -4191,17 +5236,18 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati }; }, /** - * Switches into that avatar. - * @summary Select Avatar - * @param {string} avatarId + * Get a single Steam transactions by ID. This returns the exact same information as `getSteamTransactions`, so no point in using this endpoint. + * @summary Get Steam Transaction + * @param {string} transactionId * @param {*} [options] Override http request option. + * @deprecated * @throws {RequiredError} */ - selectAvatar: async (avatarId: string, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'avatarId' is not null or undefined - assertParamExists('selectAvatar', 'avatarId', avatarId) - const localVarPath = `/avatars/{avatarId}/select` - .replace(`{${"avatarId"}}`, encodeURIComponent(String(avatarId))); + getSteamTransaction: async (transactionId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'transactionId' is not null or undefined + assertParamExists('getSteamTransaction', 'transactionId', transactionId) + const localVarPath = `/Steam/transactions/{transactionId}` + .replace(`{${"transactionId"}}`, encodeURIComponent(String(transactionId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -4209,7 +5255,7 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; @@ -4229,17 +5275,13 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati }; }, /** - * Switches into that avatar as your fallback avatar. - * @summary Select Fallback Avatar - * @param {string} avatarId + * Get all own Steam transactions. + * @summary List Steam Transactions * @param {*} [options] Override http request option. * @throws {RequiredError} */ - selectFallbackAvatar: async (avatarId: string, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'avatarId' is not null or undefined - assertParamExists('selectFallbackAvatar', 'avatarId', avatarId) - const localVarPath = `/avatars/{avatarId}/selectFallback` - .replace(`{${"avatarId"}}`, encodeURIComponent(String(avatarId))); + getSteamTransactions: async (options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/Steam/transactions`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -4247,7 +5289,7 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; @@ -4267,414 +5309,226 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati }; }, /** - * Update information about a specific avatar. - * @summary Update Avatar - * @param {string} avatarId - * @param {UpdateAvatarRequest} [updateAvatarRequest] + * List all existing Subscriptions. For example, \"vrchatplus-monthly\" and \"vrchatplus-yearly\". + * @summary List Subscriptions * @param {*} [options] Override http request option. * @throws {RequiredError} */ - updateAvatar: async (avatarId: string, updateAvatarRequest?: UpdateAvatarRequest, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'avatarId' is not null or undefined - assertParamExists('updateAvatar', 'avatarId', avatarId) - const localVarPath = `/avatars/{avatarId}` - .replace(`{${"avatarId"}}`, encodeURIComponent(String(avatarId))); + getSubscriptions: async (options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/subscriptions`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } - - const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; - const localVarHeaderParameter = {} as any; - const localVarQueryParameter = {} as any; - - // authentication apiKeyCookie required - - // authentication authCookie required - - - - localVarHeaderParameter['Content-Type'] = 'application/json'; - - setSearchParams(localVarUrlObj, localVarQueryParameter); - let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; - localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - localVarRequestOptions.data = serializeDataIfNeeded(updateAvatarRequest, localVarRequestOptions, configuration) - - return { - url: toPathString(localVarUrlObj), - options: localVarRequestOptions, - }; - }, - } -}; - -/** - * AvatarsApi - functional programming interface - * @export - */ -export const AvatarsApiFp = function(configuration?: Configuration) { - const localVarAxiosParamCreator = AvatarsApiAxiosParamCreator(configuration) - return { - /** - * Create an avatar. It\'s possible to optionally specify a ID if you want a custom one. Attempting to create an Avatar with an already claimed ID will result in a DB error. - * @summary Create Avatar - * @param {CreateAvatarRequest} [createAvatarRequest] - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - async createAvatar(createAvatarRequest?: CreateAvatarRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.createAvatar(createAvatarRequest, options); - return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); - }, - /** - * Delete an avatar. Notice an avatar is never fully \"deleted\", only its ReleaseStatus is set to \"hidden\" and the linked Files are deleted. The AvatarID is permanently reserved. - * @summary Delete Avatar - * @param {string} avatarId - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - async deleteAvatar(avatarId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.deleteAvatar(avatarId, options); - return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); - }, - /** - * Get information about a specific Avatar. - * @summary Get Avatar - * @param {string} avatarId - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - async getAvatar(avatarId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getAvatar(avatarId, options); - return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; }, + } +}; + +/** + * EconomyApi - functional programming interface + * @export + */ +export const EconomyApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = EconomyApiAxiosParamCreator(configuration) + return { /** - * Search and list favorited avatars by query filters. - * @summary List Favorited Avatars - * @param {string} [featured] Filters on featured results. - * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] - * @param {number} [n] The number of objects to return. - * @param {'ascending' | 'descending'} [order] - * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. - * @param {string} [search] Filters by world name. - * @param {string} [tag] Tags to include (comma-separated). - * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. - * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. - * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. - * @param {string} [platform] The platform the asset supports. - * @param {string} [userId] Target user to see information on, admin-only. + * Get a list of all current user subscriptions. + * @summary Get Current Subscriptions * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getFavoritedAvatars(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getFavoritedAvatars(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options); + async getCurrentSubscriptions(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getCurrentSubscriptions(options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Search and list avatars by query filters. You can only search your own or featured avatars. It is not possible as a normal user to search other peoples avatars. - * @summary Search Avatars - * @param {string} [featured] Filters on featured results. - * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] - * @param {'me'} [user] Set to `me` for searching own avatars. - * @param {string} [userId] Filter by UserID. - * @param {number} [n] The number of objects to return. - * @param {'ascending' | 'descending'} [order] - * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. - * @param {string} [tag] Tags to include (comma-separated). - * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. - * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. - * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. - * @param {string} [platform] The platform the asset supports. + * Get a single License Group by given ID. + * @summary Get License Group + * @param {string} licenseGroupId * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async searchAvatars(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { - const localVarAxiosArgs = await localVarAxiosParamCreator.searchAvatars(featured, sort, user, userId, n, order, offset, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options); + async getLicenseGroup(licenseGroupId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getLicenseGroup(licenseGroupId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Switches into that avatar. - * @summary Select Avatar - * @param {string} avatarId + * Get a single Steam transactions by ID. This returns the exact same information as `getSteamTransactions`, so no point in using this endpoint. + * @summary Get Steam Transaction + * @param {string} transactionId * @param {*} [options] Override http request option. + * @deprecated * @throws {RequiredError} */ - async selectAvatar(avatarId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.selectAvatar(avatarId, options); + async getSteamTransaction(transactionId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getSteamTransaction(transactionId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Switches into that avatar as your fallback avatar. - * @summary Select Fallback Avatar - * @param {string} avatarId + * Get all own Steam transactions. + * @summary List Steam Transactions * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async selectFallbackAvatar(avatarId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.selectFallbackAvatar(avatarId, options); + async getSteamTransactions(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getSteamTransactions(options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Update information about a specific avatar. - * @summary Update Avatar - * @param {string} avatarId - * @param {UpdateAvatarRequest} [updateAvatarRequest] + * List all existing Subscriptions. For example, \"vrchatplus-monthly\" and \"vrchatplus-yearly\". + * @summary List Subscriptions * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async updateAvatar(avatarId: string, updateAvatarRequest?: UpdateAvatarRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.updateAvatar(avatarId, updateAvatarRequest, options); + async getSubscriptions(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getSubscriptions(options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, } }; /** - * AvatarsApi - factory interface + * EconomyApi - factory interface * @export */ -export const AvatarsApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { - const localVarFp = AvatarsApiFp(configuration) +export const EconomyApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = EconomyApiFp(configuration) return { /** - * Create an avatar. It\'s possible to optionally specify a ID if you want a custom one. Attempting to create an Avatar with an already claimed ID will result in a DB error. - * @summary Create Avatar - * @param {CreateAvatarRequest} [createAvatarRequest] - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - createAvatar(createAvatarRequest?: CreateAvatarRequest, options?: any): AxiosPromise { - return localVarFp.createAvatar(createAvatarRequest, options).then((request) => request(axios, basePath)); - }, - /** - * Delete an avatar. Notice an avatar is never fully \"deleted\", only its ReleaseStatus is set to \"hidden\" and the linked Files are deleted. The AvatarID is permanently reserved. - * @summary Delete Avatar - * @param {string} avatarId - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - deleteAvatar(avatarId: string, options?: any): AxiosPromise { - return localVarFp.deleteAvatar(avatarId, options).then((request) => request(axios, basePath)); - }, - /** - * Get information about a specific Avatar. - * @summary Get Avatar - * @param {string} avatarId - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - getAvatar(avatarId: string, options?: any): AxiosPromise { - return localVarFp.getAvatar(avatarId, options).then((request) => request(axios, basePath)); - }, - /** - * Search and list favorited avatars by query filters. - * @summary List Favorited Avatars - * @param {string} [featured] Filters on featured results. - * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] - * @param {number} [n] The number of objects to return. - * @param {'ascending' | 'descending'} [order] - * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. - * @param {string} [search] Filters by world name. - * @param {string} [tag] Tags to include (comma-separated). - * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. - * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. - * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. - * @param {string} [platform] The platform the asset supports. - * @param {string} [userId] Target user to see information on, admin-only. + * Get a list of all current user subscriptions. + * @summary Get Current Subscriptions * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFavoritedAvatars(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any): AxiosPromise> { - return localVarFp.getFavoritedAvatars(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options).then((request) => request(axios, basePath)); + getCurrentSubscriptions(options?: any): AxiosPromise> { + return localVarFp.getCurrentSubscriptions(options).then((request) => request(axios, basePath)); }, /** - * Search and list avatars by query filters. You can only search your own or featured avatars. It is not possible as a normal user to search other peoples avatars. - * @summary Search Avatars - * @param {string} [featured] Filters on featured results. - * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] - * @param {'me'} [user] Set to `me` for searching own avatars. - * @param {string} [userId] Filter by UserID. - * @param {number} [n] The number of objects to return. - * @param {'ascending' | 'descending'} [order] - * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. - * @param {string} [tag] Tags to include (comma-separated). - * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. - * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. - * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. - * @param {string} [platform] The platform the asset supports. + * Get a single License Group by given ID. + * @summary Get License Group + * @param {string} licenseGroupId * @param {*} [options] Override http request option. * @throws {RequiredError} */ - searchAvatars(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: any): AxiosPromise> { - return localVarFp.searchAvatars(featured, sort, user, userId, n, order, offset, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options).then((request) => request(axios, basePath)); + getLicenseGroup(licenseGroupId: string, options?: any): AxiosPromise { + return localVarFp.getLicenseGroup(licenseGroupId, options).then((request) => request(axios, basePath)); }, /** - * Switches into that avatar. - * @summary Select Avatar - * @param {string} avatarId + * Get a single Steam transactions by ID. This returns the exact same information as `getSteamTransactions`, so no point in using this endpoint. + * @summary Get Steam Transaction + * @param {string} transactionId * @param {*} [options] Override http request option. + * @deprecated * @throws {RequiredError} */ - selectAvatar(avatarId: string, options?: any): AxiosPromise { - return localVarFp.selectAvatar(avatarId, options).then((request) => request(axios, basePath)); + getSteamTransaction(transactionId: string, options?: any): AxiosPromise { + return localVarFp.getSteamTransaction(transactionId, options).then((request) => request(axios, basePath)); }, /** - * Switches into that avatar as your fallback avatar. - * @summary Select Fallback Avatar - * @param {string} avatarId + * Get all own Steam transactions. + * @summary List Steam Transactions * @param {*} [options] Override http request option. * @throws {RequiredError} */ - selectFallbackAvatar(avatarId: string, options?: any): AxiosPromise { - return localVarFp.selectFallbackAvatar(avatarId, options).then((request) => request(axios, basePath)); + getSteamTransactions(options?: any): AxiosPromise> { + return localVarFp.getSteamTransactions(options).then((request) => request(axios, basePath)); }, /** - * Update information about a specific avatar. - * @summary Update Avatar - * @param {string} avatarId - * @param {UpdateAvatarRequest} [updateAvatarRequest] + * List all existing Subscriptions. For example, \"vrchatplus-monthly\" and \"vrchatplus-yearly\". + * @summary List Subscriptions * @param {*} [options] Override http request option. * @throws {RequiredError} */ - updateAvatar(avatarId: string, updateAvatarRequest?: UpdateAvatarRequest, options?: any): AxiosPromise { - return localVarFp.updateAvatar(avatarId, updateAvatarRequest, options).then((request) => request(axios, basePath)); + getSubscriptions(options?: any): AxiosPromise> { + return localVarFp.getSubscriptions(options).then((request) => request(axios, basePath)); }, }; }; /** - * AvatarsApi - object-oriented interface + * EconomyApi - object-oriented interface * @export - * @class AvatarsApi + * @class EconomyApi * @extends {BaseAPI} */ -export class AvatarsApi extends BaseAPI { - /** - * Create an avatar. It\'s possible to optionally specify a ID if you want a custom one. Attempting to create an Avatar with an already claimed ID will result in a DB error. - * @summary Create Avatar - * @param {CreateAvatarRequest} [createAvatarRequest] - * @param {*} [options] Override http request option. - * @throws {RequiredError} - * @memberof AvatarsApi - */ - public createAvatar(createAvatarRequest?: CreateAvatarRequest, options?: AxiosRequestConfig) { - return AvatarsApiFp(this.configuration).createAvatar(createAvatarRequest, options).then((request) => request(this.axios, this.basePath)); - } - - /** - * Delete an avatar. Notice an avatar is never fully \"deleted\", only its ReleaseStatus is set to \"hidden\" and the linked Files are deleted. The AvatarID is permanently reserved. - * @summary Delete Avatar - * @param {string} avatarId - * @param {*} [options] Override http request option. - * @throws {RequiredError} - * @memberof AvatarsApi - */ - public deleteAvatar(avatarId: string, options?: AxiosRequestConfig) { - return AvatarsApiFp(this.configuration).deleteAvatar(avatarId, options).then((request) => request(this.axios, this.basePath)); - } - - /** - * Get information about a specific Avatar. - * @summary Get Avatar - * @param {string} avatarId - * @param {*} [options] Override http request option. - * @throws {RequiredError} - * @memberof AvatarsApi - */ - public getAvatar(avatarId: string, options?: AxiosRequestConfig) { - return AvatarsApiFp(this.configuration).getAvatar(avatarId, options).then((request) => request(this.axios, this.basePath)); - } - +export class EconomyApi extends BaseAPI { /** - * Search and list favorited avatars by query filters. - * @summary List Favorited Avatars - * @param {string} [featured] Filters on featured results. - * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] - * @param {number} [n] The number of objects to return. - * @param {'ascending' | 'descending'} [order] - * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. - * @param {string} [search] Filters by world name. - * @param {string} [tag] Tags to include (comma-separated). - * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. - * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. - * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. - * @param {string} [platform] The platform the asset supports. - * @param {string} [userId] Target user to see information on, admin-only. + * Get a list of all current user subscriptions. + * @summary Get Current Subscriptions * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof AvatarsApi + * @memberof EconomyApi */ - public getFavoritedAvatars(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: AxiosRequestConfig) { - return AvatarsApiFp(this.configuration).getFavoritedAvatars(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options).then((request) => request(this.axios, this.basePath)); + public getCurrentSubscriptions(options?: AxiosRequestConfig) { + return EconomyApiFp(this.configuration).getCurrentSubscriptions(options).then((request) => request(this.axios, this.basePath)); } /** - * Search and list avatars by query filters. You can only search your own or featured avatars. It is not possible as a normal user to search other peoples avatars. - * @summary Search Avatars - * @param {string} [featured] Filters on featured results. - * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] - * @param {'me'} [user] Set to `me` for searching own avatars. - * @param {string} [userId] Filter by UserID. - * @param {number} [n] The number of objects to return. - * @param {'ascending' | 'descending'} [order] - * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. - * @param {string} [tag] Tags to include (comma-separated). - * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. - * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. - * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. - * @param {string} [platform] The platform the asset supports. + * Get a single License Group by given ID. + * @summary Get License Group + * @param {string} licenseGroupId * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof AvatarsApi + * @memberof EconomyApi */ - public searchAvatars(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: AxiosRequestConfig) { - return AvatarsApiFp(this.configuration).searchAvatars(featured, sort, user, userId, n, order, offset, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options).then((request) => request(this.axios, this.basePath)); + public getLicenseGroup(licenseGroupId: string, options?: AxiosRequestConfig) { + return EconomyApiFp(this.configuration).getLicenseGroup(licenseGroupId, options).then((request) => request(this.axios, this.basePath)); } /** - * Switches into that avatar. - * @summary Select Avatar - * @param {string} avatarId + * Get a single Steam transactions by ID. This returns the exact same information as `getSteamTransactions`, so no point in using this endpoint. + * @summary Get Steam Transaction + * @param {string} transactionId * @param {*} [options] Override http request option. + * @deprecated * @throws {RequiredError} - * @memberof AvatarsApi + * @memberof EconomyApi */ - public selectAvatar(avatarId: string, options?: AxiosRequestConfig) { - return AvatarsApiFp(this.configuration).selectAvatar(avatarId, options).then((request) => request(this.axios, this.basePath)); + public getSteamTransaction(transactionId: string, options?: AxiosRequestConfig) { + return EconomyApiFp(this.configuration).getSteamTransaction(transactionId, options).then((request) => request(this.axios, this.basePath)); } /** - * Switches into that avatar as your fallback avatar. - * @summary Select Fallback Avatar - * @param {string} avatarId + * Get all own Steam transactions. + * @summary List Steam Transactions * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof AvatarsApi + * @memberof EconomyApi */ - public selectFallbackAvatar(avatarId: string, options?: AxiosRequestConfig) { - return AvatarsApiFp(this.configuration).selectFallbackAvatar(avatarId, options).then((request) => request(this.axios, this.basePath)); + public getSteamTransactions(options?: AxiosRequestConfig) { + return EconomyApiFp(this.configuration).getSteamTransactions(options).then((request) => request(this.axios, this.basePath)); } /** - * Update information about a specific avatar. - * @summary Update Avatar - * @param {string} avatarId - * @param {UpdateAvatarRequest} [updateAvatarRequest] + * List all existing Subscriptions. For example, \"vrchatplus-monthly\" and \"vrchatplus-yearly\". + * @summary List Subscriptions * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof AvatarsApi + * @memberof EconomyApi */ - public updateAvatar(avatarId: string, updateAvatarRequest?: UpdateAvatarRequest, options?: AxiosRequestConfig) { - return AvatarsApiFp(this.configuration).updateAvatar(avatarId, updateAvatarRequest, options).then((request) => request(this.axios, this.basePath)); + public getSubscriptions(options?: AxiosRequestConfig) { + return EconomyApiFp(this.configuration).getSubscriptions(options).then((request) => request(this.axios, this.basePath)); } } @@ -7086,7 +7940,7 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio }; }, /** - * Resets a single Invite Message back to it\'s original message, and then returns a list of all of them. Admin Credentials are required to update messages of other users! Resetting a message respects the rate-limit, so it is not possible to reset within the 60 minutes countdown. Resetting it does however not set the rate-limit to 60 like when editing it. It is possible to edit it right after resetting it. Trying to edit a message before the cooldown timer expires results in a 429 \"Too Fast Error\". Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite The DELETE endpoint does not have/require any request body. + * Resets a single Invite Message back to its original message, and then returns a list of all of them. Admin Credentials are required to update messages of other users! Resetting a message respects the rate-limit, so it is not possible to reset within the 60 minutes countdown. Resetting it does however not set the rate-limit to 60 like when editing it. It is possible to edit it right after resetting it. Trying to edit a message before the cooldown timer expires results in a 429 \"Too Fast Error\". Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite The DELETE endpoint does not have/require any request body. * @summary Reset Invite Message * @param {string} userId * @param {'message' | 'response' | 'request' | 'requestResponse'} messageType @@ -7282,7 +8136,7 @@ export const InviteApiFp = function(configuration?: Configuration) { return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Resets a single Invite Message back to it\'s original message, and then returns a list of all of them. Admin Credentials are required to update messages of other users! Resetting a message respects the rate-limit, so it is not possible to reset within the 60 minutes countdown. Resetting it does however not set the rate-limit to 60 like when editing it. It is possible to edit it right after resetting it. Trying to edit a message before the cooldown timer expires results in a 429 \"Too Fast Error\". Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite The DELETE endpoint does not have/require any request body. + * Resets a single Invite Message back to its original message, and then returns a list of all of them. Admin Credentials are required to update messages of other users! Resetting a message respects the rate-limit, so it is not possible to reset within the 60 minutes countdown. Resetting it does however not set the rate-limit to 60 like when editing it. It is possible to edit it right after resetting it. Trying to edit a message before the cooldown timer expires results in a 429 \"Too Fast Error\". Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite The DELETE endpoint does not have/require any request body. * @summary Reset Invite Message * @param {string} userId * @param {'message' | 'response' | 'request' | 'requestResponse'} messageType @@ -7375,7 +8229,7 @@ export const InviteApiFactory = function (configuration?: Configuration, basePat return localVarFp.requestInvite(userId, options).then((request) => request(axios, basePath)); }, /** - * Resets a single Invite Message back to it\'s original message, and then returns a list of all of them. Admin Credentials are required to update messages of other users! Resetting a message respects the rate-limit, so it is not possible to reset within the 60 minutes countdown. Resetting it does however not set the rate-limit to 60 like when editing it. It is possible to edit it right after resetting it. Trying to edit a message before the cooldown timer expires results in a 429 \"Too Fast Error\". Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite The DELETE endpoint does not have/require any request body. + * Resets a single Invite Message back to its original message, and then returns a list of all of them. Admin Credentials are required to update messages of other users! Resetting a message respects the rate-limit, so it is not possible to reset within the 60 minutes countdown. Resetting it does however not set the rate-limit to 60 like when editing it. It is possible to edit it right after resetting it. Trying to edit a message before the cooldown timer expires results in a 429 \"Too Fast Error\". Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite The DELETE endpoint does not have/require any request body. * @summary Reset Invite Message * @param {string} userId * @param {'message' | 'response' | 'request' | 'requestResponse'} messageType @@ -7473,7 +8327,7 @@ export class InviteApi extends BaseAPI { } /** - * Resets a single Invite Message back to it\'s original message, and then returns a list of all of them. Admin Credentials are required to update messages of other users! Resetting a message respects the rate-limit, so it is not possible to reset within the 60 minutes countdown. Resetting it does however not set the rate-limit to 60 like when editing it. It is possible to edit it right after resetting it. Trying to edit a message before the cooldown timer expires results in a 429 \"Too Fast Error\". Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite The DELETE endpoint does not have/require any request body. + * Resets a single Invite Message back to its original message, and then returns a list of all of them. Admin Credentials are required to update messages of other users! Resetting a message respects the rate-limit, so it is not possible to reset within the 60 minutes countdown. Resetting it does however not set the rate-limit to 60 like when editing it. It is possible to edit it right after resetting it. Trying to edit a message before the cooldown timer expires results in a 429 \"Too Fast Error\". Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite The DELETE endpoint does not have/require any request body. * @summary Reset Invite Message * @param {string} userId * @param {'message' | 'response' | 'request' | 'requestResponse'} messageType diff --git a/base.ts b/base.ts index d87b346..a2c7f64 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.5.1 + * The version of the OpenAPI document: 1.5.2 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index 6faa391..9354084 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.5.1 + * The version of the OpenAPI document: 1.5.2 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index 77e3c82..923dce6 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.5.1 + * The version of the OpenAPI document: 1.5.2 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index 5fceb9d..a26dd16 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.5.1 + * The version of the OpenAPI document: 1.5.2 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index 379a8df..bcd255d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.5.1", + "version": "1.5.2", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.5.1", + "version": "1.5.2", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index 3c45ed7..da61b10 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.5.1", + "version": "1.5.2", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "keywords": [ From 26099607adfee5e3cbb66dac4a33de3f8fbde669 Mon Sep 17 00:00:00 2001 From: VRCCat Date: Sat, 20 Nov 2021 00:41:39 +0000 Subject: [PATCH 061/130] Upgrade Node SDK to spec 1.5.3 --- api.ts | 377 ++++++++++++++++++++++++++++++++++++++++------ base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 16 +- package.json | 2 +- 7 files changed, 341 insertions(+), 62 deletions(-) diff --git a/api.ts b/api.ts index c75bcf4..1e3dd6c 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.5.2 + * The version of the OpenAPI document: 1.5.3 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -276,10 +276,10 @@ export interface APIConfig { 'downloadUrls': DownloadURLList; /** * Array of DynamicWorldRow objects, used by the game to display the list of world rows - * @type {Set} + * @type {Set} * @memberof APIConfig */ - 'dynamicWorldRows': Set; + 'dynamicWorldRows': Set; /** * * @type {APIEventConfig} @@ -1036,13 +1036,13 @@ export interface CurrentUser { */ 'currentAvatarAssetUrl': string; /** - * + * When profilePicOverride is not empty, use it instead. * @type {string} * @memberof CurrentUser */ 'currentAvatarImageUrl': string; /** - * + * When profilePicOverride is not empty, use it instead. * @type {string} * @memberof CurrentUser */ @@ -1320,51 +1320,57 @@ export interface DownloadURLList { /** * * @export - * @interface DynamicWorldRow + * @interface DynamicContentRow */ -export interface DynamicWorldRow { +export interface DynamicContentRow { /** * * @type {number} - * @memberof DynamicWorldRow + * @memberof DynamicContentRow */ - 'index': number; + 'index'?: number; /** * * @type {string} - * @memberof DynamicWorldRow + * @memberof DynamicContentRow */ 'name': string; /** - * + * Usually \"ThisPlatformSupported\", but can also be other values such as \"all\" or platform specific identifiers. * @type {string} - * @memberof DynamicWorldRow + * @memberof DynamicContentRow */ 'platform': string; /** * * @type {string} - * @memberof DynamicWorldRow + * @memberof DynamicContentRow */ 'sortHeading': string; /** * * @type {string} - * @memberof DynamicWorldRow + * @memberof DynamicContentRow */ 'sortOrder': string; /** * * @type {string} - * @memberof DynamicWorldRow + * @memberof DynamicContentRow */ 'sortOwnership': string; /** - * Tag to filter worlds for this row. Not always present. + * Tag to filter content for this row. * @type {string} - * @memberof DynamicWorldRow + * @memberof DynamicContentRow */ 'tag'?: string; + /** + * Type is not present if it is a world. + * @type {string} + * @memberof DynamicContentRow + */ + 'type'?: string; } /** * @@ -1705,6 +1711,203 @@ export interface FriendStatus { */ 'outgoingRequest': boolean; } +/** + * + * @export + * @interface InfoPush + */ +export interface InfoPush { + /** + * + * @type {string} + * @memberof InfoPush + */ + 'id': string; + /** + * + * @type {boolean} + * @memberof InfoPush + */ + 'isEnabled': boolean; + /** + * + * @type {ReleaseStatus} + * @memberof InfoPush + */ + 'releaseStatus': ReleaseStatus; + /** + * + * @type {number} + * @memberof InfoPush + */ + 'priority': number; + /** + * + * @type {Array} + * @memberof InfoPush + */ + 'tags': Array; + /** + * + * @type {InfoPushData} + * @memberof InfoPush + */ + 'data': InfoPushData; + /** + * Unknown usage, MD5 + * @type {string} + * @memberof InfoPush + */ + 'hash': string; + /** + * + * @type {string} + * @memberof InfoPush + */ + 'createdAt': string; + /** + * + * @type {string} + * @memberof InfoPush + */ + 'updatedAt': string; + /** + * + * @type {string} + * @memberof InfoPush + */ + 'startDate'?: string; + /** + * + * @type {string} + * @memberof InfoPush + */ + 'endDate'?: string; +} +/** + * + * @export + * @interface InfoPushData + */ +export interface InfoPushData { + /** + * + * @type {DynamicContentRow} + * @memberof InfoPushData + */ + 'contentList'?: DynamicContentRow; + /** + * + * @type {string} + * @memberof InfoPushData + */ + 'description'?: string; + /** + * + * @type {string} + * @memberof InfoPushData + */ + 'imageUrl'?: string; + /** + * + * @type {string} + * @memberof InfoPushData + */ + 'name'?: string; + /** + * + * @type {InfoPushDataClickable} + * @memberof InfoPushData + */ + 'onPressed'?: InfoPushDataClickable; + /** + * + * @type {string} + * @memberof InfoPushData + */ + 'template'?: string; + /** + * + * @type {string} + * @memberof InfoPushData + */ + 'version'?: string; + /** + * + * @type {InfoPushDataArticle} + * @memberof InfoPushData + */ + 'article'?: InfoPushDataArticle; +} +/** + * + * @export + * @interface InfoPushDataArticle + */ +export interface InfoPushDataArticle { + /** + * + * @type {InfoPushDataArticleContent} + * @memberof InfoPushDataArticle + */ + 'content'?: InfoPushDataArticleContent; +} +/** + * + * @export + * @interface InfoPushDataArticleContent + */ +export interface InfoPushDataArticleContent { + /** + * + * @type {string} + * @memberof InfoPushDataArticleContent + */ + 'text'?: string; + /** + * + * @type {string} + * @memberof InfoPushDataArticleContent + */ + 'imageUrl'?: string; + /** + * + * @type {InfoPushDataClickable} + * @memberof InfoPushDataArticleContent + */ + 'onPressed'?: InfoPushDataClickable; +} +/** + * + * @export + * @interface InfoPushDataClickable + */ +export interface InfoPushDataClickable { + /** + * + * @type {string} + * @memberof InfoPushDataClickable + */ + 'command': InfoPushDataClickableCommandEnum; + /** + * In case of OpenURL, this would contain the link. + * @type {Array} + * @memberof InfoPushDataClickable + */ + 'parameters'?: Array; +} + +/** + * @export + * @enum {string} + */ +export enum InfoPushDataClickableCommandEnum { + OpenUrl = 'OpenURL', + OpenVrcPlusMenu = 'OpenVRCPlusMenu', + OpenSafetyMenu = 'OpenSafetyMenu', + CannedWorldSearch = 'CannedWorldSearch' +} + /** * * @export @@ -2071,13 +2274,13 @@ export interface LimitedUser { */ 'bio'?: string; /** - * + * When profilePicOverride is not empty, use it instead. * @type {string} * @memberof LimitedUser */ 'currentAvatarImageUrl': string; /** - * + * When profilePicOverride is not empty, use it instead. * @type {string} * @memberof LimitedUser */ @@ -3297,13 +3500,13 @@ export interface User { */ 'bioLinks': Array; /** - * + * When profilePicOverride is not empty, use it instead. * @type {string} * @memberof User */ 'currentAvatarImageUrl': string; /** - * + * When profilePicOverride is not empty, use it instead. * @type {string} * @memberof User */ @@ -4479,7 +4682,7 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati * @param {'ascending' | 'descending'} [order] * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {string} [search] Filters by world name. - * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. * @param {string} [notag] Tags to exclude (comma-separated). * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. @@ -4579,7 +4782,7 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati * @param {number} [n] The number of objects to return. * @param {'ascending' | 'descending'} [order] * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. - * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. * @param {string} [notag] Tags to exclude (comma-separated). * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. @@ -4838,7 +5041,7 @@ export const AvatarsApiFp = function(configuration?: Configuration) { * @param {'ascending' | 'descending'} [order] * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {string} [search] Filters by world name. - * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. * @param {string} [notag] Tags to exclude (comma-separated). * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. @@ -4862,7 +5065,7 @@ export const AvatarsApiFp = function(configuration?: Configuration) { * @param {number} [n] The number of objects to return. * @param {'ascending' | 'descending'} [order] * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. - * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. * @param {string} [notag] Tags to exclude (comma-separated). * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. @@ -4958,7 +5161,7 @@ export const AvatarsApiFactory = function (configuration?: Configuration, basePa * @param {'ascending' | 'descending'} [order] * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {string} [search] Filters by world name. - * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. * @param {string} [notag] Tags to exclude (comma-separated). * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. @@ -4981,7 +5184,7 @@ export const AvatarsApiFactory = function (configuration?: Configuration, basePa * @param {number} [n] The number of objects to return. * @param {'ascending' | 'descending'} [order] * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. - * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. * @param {string} [notag] Tags to exclude (comma-separated). * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. @@ -5079,7 +5282,7 @@ export class AvatarsApi extends BaseAPI { * @param {'ascending' | 'descending'} [order] * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {string} [search] Filters by world name. - * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. * @param {string} [notag] Tags to exclude (comma-separated). * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. @@ -5104,7 +5307,7 @@ export class AvatarsApi extends BaseAPI { * @param {number} [n] The number of objects to return. * @param {'ascending' | 'descending'} [order] * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. - * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. * @param {string} [notag] Tags to exclude (comma-separated). * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. @@ -5762,7 +5965,7 @@ export const FavoritesApiAxiosParamCreator = function (configuration?: Configura * @param {number} [n] The number of objects to return. * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {string} [type] The type of favorites to return, FavoriteType. - * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -5975,7 +6178,7 @@ export const FavoritesApiFp = function(configuration?: Configuration) { * @param {number} [n] The number of objects to return. * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {string} [type] The type of favorites to return, FavoriteType. - * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -6080,7 +6283,7 @@ export const FavoritesApiFactory = function (configuration?: Configuration, base * @param {number} [n] The number of objects to return. * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {string} [type] The type of favorites to return, FavoriteType. - * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -6192,7 +6395,7 @@ export class FavoritesApi extends BaseAPI { * @param {number} [n] The number of objects to return. * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {string} [type] The type of favorites to return, FavoriteType. - * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof FavoritesApi @@ -9564,6 +9767,46 @@ export const SystemApiAxiosParamCreator = function (configuration?: Configuratio + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * IPS (Info Push System) is a system for VRChat to push out dynamic information to the client. This is primarily used by the Quick-Menu info banners, but can also be used to e.g. alert you to update your game to the latest version. `include` is used to query what Information Pushes should be included in the response. If include is missing or empty, then no notices will normally be returned. This is an \"any of\" search. `require` is used to limit what Information Pushes should be included in the response. This is usually used in combination with `include`, and is an \"all of\" search. + * @summary Show Information Notices + * @param {string} [require] Tags to include (comma-separated). All of the tags needs to be present. + * @param {string} [include] Tags to include (comma-separated). Any of the tags needs to be present. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getInfoPush: async (require?: string, include?: string, options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/infoPush`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (require !== undefined) { + localVarQueryParameter['require'] = require; + } + + if (include !== undefined) { + localVarQueryParameter['include'] = include; + } + + + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -9696,6 +9939,18 @@ export const SystemApiFp = function(configuration?: Configuration) { const localVarAxiosArgs = await localVarAxiosParamCreator.getHealth(options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, + /** + * IPS (Info Push System) is a system for VRChat to push out dynamic information to the client. This is primarily used by the Quick-Menu info banners, but can also be used to e.g. alert you to update your game to the latest version. `include` is used to query what Information Pushes should be included in the response. If include is missing or empty, then no notices will normally be returned. This is an \"any of\" search. `require` is used to limit what Information Pushes should be included in the response. This is usually used in combination with `include`, and is an \"all of\" search. + * @summary Show Information Notices + * @param {string} [require] Tags to include (comma-separated). All of the tags needs to be present. + * @param {string} [include] Tags to include (comma-separated). Any of the tags needs to be present. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getInfoPush(require?: string, include?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getInfoPush(require, include, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** * Fetches the JavaScript code to the frontend React website. * @summary Download JavaScript @@ -9767,6 +10022,17 @@ export const SystemApiFactory = function (configuration?: Configuration, basePat getHealth(options?: any): AxiosPromise { return localVarFp.getHealth(options).then((request) => request(axios, basePath)); }, + /** + * IPS (Info Push System) is a system for VRChat to push out dynamic information to the client. This is primarily used by the Quick-Menu info banners, but can also be used to e.g. alert you to update your game to the latest version. `include` is used to query what Information Pushes should be included in the response. If include is missing or empty, then no notices will normally be returned. This is an \"any of\" search. `require` is used to limit what Information Pushes should be included in the response. This is usually used in combination with `include`, and is an \"all of\" search. + * @summary Show Information Notices + * @param {string} [require] Tags to include (comma-separated). All of the tags needs to be present. + * @param {string} [include] Tags to include (comma-separated). Any of the tags needs to be present. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getInfoPush(require?: string, include?: string, options?: any): AxiosPromise> { + return localVarFp.getInfoPush(require, include, options).then((request) => request(axios, basePath)); + }, /** * Fetches the JavaScript code to the frontend React website. * @summary Download JavaScript @@ -9844,6 +10110,19 @@ export class SystemApi extends BaseAPI { return SystemApiFp(this.configuration).getHealth(options).then((request) => request(this.axios, this.basePath)); } + /** + * IPS (Info Push System) is a system for VRChat to push out dynamic information to the client. This is primarily used by the Quick-Menu info banners, but can also be used to e.g. alert you to update your game to the latest version. `include` is used to query what Information Pushes should be included in the response. If include is missing or empty, then no notices will normally be returned. This is an \"any of\" search. `require` is used to limit what Information Pushes should be included in the response. This is usually used in combination with `include`, and is an \"all of\" search. + * @summary Show Information Notices + * @param {string} [require] Tags to include (comma-separated). All of the tags needs to be present. + * @param {string} [include] Tags to include (comma-separated). Any of the tags needs to be present. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof SystemApi + */ + public getInfoPush(require?: string, include?: string, options?: AxiosRequestConfig) { + return SystemApiFp(this.configuration).getInfoPush(require, include, options).then((request) => request(this.axios, this.basePath)); + } + /** * Fetches the JavaScript code to the frontend React website. * @summary Download JavaScript @@ -10311,7 +10590,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio * @param {'ascending' | 'descending'} [order] * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {string} [search] Filters by world name. - * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. * @param {string} [notag] Tags to exclude (comma-separated). * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. @@ -10405,7 +10684,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio * @param {'ascending' | 'descending'} [order] * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {string} [search] Filters by world name. - * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. * @param {string} [notag] Tags to exclude (comma-separated). * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. @@ -10504,7 +10783,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio * @param {'ascending' | 'descending'} [order] * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {string} [search] Filters by world name. - * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. * @param {string} [notag] Tags to exclude (comma-separated). * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. @@ -10798,7 +11077,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio * @param {'ascending' | 'descending'} [order] * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {string} [search] Filters by world name. - * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. * @param {string} [notag] Tags to exclude (comma-separated). * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. @@ -11012,7 +11291,7 @@ export const WorldsApiFp = function(configuration?: Configuration) { * @param {'ascending' | 'descending'} [order] * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {string} [search] Filters by world name. - * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. * @param {string} [notag] Tags to exclude (comma-separated). * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. @@ -11034,7 +11313,7 @@ export const WorldsApiFp = function(configuration?: Configuration) { * @param {'ascending' | 'descending'} [order] * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {string} [search] Filters by world name. - * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. * @param {string} [notag] Tags to exclude (comma-separated). * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. @@ -11057,7 +11336,7 @@ export const WorldsApiFp = function(configuration?: Configuration) { * @param {'ascending' | 'descending'} [order] * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {string} [search] Filters by world name. - * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. * @param {string} [notag] Tags to exclude (comma-separated). * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. @@ -11139,7 +11418,7 @@ export const WorldsApiFp = function(configuration?: Configuration) { * @param {'ascending' | 'descending'} [order] * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {string} [search] Filters by world name. - * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. * @param {string} [notag] Tags to exclude (comma-separated). * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. @@ -11214,7 +11493,7 @@ export const WorldsApiFactory = function (configuration?: Configuration, basePat * @param {'ascending' | 'descending'} [order] * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {string} [search] Filters by world name. - * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. * @param {string} [notag] Tags to exclude (comma-separated). * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. @@ -11235,7 +11514,7 @@ export const WorldsApiFactory = function (configuration?: Configuration, basePat * @param {'ascending' | 'descending'} [order] * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {string} [search] Filters by world name. - * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. * @param {string} [notag] Tags to exclude (comma-separated). * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. @@ -11257,7 +11536,7 @@ export const WorldsApiFactory = function (configuration?: Configuration, basePat * @param {'ascending' | 'descending'} [order] * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {string} [search] Filters by world name. - * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. * @param {string} [notag] Tags to exclude (comma-separated). * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. @@ -11333,7 +11612,7 @@ export const WorldsApiFactory = function (configuration?: Configuration, basePat * @param {'ascending' | 'descending'} [order] * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {string} [search] Filters by world name. - * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. * @param {string} [notag] Tags to exclude (comma-separated). * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. @@ -11409,7 +11688,7 @@ export class WorldsApi extends BaseAPI { * @param {'ascending' | 'descending'} [order] * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {string} [search] Filters by world name. - * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. * @param {string} [notag] Tags to exclude (comma-separated). * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. @@ -11432,7 +11711,7 @@ export class WorldsApi extends BaseAPI { * @param {'ascending' | 'descending'} [order] * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {string} [search] Filters by world name. - * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. * @param {string} [notag] Tags to exclude (comma-separated). * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. @@ -11456,7 +11735,7 @@ export class WorldsApi extends BaseAPI { * @param {'ascending' | 'descending'} [order] * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {string} [search] Filters by world name. - * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. * @param {string} [notag] Tags to exclude (comma-separated). * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. @@ -11544,7 +11823,7 @@ export class WorldsApi extends BaseAPI { * @param {'ascending' | 'descending'} [order] * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {string} [search] Filters by world name. - * @param {string} [tag] Tags to include (comma-separated). + * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. * @param {string} [notag] Tags to exclude (comma-separated). * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. diff --git a/base.ts b/base.ts index a2c7f64..e4638df 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.5.2 + * The version of the OpenAPI document: 1.5.3 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index 9354084..b489679 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.5.2 + * The version of the OpenAPI document: 1.5.3 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index 923dce6..0c944ed 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.5.2 + * The version of the OpenAPI document: 1.5.3 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index a26dd16..74a3b21 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.5.2 + * The version of the OpenAPI document: 1.5.3 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index bcd255d..8f40afd 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.5.2", + "version": "1.5.3", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.5.2", + "version": "1.5.3", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", @@ -56,9 +56,9 @@ } }, "node_modules/follow-redirects": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.1.tgz", - "integrity": "sha512-HWqDgT7ZEkqRzBvc2s64vSZ/hfOceEol3ac/7tKwzuvEyWx3/4UegXh5oBOIotkGsObyk3xznnSRVADBgWSQVg==", + "version": "1.14.5", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.5.tgz", + "integrity": "sha512-wtphSXy7d4/OR+MvIFbCVBDzZ5520qV8XfPklSN5QtxuMUJZ+b0Wnst1e1lCDocfzuCkHqj8k0FpZqO+UIaKNA==", "funding": [ { "type": "individual", @@ -171,9 +171,9 @@ } }, "follow-redirects": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.1.tgz", - "integrity": "sha512-HWqDgT7ZEkqRzBvc2s64vSZ/hfOceEol3ac/7tKwzuvEyWx3/4UegXh5oBOIotkGsObyk3xznnSRVADBgWSQVg==" + "version": "1.14.5", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.5.tgz", + "integrity": "sha512-wtphSXy7d4/OR+MvIFbCVBDzZ5520qV8XfPklSN5QtxuMUJZ+b0Wnst1e1lCDocfzuCkHqj8k0FpZqO+UIaKNA==" }, "is-redirect": { "version": "1.0.0", diff --git a/package.json b/package.json index da61b10..4c32ccf 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.5.2", + "version": "1.5.3", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "keywords": [ From 57a8be316c911e6067deaa337c7d955a4ba09dfd Mon Sep 17 00:00:00 2001 From: VRCCat Date: Thu, 25 Nov 2021 21:31:37 +0000 Subject: [PATCH 062/130] Upgrade Node SDK to spec 1.6.0 --- api.ts | 153 +++++++++++++++++++++++++++------------------- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 +- package.json | 2 +- 7 files changed, 96 insertions(+), 71 deletions(-) diff --git a/api.ts b/api.ts index 1e3dd6c..5d11460 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.5.3 + * The version of the OpenAPI document: 1.6.0 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -294,7 +294,7 @@ export interface APIConfig { */ 'gearDemoRoomId': string; /** - * + * WorldID be \"offline\" on User profiles if you are not friends with that user. * @type {string} * @memberof APIConfig */ @@ -306,7 +306,7 @@ export interface APIConfig { */ 'homepageRedirectTarget': string; /** - * + * WorldID be \"offline\" on User profiles if you are not friends with that user. * @type {string} * @memberof APIConfig */ @@ -413,13 +413,13 @@ export interface APIConfig { */ 'supportEmail': string; /** - * + * WorldID be \"offline\" on User profiles if you are not friends with that user. * @type {string} * @memberof APIConfig */ 'timeOutWorldId': string; /** - * + * WorldID be \"offline\" on User profiles if you are not friends with that user. * @type {string} * @memberof APIConfig */ @@ -657,7 +657,7 @@ export interface Avatar { */ 'assetUrlObject'?: object; /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} * @memberof Avatar */ @@ -909,7 +909,7 @@ export interface CreateWorldRequest { */ 'assetVersion'?: number; /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} * @memberof CreateWorldRequest */ @@ -933,7 +933,7 @@ export interface CreateWorldRequest { */ 'description'?: string; /** - * + * WorldID be \"offline\" on User profiles if you are not friends with that user. * @type {string} * @memberof CreateWorldRequest */ @@ -1121,13 +1121,13 @@ export interface CurrentUser { */ 'hasPendingEmail': boolean; /** - * + * WorldID be \"offline\" on User profiles if you are not friends with that user. * @type {string} * @memberof CurrentUser */ 'homeLocation': string; /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} * @memberof CurrentUser */ @@ -1434,7 +1434,7 @@ export interface FavoriteGroup { */ 'ownerDisplayName': string; /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} * @memberof FavoriteGroup */ @@ -1909,7 +1909,7 @@ export enum InfoPushDataClickableCommandEnum { } /** - * + * * `hidden` field is only present if InstanceType is `hidden` aka \"Friends+\", and is instance creator. * `friends` field is only present if InstanceType is `friends` aka \"Friends\", and is instance creator. * `private` field is only present if InstanceType is `private` aka \"Invite\" or \"Invite+\", and is instance creator. * @export * @interface Instance */ @@ -1933,9 +1933,10 @@ export interface Instance { */ 'capacity': number; /** - * + * Always returns \"unknown\". * @type {string} * @memberof Instance + * @deprecated */ 'clientNumber': string; /** @@ -1945,7 +1946,7 @@ export interface Instance { */ 'full': boolean; /** - * + * InstanceID be \"offline\" on User profiles if you are not friends with that user. * @type {string} * @memberof Instance */ @@ -1957,7 +1958,7 @@ export interface Instance { */ 'instanceId': string; /** - * + * InstanceID be \"offline\" on User profiles if you are not friends with that user. * @type {string} * @memberof Instance */ @@ -1975,13 +1976,7 @@ export interface Instance { */ 'name': string; /** - * - * @type {string} - * @memberof Instance - */ - 'nonce'?: string; - /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} * @memberof Instance */ @@ -1994,10 +1989,10 @@ export interface Instance { 'permanent': boolean; /** * - * @type {string} + * @type {Region} * @memberof Instance */ - 'photonRegion': string; + 'photonRegion': Region; /** * * @type {InstancePlatforms} @@ -2006,10 +2001,10 @@ export interface Instance { 'platforms': InstancePlatforms; /** * - * @type {string} + * @type {Region} * @memberof Instance */ - 'region': string; + 'region': Region; /** * * @type {string} @@ -2017,37 +2012,41 @@ export interface Instance { */ 'shortName': string; /** - * + * The tags array on Instances usually contain the language tags of the people in the instance. * @type {Array} * @memberof Instance */ 'tags': Array; /** * + * @type {InstanceType} + * @memberof Instance + */ + 'type': InstanceType; + /** + * WorldID be \"offline\" on User profiles if you are not friends with that user. * @type {string} * @memberof Instance */ - 'type': string; + 'worldId': string; /** - * Always empty on non-existing instances, and non-present on existing instances. - * @type {Array} + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} * @memberof Instance - * @deprecated */ - 'users'?: Array; + 'hidden'?: string; /** - * Only present on non-existing instances, and only contains a very small subject of World object. Use World API instead. - * @type {object} + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} * @memberof Instance - * @deprecated */ - 'world'?: object; + 'friends'?: string; /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} * @memberof Instance */ - 'worldId': string; + 'private'?: string; } /** * @@ -2068,6 +2067,19 @@ export interface InstancePlatforms { */ 'standalonewindows': number; } +/** + * + * @export + * @enum {string} + */ + +export enum InstanceType { + Public = 'public', + Hidden = 'hidden', + Friends = 'friends', + Private = 'private' +} + /** * * @export @@ -2137,7 +2149,7 @@ export enum InviteMessageType { */ export interface InviteRequest { /** - * + * InstanceID be \"offline\" on User profiles if you are not friends with that user. * @type {string} * @memberof InviteRequest */ @@ -2304,7 +2316,7 @@ export interface LimitedUser { */ 'fallbackAvatar': string; /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} * @memberof LimitedUser */ @@ -2377,7 +2389,7 @@ export interface LimitedUser { */ export interface LimitedWorld { /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} * @memberof LimitedWorld */ @@ -2413,7 +2425,7 @@ export interface LimitedWorld { */ 'heat': number; /** - * + * WorldID be \"offline\" on User profiles if you are not friends with that user. * @type {string} * @memberof LimitedWorld */ @@ -2558,7 +2570,7 @@ export interface ModelFile { */ 'name': string; /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} * @memberof ModelFile */ @@ -2583,7 +2595,7 @@ export interface ModelFile { */ export interface ModerateUserRequest { /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} * @memberof ModerateUserRequest */ @@ -2632,7 +2644,7 @@ export interface Notification { */ 'seen': boolean; /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} * @memberof Notification */ @@ -2703,7 +2715,7 @@ export interface Permission { */ 'name': string; /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} * @memberof Permission */ @@ -2740,7 +2752,7 @@ export interface PlayerModeration { */ 'sourceDisplayName': string; /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} * @memberof PlayerModeration */ @@ -2752,7 +2764,7 @@ export interface PlayerModeration { */ 'targetDisplayName': string; /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} * @memberof PlayerModeration */ @@ -2798,6 +2810,19 @@ export interface PublicAnnouncement { */ 'text': string; } +/** + * API/Photon region. + * @export + * @enum {string} + */ + +export enum Region { + Us = 'us', + Use = 'use', + Eu = 'eu', + Jp = 'jp' +} + /** * * @export @@ -3409,7 +3434,7 @@ export interface UpdateWorldRequest { */ 'assetVersion'?: string; /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} * @memberof UpdateWorldRequest */ @@ -3524,7 +3549,7 @@ export interface User { */ 'developerType': DeveloperType; /** - * + * A users visual display name. This is what shows up in-game, and can different from their `username`. Changing display name is restricted to a cooldown period. * @type {string} * @memberof User */ @@ -3536,25 +3561,25 @@ export interface User { */ 'friendKey': string; /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} * @memberof User */ 'id': string; /** - * + * InstanceID be \"offline\" on User profiles if you are not friends with that user. * @type {string} * @memberof User */ 'instanceId'?: string; /** - * + * Either their `friendKey`, or empty string if you are not friends. Unknown usage. * @type {boolean} * @memberof User */ 'isFriend': boolean; /** - * + * Either a date-time or empty string. * @type {string} * @memberof User */ @@ -3566,7 +3591,7 @@ export interface User { */ 'last_platform': string; /** - * + * WorldID be \"offline\" on User profiles if you are not friends with that user. * @type {string} * @memberof User */ @@ -3608,13 +3633,13 @@ export interface User { */ 'userIcon': string; /** - * + * A users unique name, used during login. This is different from `displayName` which is what shows up in-game. A users `username` can never be changed. * @type {string} * @memberof User */ 'username': string; /** - * + * WorldID be \"offline\" on User profiles if you are not friends with that user. * @type {string} * @memberof User */ @@ -3807,7 +3832,7 @@ export interface World { */ 'assetUrlObject': object; /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} * @memberof World */ @@ -3855,7 +3880,7 @@ export interface World { */ 'heat': number; /** - * + * WorldID be \"offline\" on User profiles if you are not friends with that user. * @type {string} * @memberof World */ @@ -3994,7 +4019,7 @@ export interface World { */ export interface WorldMetadata { /** - * + * WorldID be \"offline\" on User profiles if you are not friends with that user. * @type {string} * @memberof WorldMetadata */ @@ -7703,7 +7728,7 @@ export class FriendsApi extends BaseAPI { export const InstancesApiAxiosParamCreator = function (configuration?: Configuration) { return { /** - * Returns an instance. + * Returns an instance. Please read [Instances Tutorial](https://vrchatapi.github.io/tutorials/instances/) for more information on Instances. If an invalid instanceId is provided, this endpoint will simply return \"null\"! * @summary Get Instance * @param {string} worldId * @param {string} instanceId @@ -7839,7 +7864,7 @@ export const InstancesApiFp = function(configuration?: Configuration) { const localVarAxiosParamCreator = InstancesApiAxiosParamCreator(configuration) return { /** - * Returns an instance. + * Returns an instance. Please read [Instances Tutorial](https://vrchatapi.github.io/tutorials/instances/) for more information on Instances. If an invalid instanceId is provided, this endpoint will simply return \"null\"! * @summary Get Instance * @param {string} worldId * @param {string} instanceId @@ -7885,7 +7910,7 @@ export const InstancesApiFactory = function (configuration?: Configuration, base const localVarFp = InstancesApiFp(configuration) return { /** - * Returns an instance. + * Returns an instance. Please read [Instances Tutorial](https://vrchatapi.github.io/tutorials/instances/) for more information on Instances. If an invalid instanceId is provided, this endpoint will simply return \"null\"! * @summary Get Instance * @param {string} worldId * @param {string} instanceId @@ -7928,7 +7953,7 @@ export const InstancesApiFactory = function (configuration?: Configuration, base */ export class InstancesApi extends BaseAPI { /** - * Returns an instance. + * Returns an instance. Please read [Instances Tutorial](https://vrchatapi.github.io/tutorials/instances/) for more information on Instances. If an invalid instanceId is provided, this endpoint will simply return \"null\"! * @summary Get Instance * @param {string} worldId * @param {string} instanceId diff --git a/base.ts b/base.ts index e4638df..a13da09 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.5.3 + * The version of the OpenAPI document: 1.6.0 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index b489679..aa04a4b 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.5.3 + * The version of the OpenAPI document: 1.6.0 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index 0c944ed..5244575 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.5.3 + * The version of the OpenAPI document: 1.6.0 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index 74a3b21..107fc3f 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.5.3 + * The version of the OpenAPI document: 1.6.0 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index 8f40afd..50b26e3 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.5.3", + "version": "1.6.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.5.3", + "version": "1.6.0", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index 4c32ccf..9276716 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.5.3", + "version": "1.6.0", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "keywords": [ From bda30120d1d4d9afc36b38513dbb6d65725fe456 Mon Sep 17 00:00:00 2001 From: VRCCat Date: Fri, 26 Nov 2021 01:36:23 +0000 Subject: [PATCH 063/130] Upgrade Node SDK to spec 1.6.3 --- api.ts | 10 +++++----- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 ++-- package.json | 2 +- 7 files changed, 12 insertions(+), 12 deletions(-) diff --git a/api.ts b/api.ts index 5d11460..3e24901 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.6.0 + * The version of the OpenAPI document: 1.6.3 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -3820,7 +3820,7 @@ export interface VerifyAuthTokenResult { */ export interface World { /** - * + * Empty if unauthenticated. * @type {string} * @memberof World */ @@ -3893,10 +3893,10 @@ export interface World { 'imageUrl': string; /** * - * @type {Array>} + * @type {Array>} * @memberof World */ - 'instances'?: Array>; + 'instances'?: Array>; /** * * @type {string} @@ -3988,7 +3988,7 @@ export interface World { */ 'unityPackageUrlObject': object; /** - * + * Empty if unauthenticated. * @type {Array} * @memberof World */ diff --git a/base.ts b/base.ts index a13da09..42cba09 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.6.0 + * The version of the OpenAPI document: 1.6.3 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index aa04a4b..15e0107 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.6.0 + * The version of the OpenAPI document: 1.6.3 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index 5244575..0b79576 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.6.0 + * The version of the OpenAPI document: 1.6.3 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index 107fc3f..6d2f7a3 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.6.0 + * The version of the OpenAPI document: 1.6.3 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index 50b26e3..6aae841 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.6.0", + "version": "1.6.3", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.6.0", + "version": "1.6.3", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index 9276716..4731ac0 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.6.0", + "version": "1.6.3", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "keywords": [ From 87d5e41d75788fbe6e5d66823b35f3663465893c Mon Sep 17 00:00:00 2001 From: VRCCat Date: Sun, 19 Dec 2021 23:03:34 +0000 Subject: [PATCH 064/130] Upgrade Node SDK to spec 1.6.5 --- api.ts | 7 ++++--- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 ++-- package.json | 2 +- 7 files changed, 11 insertions(+), 10 deletions(-) diff --git a/api.ts b/api.ts index 3e24901..2a640aa 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.6.3 + * The version of the OpenAPI document: 1.6.5 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -2820,7 +2820,8 @@ export enum Region { Us = 'us', Use = 'use', Eu = 'eu', - Jp = 'jp' + Jp = 'jp', + Unknown = 'unknown' } /** @@ -3944,7 +3945,7 @@ export interface World { * @type {string} * @memberof World */ - 'previewYoutubeId'?: string; + 'previewYoutubeId'?: string | null; /** * * @type {number} diff --git a/base.ts b/base.ts index 42cba09..9a19bf0 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.6.3 + * The version of the OpenAPI document: 1.6.5 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index 15e0107..ccb38fb 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.6.3 + * The version of the OpenAPI document: 1.6.5 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index 0b79576..fceca70 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.6.3 + * The version of the OpenAPI document: 1.6.5 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index 6d2f7a3..0100467 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.6.3 + * The version of the OpenAPI document: 1.6.5 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index 6aae841..b41d509 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.6.3", + "version": "1.6.5", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.6.3", + "version": "1.6.5", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index 4731ac0..7431f75 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.6.3", + "version": "1.6.5", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "keywords": [ From f2443e25b59ccdb2750c2afde8dc27a09e18f520 Mon Sep 17 00:00:00 2001 From: VRCCat Date: Sun, 16 Jan 2022 18:58:41 +0000 Subject: [PATCH 065/130] Upgrade Node SDK to spec 1.6.6 --- api.ts | 50 +++++++++++++++++++++++++++++++++++------------ base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 ++-- package.json | 2 +- 7 files changed, 45 insertions(+), 19 deletions(-) diff --git a/api.ts b/api.ts index 2a640aa..068ea20 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.6.5 + * The version of the OpenAPI document: 1.6.6 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -2154,6 +2154,12 @@ export interface InviteRequest { * @memberof InviteRequest */ 'instanceId': string; + /** + * + * @type {number} + * @memberof InviteRequest + */ + 'messageSlot'?: number; } /** * @@ -2836,6 +2842,19 @@ export enum ReleaseStatus { Hidden = 'hidden' } +/** + * + * @export + * @interface RequestInviteRequest + */ +export interface RequestInviteRequest { + /** + * + * @type {number} + * @memberof RequestInviteRequest + */ + 'messageSlot'?: number; +} /** * * @export @@ -8134,10 +8153,11 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio * Requests an invite from a user. Returns the Notification of type `requestInvite` that was sent. * @summary Request Invite * @param {string} userId + * @param {RequestInviteRequest} [requestInviteRequest] Slot number of the Request Message to use when request an invite. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - requestInvite: async (userId: string, options: AxiosRequestConfig = {}): Promise => { + requestInvite: async (userId: string, requestInviteRequest?: RequestInviteRequest, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'userId' is not null or undefined assertParamExists('requestInvite', 'userId', userId) const localVarPath = `/requestInvite/{userId}` @@ -8159,9 +8179,12 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio + localVarHeaderParameter['Content-Type'] = 'application/json'; + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(requestInviteRequest, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), @@ -8218,7 +8241,7 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio * Respond to an invite request by sending a world invite to the requesting user. `:notificationId` is the ID of the requesting notification. * @summary Respond Invite * @param {string} notificationId - * @param {InviteResponse} [inviteResponse] Instance ID when inviting a user. + * @param {InviteResponse} [inviteResponse] Slot number of the Response Message to use when responding to a user. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -8357,11 +8380,12 @@ export const InviteApiFp = function(configuration?: Configuration) { * Requests an invite from a user. Returns the Notification of type `requestInvite` that was sent. * @summary Request Invite * @param {string} userId + * @param {RequestInviteRequest} [requestInviteRequest] Slot number of the Request Message to use when request an invite. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async requestInvite(userId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.requestInvite(userId, options); + async requestInvite(userId: string, requestInviteRequest?: RequestInviteRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.requestInvite(userId, requestInviteRequest, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** @@ -8381,7 +8405,7 @@ export const InviteApiFp = function(configuration?: Configuration) { * Respond to an invite request by sending a world invite to the requesting user. `:notificationId` is the ID of the requesting notification. * @summary Respond Invite * @param {string} notificationId - * @param {InviteResponse} [inviteResponse] Instance ID when inviting a user. + * @param {InviteResponse} [inviteResponse] Slot number of the Response Message to use when responding to a user. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -8451,11 +8475,12 @@ export const InviteApiFactory = function (configuration?: Configuration, basePat * Requests an invite from a user. Returns the Notification of type `requestInvite` that was sent. * @summary Request Invite * @param {string} userId + * @param {RequestInviteRequest} [requestInviteRequest] Slot number of the Request Message to use when request an invite. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - requestInvite(userId: string, options?: any): AxiosPromise { - return localVarFp.requestInvite(userId, options).then((request) => request(axios, basePath)); + requestInvite(userId: string, requestInviteRequest?: RequestInviteRequest, options?: any): AxiosPromise { + return localVarFp.requestInvite(userId, requestInviteRequest, options).then((request) => request(axios, basePath)); }, /** * Resets a single Invite Message back to its original message, and then returns a list of all of them. Admin Credentials are required to update messages of other users! Resetting a message respects the rate-limit, so it is not possible to reset within the 60 minutes countdown. Resetting it does however not set the rate-limit to 60 like when editing it. It is possible to edit it right after resetting it. Trying to edit a message before the cooldown timer expires results in a 429 \"Too Fast Error\". Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite The DELETE endpoint does not have/require any request body. @@ -8473,7 +8498,7 @@ export const InviteApiFactory = function (configuration?: Configuration, basePat * Respond to an invite request by sending a world invite to the requesting user. `:notificationId` is the ID of the requesting notification. * @summary Respond Invite * @param {string} notificationId - * @param {InviteResponse} [inviteResponse] Instance ID when inviting a user. + * @param {InviteResponse} [inviteResponse] Slot number of the Response Message to use when responding to a user. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -8547,12 +8572,13 @@ export class InviteApi extends BaseAPI { * Requests an invite from a user. Returns the Notification of type `requestInvite` that was sent. * @summary Request Invite * @param {string} userId + * @param {RequestInviteRequest} [requestInviteRequest] Slot number of the Request Message to use when request an invite. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof InviteApi */ - public requestInvite(userId: string, options?: AxiosRequestConfig) { - return InviteApiFp(this.configuration).requestInvite(userId, options).then((request) => request(this.axios, this.basePath)); + public requestInvite(userId: string, requestInviteRequest?: RequestInviteRequest, options?: AxiosRequestConfig) { + return InviteApiFp(this.configuration).requestInvite(userId, requestInviteRequest, options).then((request) => request(this.axios, this.basePath)); } /** @@ -8573,7 +8599,7 @@ export class InviteApi extends BaseAPI { * Respond to an invite request by sending a world invite to the requesting user. `:notificationId` is the ID of the requesting notification. * @summary Respond Invite * @param {string} notificationId - * @param {InviteResponse} [inviteResponse] Instance ID when inviting a user. + * @param {InviteResponse} [inviteResponse] Slot number of the Response Message to use when responding to a user. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof InviteApi diff --git a/base.ts b/base.ts index 9a19bf0..6513ac2 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.6.5 + * The version of the OpenAPI document: 1.6.6 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index ccb38fb..d793a6c 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.6.5 + * The version of the OpenAPI document: 1.6.6 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index fceca70..d0c7768 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.6.5 + * The version of the OpenAPI document: 1.6.6 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index 0100467..8a1f852 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.6.5 + * The version of the OpenAPI document: 1.6.6 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index b41d509..aa161c6 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.6.5", + "version": "1.6.6", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.6.5", + "version": "1.6.6", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index 7431f75..8093360 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.6.5", + "version": "1.6.6", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "keywords": [ From 81ef3918c144a6024c7c6af080efcb789d0a45cc Mon Sep 17 00:00:00 2001 From: VRCCat Date: Thu, 20 Jan 2022 17:53:17 +0000 Subject: [PATCH 066/130] Upgrade Node SDK to spec 1.6.7 --- api.ts | 23 +++++++++++------------ base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 ++-- package.json | 2 +- 7 files changed, 18 insertions(+), 19 deletions(-) diff --git a/api.ts b/api.ts index 068ea20..193c57d 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.6.6 + * The version of the OpenAPI document: 1.6.7 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -1551,7 +1551,8 @@ export enum FileDataCategoryEnum { export enum FileStatus { Waiting = 'waiting', Complete = 'complete', - None = 'none' + None = 'none', + Queued = 'queued' } /** @@ -6880,19 +6881,17 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration * @param {string} fileId * @param {number} versionId * @param {'file' | 'signature' | 'delta'} fileType - * @param {number} partNumber + * @param {number} [partNumber] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - startFileDataUpload: async (fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', partNumber: number, options: AxiosRequestConfig = {}): Promise => { + startFileDataUpload: async (fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', partNumber?: number, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'fileId' is not null or undefined assertParamExists('startFileDataUpload', 'fileId', fileId) // verify required parameter 'versionId' is not null or undefined assertParamExists('startFileDataUpload', 'versionId', versionId) // verify required parameter 'fileType' is not null or undefined assertParamExists('startFileDataUpload', 'fileType', fileType) - // verify required parameter 'partNumber' is not null or undefined - assertParamExists('startFileDataUpload', 'partNumber', partNumber) const localVarPath = `/file/{fileId}/{versionId}/{fileType}/start` .replace(`{${"fileId"}}`, encodeURIComponent(String(fileId))) .replace(`{${"versionId"}}`, encodeURIComponent(String(versionId))) @@ -7053,11 +7052,11 @@ export const FilesApiFp = function(configuration?: Configuration) { * @param {string} fileId * @param {number} versionId * @param {'file' | 'signature' | 'delta'} fileType - * @param {number} partNumber + * @param {number} [partNumber] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async startFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', partNumber: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async startFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', partNumber?: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.startFileDataUpload(fileId, versionId, fileType, partNumber, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -7178,11 +7177,11 @@ export const FilesApiFactory = function (configuration?: Configuration, basePath * @param {string} fileId * @param {number} versionId * @param {'file' | 'signature' | 'delta'} fileType - * @param {number} partNumber + * @param {number} [partNumber] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - startFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', partNumber: number, options?: any): AxiosPromise { + startFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', partNumber?: number, options?: any): AxiosPromise { return localVarFp.startFileDataUpload(fileId, versionId, fileType, partNumber, options).then((request) => request(axios, basePath)); }, }; @@ -7320,12 +7319,12 @@ export class FilesApi extends BaseAPI { * @param {string} fileId * @param {number} versionId * @param {'file' | 'signature' | 'delta'} fileType - * @param {number} partNumber + * @param {number} [partNumber] * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof FilesApi */ - public startFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', partNumber: number, options?: AxiosRequestConfig) { + public startFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', partNumber?: number, options?: AxiosRequestConfig) { return FilesApiFp(this.configuration).startFileDataUpload(fileId, versionId, fileType, partNumber, options).then((request) => request(this.axios, this.basePath)); } } diff --git a/base.ts b/base.ts index 6513ac2..830011e 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.6.6 + * The version of the OpenAPI document: 1.6.7 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index d793a6c..7cff806 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.6.6 + * The version of the OpenAPI document: 1.6.7 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index d0c7768..75a9ab9 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.6.6 + * The version of the OpenAPI document: 1.6.7 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index 8a1f852..1d848b6 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.6.6 + * The version of the OpenAPI document: 1.6.7 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index aa161c6..73fba7d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.6.6", + "version": "1.6.7", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.6.6", + "version": "1.6.7", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index 8093360..f8f48f4 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.6.6", + "version": "1.6.7", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "keywords": [ From e044bccb45236ef8db5d34ccce3a37082d7c3dca Mon Sep 17 00:00:00 2001 From: VRCCat Date: Sat, 22 Jan 2022 00:06:57 +0000 Subject: [PATCH 067/130] Upgrade Node SDK to spec 1.6.8 --- api.ts | 10 +++++----- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 ++-- package.json | 2 +- 7 files changed, 12 insertions(+), 12 deletions(-) diff --git a/api.ts b/api.ts index 193c57d..5bec976 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.6.7 + * The version of the OpenAPI document: 1.6.8 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -1947,7 +1947,7 @@ export interface Instance { */ 'full': boolean; /** - * InstanceID be \"offline\" on User profiles if you are not friends with that user. + * InstanceID can be \"offline\" on User profiles if you are not friends with that user and \"private\" if you are friends and user is in private instance. * @type {string} * @memberof Instance */ @@ -1959,7 +1959,7 @@ export interface Instance { */ 'instanceId': string; /** - * InstanceID be \"offline\" on User profiles if you are not friends with that user. + * InstanceID can be \"offline\" on User profiles if you are not friends with that user and \"private\" if you are friends and user is in private instance. * @type {string} * @memberof Instance */ @@ -2150,7 +2150,7 @@ export enum InviteMessageType { */ export interface InviteRequest { /** - * InstanceID be \"offline\" on User profiles if you are not friends with that user. + * InstanceID can be \"offline\" on User profiles if you are not friends with that user and \"private\" if you are friends and user is in private instance. * @type {string} * @memberof InviteRequest */ @@ -3588,7 +3588,7 @@ export interface User { */ 'id': string; /** - * InstanceID be \"offline\" on User profiles if you are not friends with that user. + * InstanceID can be \"offline\" on User profiles if you are not friends with that user and \"private\" if you are friends and user is in private instance. * @type {string} * @memberof User */ diff --git a/base.ts b/base.ts index 830011e..e156966 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.6.7 + * The version of the OpenAPI document: 1.6.8 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index 7cff806..752a276 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.6.7 + * The version of the OpenAPI document: 1.6.8 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index 75a9ab9..f07f502 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.6.7 + * The version of the OpenAPI document: 1.6.8 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index 1d848b6..1e84bdd 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.6.7 + * The version of the OpenAPI document: 1.6.8 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index 73fba7d..5852cab 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.6.7", + "version": "1.6.8", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.6.7", + "version": "1.6.8", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index f8f48f4..b0e0157 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.6.7", + "version": "1.6.8", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "keywords": [ From b26b9244160ebaa089c37863e57d8f54c950d617 Mon Sep 17 00:00:00 2001 From: VRCCat Date: Thu, 27 Jan 2022 00:04:36 +0000 Subject: [PATCH 068/130] Upgrade Node SDK to spec 1.6.9 --- api.ts | 2 +- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 ++-- package.json | 2 +- 7 files changed, 8 insertions(+), 8 deletions(-) diff --git a/api.ts b/api.ts index 5bec976..661eb40 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.6.8 + * The version of the OpenAPI document: 1.6.9 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/base.ts b/base.ts index e156966..1828508 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.6.8 + * The version of the OpenAPI document: 1.6.9 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index 752a276..c0dd6a8 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.6.8 + * The version of the OpenAPI document: 1.6.9 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index f07f502..532e4ed 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.6.8 + * The version of the OpenAPI document: 1.6.9 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index 1e84bdd..8df283c 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.6.8 + * The version of the OpenAPI document: 1.6.9 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index 5852cab..f5005c5 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.6.8", + "version": "1.6.9", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.6.8", + "version": "1.6.9", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index b0e0157..0062c5b 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.6.8", + "version": "1.6.9", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "keywords": [ From 2f982a8dbe17f035f2a0f6fede5367751f270154 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 14 Feb 2022 15:39:59 +0100 Subject: [PATCH 069/130] build(deps): bump follow-redirects from 1.14.5 to 1.14.8 (#2) Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.14.5 to 1.14.8. - [Release notes](https://github.com/follow-redirects/follow-redirects/releases) - [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.14.5...v1.14.8) --- updated-dependencies: - dependency-name: follow-redirects dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/package-lock.json b/package-lock.json index f5005c5..7feafec 100644 --- a/package-lock.json +++ b/package-lock.json @@ -56,9 +56,9 @@ } }, "node_modules/follow-redirects": { - "version": "1.14.5", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.5.tgz", - "integrity": "sha512-wtphSXy7d4/OR+MvIFbCVBDzZ5520qV8XfPklSN5QtxuMUJZ+b0Wnst1e1lCDocfzuCkHqj8k0FpZqO+UIaKNA==", + "version": "1.14.8", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.8.tgz", + "integrity": "sha512-1x0S9UVJHsQprFcEC/qnNzBLcIxsjAV905f/UkQxbclCsoTWlacCNOpQa/anodLl2uaEKFhfWOvM2Qg77+15zA==", "funding": [ { "type": "individual", @@ -171,9 +171,9 @@ } }, "follow-redirects": { - "version": "1.14.5", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.5.tgz", - "integrity": "sha512-wtphSXy7d4/OR+MvIFbCVBDzZ5520qV8XfPklSN5QtxuMUJZ+b0Wnst1e1lCDocfzuCkHqj8k0FpZqO+UIaKNA==" + "version": "1.14.8", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.8.tgz", + "integrity": "sha512-1x0S9UVJHsQprFcEC/qnNzBLcIxsjAV905f/UkQxbclCsoTWlacCNOpQa/anodLl2uaEKFhfWOvM2Qg77+15zA==" }, "is-redirect": { "version": "1.0.0", From 9fb6465c21dfffb12d30cbc96503092518787f1d Mon Sep 17 00:00:00 2001 From: VRCCat Date: Sat, 9 Apr 2022 04:14:47 +0000 Subject: [PATCH 070/130] Upgrade Node SDK to spec 1.6.10 --- api.ts | 9 ++++++++- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 ++-- package.json | 2 +- 7 files changed, 15 insertions(+), 8 deletions(-) diff --git a/api.ts b/api.ts index 661eb40..eceb220 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.6.9 + * The version of the OpenAPI document: 1.6.10 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -1246,6 +1246,12 @@ export interface CurrentUser { * @memberof CurrentUser */ 'twoFactorAuthEnabled': boolean; + /** + * + * @type {string} + * @memberof CurrentUser + */ + 'twoFactorAuthEnabledDate': string; /** * * @type {boolean} @@ -2826,6 +2832,7 @@ export interface PublicAnnouncement { export enum Region { Us = 'us', Use = 'use', + Usw = 'usw', Eu = 'eu', Jp = 'jp', Unknown = 'unknown' diff --git a/base.ts b/base.ts index 1828508..a113e10 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.6.9 + * The version of the OpenAPI document: 1.6.10 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index c0dd6a8..30e6f67 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.6.9 + * The version of the OpenAPI document: 1.6.10 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index 532e4ed..1276723 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.6.9 + * The version of the OpenAPI document: 1.6.10 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index 8df283c..c0b19ba 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.6.9 + * The version of the OpenAPI document: 1.6.10 * Contact: me@ruby.js.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index 7feafec..a0ad8ac 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.6.9", + "version": "1.6.10", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.6.9", + "version": "1.6.10", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index 0062c5b..c912647 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.6.9", + "version": "1.6.10", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "keywords": [ From 6486a7cf82e7da88d7e8f972ee1725c381dec32f Mon Sep 17 00:00:00 2001 From: VRCCat Date: Fri, 15 Apr 2022 15:57:55 +0000 Subject: [PATCH 071/130] Upgrade Node SDK to spec 1.7.0 --- api.ts | 18 ++++++++++-------- base.ts | 4 ++-- common.ts | 4 ++-- configuration.ts | 4 ++-- index.ts | 4 ++-- package-lock.json | 4 ++-- package.json | 2 +- 7 files changed, 21 insertions(+), 19 deletions(-) diff --git a/api.ts b/api.ts index eceb220..94a0800 100644 --- a/api.ts +++ b/api.ts @@ -3,8 +3,8 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.6.10 - * Contact: me@ruby.js.org + * The version of the OpenAPI document: 1.7.0 + * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech @@ -1251,7 +1251,7 @@ export interface CurrentUser { * @type {string} * @memberof CurrentUser */ - 'twoFactorAuthEnabledDate': string; + 'twoFactorAuthEnabledDate'?: string; /** * * @type {boolean} @@ -2801,7 +2801,9 @@ export enum PlayerModerationType { Block = 'block', Unblock = 'unblock', HideAvatar = 'hideAvatar', - ShowAvatar = 'showAvatar' + ShowAvatar = 'showAvatar', + InteractOn = 'interactOn', + InteractOff = 'interactOff' } /** @@ -9392,7 +9394,7 @@ export const PlayermoderationApiAxiosParamCreator = function (configuration?: Co }; }, /** - * Moderate a user, e.g. unmute them or show their avatar. + * Moderate a user, e.g. unmute them or show their avatar. Please see the [Player Moderation docs](https://vrchatapi.github.io/docs/api/#tag--playermoderation) on what playerModerations are, and how they differ from staff moderations. * @summary Moderate User * @param {ModerateUserRequest} [moderateUserRequest] * @param {*} [options] Override http request option. @@ -9522,7 +9524,7 @@ export const PlayermoderationApiFp = function(configuration?: Configuration) { return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Moderate a user, e.g. unmute them or show their avatar. + * Moderate a user, e.g. unmute them or show their avatar. Please see the [Player Moderation docs](https://vrchatapi.github.io/docs/api/#tag--playermoderation) on what playerModerations are, and how they differ from staff moderations. * @summary Moderate User * @param {ModerateUserRequest} [moderateUserRequest] * @param {*} [options] Override http request option. @@ -9594,7 +9596,7 @@ export const PlayermoderationApiFactory = function (configuration?: Configuratio return localVarFp.getPlayerModerations(type, targetUserId, options).then((request) => request(axios, basePath)); }, /** - * Moderate a user, e.g. unmute them or show their avatar. + * Moderate a user, e.g. unmute them or show their avatar. Please see the [Player Moderation docs](https://vrchatapi.github.io/docs/api/#tag--playermoderation) on what playerModerations are, and how they differ from staff moderations. * @summary Moderate User * @param {ModerateUserRequest} [moderateUserRequest] * @param {*} [options] Override http request option. @@ -9672,7 +9674,7 @@ export class PlayermoderationApi extends BaseAPI { } /** - * Moderate a user, e.g. unmute them or show their avatar. + * Moderate a user, e.g. unmute them or show their avatar. Please see the [Player Moderation docs](https://vrchatapi.github.io/docs/api/#tag--playermoderation) on what playerModerations are, and how they differ from staff moderations. * @summary Moderate User * @param {ModerateUserRequest} [moderateUserRequest] * @param {*} [options] Override http request option. diff --git a/base.ts b/base.ts index a113e10..481c614 100644 --- a/base.ts +++ b/base.ts @@ -3,8 +3,8 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.6.10 - * Contact: me@ruby.js.org + * The version of the OpenAPI document: 1.7.0 + * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech diff --git a/common.ts b/common.ts index 30e6f67..d6efa6b 100644 --- a/common.ts +++ b/common.ts @@ -3,8 +3,8 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.6.10 - * Contact: me@ruby.js.org + * The version of the OpenAPI document: 1.7.0 + * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech diff --git a/configuration.ts b/configuration.ts index 1276723..8b54f59 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,8 +3,8 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.6.10 - * Contact: me@ruby.js.org + * The version of the OpenAPI document: 1.7.0 + * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech diff --git a/index.ts b/index.ts index c0b19ba..c56b4dc 100644 --- a/index.ts +++ b/index.ts @@ -3,8 +3,8 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.6.10 - * Contact: me@ruby.js.org + * The version of the OpenAPI document: 1.7.0 + * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech diff --git a/package-lock.json b/package-lock.json index a0ad8ac..0336a43 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.6.10", + "version": "1.7.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.6.10", + "version": "1.7.0", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index c912647..2908384 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.6.10", + "version": "1.7.0", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "keywords": [ From bc9bfcf31bfb0890db22d7306c3d2c233c0cc9d0 Mon Sep 17 00:00:00 2001 From: VRCCat Date: Wed, 27 Apr 2022 22:45:03 +0000 Subject: [PATCH 072/130] Upgrade Node SDK to spec 1.7.1 --- api.ts | 4 ++-- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 ++-- package.json | 2 +- 7 files changed, 9 insertions(+), 9 deletions(-) diff --git a/api.ts b/api.ts index 94a0800..27b84a8 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.7.0 + * The version of the OpenAPI document: 1.7.1 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -1251,7 +1251,7 @@ export interface CurrentUser { * @type {string} * @memberof CurrentUser */ - 'twoFactorAuthEnabledDate'?: string; + 'twoFactorAuthEnabledDate'?: string | null; /** * * @type {boolean} diff --git a/base.ts b/base.ts index 481c614..455d414 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.7.0 + * The version of the OpenAPI document: 1.7.1 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index d6efa6b..823519a 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.7.0 + * The version of the OpenAPI document: 1.7.1 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index 8b54f59..5dd0fed 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.7.0 + * The version of the OpenAPI document: 1.7.1 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index c56b4dc..56c4372 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.7.0 + * The version of the OpenAPI document: 1.7.1 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index 0336a43..aa620da 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.7.0", + "version": "1.7.1", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.7.0", + "version": "1.7.1", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index 2908384..6b1105c 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.7.0", + "version": "1.7.1", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "keywords": [ From 99b1c412f631f2c772b36c3d7e45261b14a8eb2f Mon Sep 17 00:00:00 2001 From: VRCCat Date: Wed, 6 Jul 2022 17:39:31 +0000 Subject: [PATCH 073/130] Upgrade Node SDK to spec 1.7.2 --- api.ts | 98 +++++++++++++++++++++++------------------------ base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 +- package.json | 2 +- 7 files changed, 56 insertions(+), 56 deletions(-) diff --git a/api.ts b/api.ts index 27b84a8..4908572 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.7.1 + * The version of the OpenAPI document: 1.7.2 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -4731,7 +4731,7 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati /** * Search and list favorited avatars by query filters. * @summary List Favorited Avatars - * @param {string} [featured] Filters on featured results. + * @param {boolean} [featured] Filters on featured results. * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] * @param {number} [n] The number of objects to return. * @param {'ascending' | 'descending'} [order] @@ -4747,7 +4747,7 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFavoritedAvatars: async (featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options: AxiosRequestConfig = {}): Promise => { + getFavoritedAvatars: async (featured?: boolean, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/avatars/favorites`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -4830,7 +4830,7 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati /** * Search and list avatars by query filters. You can only search your own or featured avatars. It is not possible as a normal user to search other peoples avatars. * @summary Search Avatars - * @param {string} [featured] Filters on featured results. + * @param {boolean} [featured] Filters on featured results. * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] * @param {'me'} [user] Set to `me` for searching own avatars. * @param {string} [userId] Filter by UserID. @@ -4846,7 +4846,7 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati * @param {*} [options] Override http request option. * @throws {RequiredError} */ - searchAvatars: async (featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options: AxiosRequestConfig = {}): Promise => { + searchAvatars: async (featured?: boolean, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/avatars`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -5090,7 +5090,7 @@ export const AvatarsApiFp = function(configuration?: Configuration) { /** * Search and list favorited avatars by query filters. * @summary List Favorited Avatars - * @param {string} [featured] Filters on featured results. + * @param {boolean} [featured] Filters on featured results. * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] * @param {number} [n] The number of objects to return. * @param {'ascending' | 'descending'} [order] @@ -5106,14 +5106,14 @@ export const AvatarsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getFavoritedAvatars(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + async getFavoritedAvatars(featured?: boolean, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.getFavoritedAvatars(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * Search and list avatars by query filters. You can only search your own or featured avatars. It is not possible as a normal user to search other peoples avatars. * @summary Search Avatars - * @param {string} [featured] Filters on featured results. + * @param {boolean} [featured] Filters on featured results. * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] * @param {'me'} [user] Set to `me` for searching own avatars. * @param {string} [userId] Filter by UserID. @@ -5129,7 +5129,7 @@ export const AvatarsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async searchAvatars(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + async searchAvatars(featured?: boolean, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.searchAvatars(featured, sort, user, userId, n, order, offset, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -5210,7 +5210,7 @@ export const AvatarsApiFactory = function (configuration?: Configuration, basePa /** * Search and list favorited avatars by query filters. * @summary List Favorited Avatars - * @param {string} [featured] Filters on featured results. + * @param {boolean} [featured] Filters on featured results. * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] * @param {number} [n] The number of objects to return. * @param {'ascending' | 'descending'} [order] @@ -5226,13 +5226,13 @@ export const AvatarsApiFactory = function (configuration?: Configuration, basePa * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFavoritedAvatars(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any): AxiosPromise> { + getFavoritedAvatars(featured?: boolean, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any): AxiosPromise> { return localVarFp.getFavoritedAvatars(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options).then((request) => request(axios, basePath)); }, /** * Search and list avatars by query filters. You can only search your own or featured avatars. It is not possible as a normal user to search other peoples avatars. * @summary Search Avatars - * @param {string} [featured] Filters on featured results. + * @param {boolean} [featured] Filters on featured results. * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] * @param {'me'} [user] Set to `me` for searching own avatars. * @param {string} [userId] Filter by UserID. @@ -5248,7 +5248,7 @@ export const AvatarsApiFactory = function (configuration?: Configuration, basePa * @param {*} [options] Override http request option. * @throws {RequiredError} */ - searchAvatars(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: any): AxiosPromise> { + searchAvatars(featured?: boolean, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: any): AxiosPromise> { return localVarFp.searchAvatars(featured, sort, user, userId, n, order, offset, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options).then((request) => request(axios, basePath)); }, /** @@ -5331,7 +5331,7 @@ export class AvatarsApi extends BaseAPI { /** * Search and list favorited avatars by query filters. * @summary List Favorited Avatars - * @param {string} [featured] Filters on featured results. + * @param {boolean} [featured] Filters on featured results. * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] * @param {number} [n] The number of objects to return. * @param {'ascending' | 'descending'} [order] @@ -5348,14 +5348,14 @@ export class AvatarsApi extends BaseAPI { * @throws {RequiredError} * @memberof AvatarsApi */ - public getFavoritedAvatars(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: AxiosRequestConfig) { + public getFavoritedAvatars(featured?: boolean, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: AxiosRequestConfig) { return AvatarsApiFp(this.configuration).getFavoritedAvatars(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options).then((request) => request(this.axios, this.basePath)); } /** * Search and list avatars by query filters. You can only search your own or featured avatars. It is not possible as a normal user to search other peoples avatars. * @summary Search Avatars - * @param {string} [featured] Filters on featured results. + * @param {boolean} [featured] Filters on featured results. * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] * @param {'me'} [user] Set to `me` for searching own avatars. * @param {string} [userId] Filter by UserID. @@ -5372,7 +5372,7 @@ export class AvatarsApi extends BaseAPI { * @throws {RequiredError} * @memberof AvatarsApi */ - public searchAvatars(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: AxiosRequestConfig) { + public searchAvatars(featured?: boolean, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: AxiosRequestConfig) { return AvatarsApiFp(this.configuration).searchAvatars(featured, sort, user, userId, n, order, offset, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options).then((request) => request(this.axios, this.basePath)); } @@ -10644,7 +10644,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio /** * Search and list currently Active worlds by query filters. * @summary List Active Worlds - * @param {string} [featured] Filters on featured results. + * @param {boolean} [featured] Filters on featured results. * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] * @param {number} [n] The number of objects to return. * @param {'ascending' | 'descending'} [order] @@ -10659,7 +10659,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getActiveWorlds: async (featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options: AxiosRequestConfig = {}): Promise => { + getActiveWorlds: async (featured?: boolean, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/worlds/active`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -10738,7 +10738,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio /** * Search and list favorited worlds by query filters. * @summary List Favorited Worlds - * @param {string} [featured] Filters on featured results. + * @param {boolean} [featured] Filters on featured results. * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] * @param {number} [n] The number of objects to return. * @param {'ascending' | 'descending'} [order] @@ -10754,7 +10754,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFavoritedWorlds: async (featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options: AxiosRequestConfig = {}): Promise => { + getFavoritedWorlds: async (featured?: boolean, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/worlds/favorites`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -10837,7 +10837,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio /** * Search and list recently visited worlds by query filters. * @summary List Recent Worlds - * @param {string} [featured] Filters on featured results. + * @param {boolean} [featured] Filters on featured results. * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] * @param {number} [n] The number of objects to return. * @param {'ascending' | 'descending'} [order] @@ -10853,7 +10853,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getRecentWorlds: async (featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options: AxiosRequestConfig = {}): Promise => { + getRecentWorlds: async (featured?: boolean, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/worlds/recent`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -11129,7 +11129,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio /** * Search and list any worlds by query filters. * @summary Search All Worlds - * @param {string} [featured] Filters on featured results. + * @param {boolean} [featured] Filters on featured results. * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] * @param {'me'} [user] Set to `me` for searching own worlds. * @param {string} [userId] Filter by UserID. @@ -11146,7 +11146,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio * @param {*} [options] Override http request option. * @throws {RequiredError} */ - searchWorlds: async (featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options: AxiosRequestConfig = {}): Promise => { + searchWorlds: async (featured?: boolean, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/worlds`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -11345,7 +11345,7 @@ export const WorldsApiFp = function(configuration?: Configuration) { /** * Search and list currently Active worlds by query filters. * @summary List Active Worlds - * @param {string} [featured] Filters on featured results. + * @param {boolean} [featured] Filters on featured results. * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] * @param {number} [n] The number of objects to return. * @param {'ascending' | 'descending'} [order] @@ -11360,14 +11360,14 @@ export const WorldsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getActiveWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + async getActiveWorlds(featured?: boolean, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.getActiveWorlds(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * Search and list favorited worlds by query filters. * @summary List Favorited Worlds - * @param {string} [featured] Filters on featured results. + * @param {boolean} [featured] Filters on featured results. * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] * @param {number} [n] The number of objects to return. * @param {'ascending' | 'descending'} [order] @@ -11383,14 +11383,14 @@ export const WorldsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getFavoritedWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + async getFavoritedWorlds(featured?: boolean, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.getFavoritedWorlds(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * Search and list recently visited worlds by query filters. * @summary List Recent Worlds - * @param {string} [featured] Filters on featured results. + * @param {boolean} [featured] Filters on featured results. * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] * @param {number} [n] The number of objects to return. * @param {'ascending' | 'descending'} [order] @@ -11406,7 +11406,7 @@ export const WorldsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getRecentWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + async getRecentWorlds(featured?: boolean, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.getRecentWorlds(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -11470,7 +11470,7 @@ export const WorldsApiFp = function(configuration?: Configuration) { /** * Search and list any worlds by query filters. * @summary Search All Worlds - * @param {string} [featured] Filters on featured results. + * @param {boolean} [featured] Filters on featured results. * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] * @param {'me'} [user] Set to `me` for searching own worlds. * @param {string} [userId] Filter by UserID. @@ -11487,7 +11487,7 @@ export const WorldsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async searchWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + async searchWorlds(featured?: boolean, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.searchWorlds(featured, sort, user, userId, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -11547,7 +11547,7 @@ export const WorldsApiFactory = function (configuration?: Configuration, basePat /** * Search and list currently Active worlds by query filters. * @summary List Active Worlds - * @param {string} [featured] Filters on featured results. + * @param {boolean} [featured] Filters on featured results. * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] * @param {number} [n] The number of objects to return. * @param {'ascending' | 'descending'} [order] @@ -11562,13 +11562,13 @@ export const WorldsApiFactory = function (configuration?: Configuration, basePat * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getActiveWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: any): AxiosPromise> { + getActiveWorlds(featured?: boolean, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: any): AxiosPromise> { return localVarFp.getActiveWorlds(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options).then((request) => request(axios, basePath)); }, /** * Search and list favorited worlds by query filters. * @summary List Favorited Worlds - * @param {string} [featured] Filters on featured results. + * @param {boolean} [featured] Filters on featured results. * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] * @param {number} [n] The number of objects to return. * @param {'ascending' | 'descending'} [order] @@ -11584,13 +11584,13 @@ export const WorldsApiFactory = function (configuration?: Configuration, basePat * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFavoritedWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any): AxiosPromise> { + getFavoritedWorlds(featured?: boolean, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any): AxiosPromise> { return localVarFp.getFavoritedWorlds(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options).then((request) => request(axios, basePath)); }, /** * Search and list recently visited worlds by query filters. * @summary List Recent Worlds - * @param {string} [featured] Filters on featured results. + * @param {boolean} [featured] Filters on featured results. * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] * @param {number} [n] The number of objects to return. * @param {'ascending' | 'descending'} [order] @@ -11606,7 +11606,7 @@ export const WorldsApiFactory = function (configuration?: Configuration, basePat * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getRecentWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any): AxiosPromise> { + getRecentWorlds(featured?: boolean, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any): AxiosPromise> { return localVarFp.getRecentWorlds(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options).then((request) => request(axios, basePath)); }, /** @@ -11664,7 +11664,7 @@ export const WorldsApiFactory = function (configuration?: Configuration, basePat /** * Search and list any worlds by query filters. * @summary Search All Worlds - * @param {string} [featured] Filters on featured results. + * @param {boolean} [featured] Filters on featured results. * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] * @param {'me'} [user] Set to `me` for searching own worlds. * @param {string} [userId] Filter by UserID. @@ -11681,7 +11681,7 @@ export const WorldsApiFactory = function (configuration?: Configuration, basePat * @param {*} [options] Override http request option. * @throws {RequiredError} */ - searchWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: any): AxiosPromise> { + searchWorlds(featured?: boolean, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: any): AxiosPromise> { return localVarFp.searchWorlds(featured, sort, user, userId, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options).then((request) => request(axios, basePath)); }, /** @@ -11742,7 +11742,7 @@ export class WorldsApi extends BaseAPI { /** * Search and list currently Active worlds by query filters. * @summary List Active Worlds - * @param {string} [featured] Filters on featured results. + * @param {boolean} [featured] Filters on featured results. * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] * @param {number} [n] The number of objects to return. * @param {'ascending' | 'descending'} [order] @@ -11758,14 +11758,14 @@ export class WorldsApi extends BaseAPI { * @throws {RequiredError} * @memberof WorldsApi */ - public getActiveWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: AxiosRequestConfig) { + public getActiveWorlds(featured?: boolean, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: AxiosRequestConfig) { return WorldsApiFp(this.configuration).getActiveWorlds(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options).then((request) => request(this.axios, this.basePath)); } /** * Search and list favorited worlds by query filters. * @summary List Favorited Worlds - * @param {string} [featured] Filters on featured results. + * @param {boolean} [featured] Filters on featured results. * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] * @param {number} [n] The number of objects to return. * @param {'ascending' | 'descending'} [order] @@ -11782,14 +11782,14 @@ export class WorldsApi extends BaseAPI { * @throws {RequiredError} * @memberof WorldsApi */ - public getFavoritedWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: AxiosRequestConfig) { + public getFavoritedWorlds(featured?: boolean, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: AxiosRequestConfig) { return WorldsApiFp(this.configuration).getFavoritedWorlds(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options).then((request) => request(this.axios, this.basePath)); } /** * Search and list recently visited worlds by query filters. * @summary List Recent Worlds - * @param {string} [featured] Filters on featured results. + * @param {boolean} [featured] Filters on featured results. * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] * @param {number} [n] The number of objects to return. * @param {'ascending' | 'descending'} [order] @@ -11806,7 +11806,7 @@ export class WorldsApi extends BaseAPI { * @throws {RequiredError} * @memberof WorldsApi */ - public getRecentWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: AxiosRequestConfig) { + public getRecentWorlds(featured?: boolean, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: AxiosRequestConfig) { return WorldsApiFp(this.configuration).getRecentWorlds(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options).then((request) => request(this.axios, this.basePath)); } @@ -11875,7 +11875,7 @@ export class WorldsApi extends BaseAPI { /** * Search and list any worlds by query filters. * @summary Search All Worlds - * @param {string} [featured] Filters on featured results. + * @param {boolean} [featured] Filters on featured results. * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] * @param {'me'} [user] Set to `me` for searching own worlds. * @param {string} [userId] Filter by UserID. @@ -11893,7 +11893,7 @@ export class WorldsApi extends BaseAPI { * @throws {RequiredError} * @memberof WorldsApi */ - public searchWorlds(featured?: string, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: AxiosRequestConfig) { + public searchWorlds(featured?: boolean, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: AxiosRequestConfig) { return WorldsApiFp(this.configuration).searchWorlds(featured, sort, user, userId, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options).then((request) => request(this.axios, this.basePath)); } diff --git a/base.ts b/base.ts index 455d414..4324c3f 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.7.1 + * The version of the OpenAPI document: 1.7.2 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index 823519a..f152db3 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.7.1 + * The version of the OpenAPI document: 1.7.2 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index 5dd0fed..25fcbce 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.7.1 + * The version of the OpenAPI document: 1.7.2 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index 56c4372..80006c0 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.7.1 + * The version of the OpenAPI document: 1.7.2 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index aa620da..e6cbd28 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.7.1", + "version": "1.7.2", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.7.1", + "version": "1.7.2", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index 6b1105c..0148de7 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.7.1", + "version": "1.7.2", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "keywords": [ From 2eca283a2b06e7b6efbc239ff420eb2c68337093 Mon Sep 17 00:00:00 2001 From: VRCCat Date: Sat, 3 Sep 2022 10:13:23 +0000 Subject: [PATCH 074/130] Upgrade Node SDK to spec 1.7.3 --- api.ts | 288 ++++++++++++++++++++++++++++++++++++++++++---- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 +- package.json | 2 +- 7 files changed, 272 insertions(+), 30 deletions(-) diff --git a/api.ts b/api.ts index 4908572..b940833 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.7.2 + * The version of the OpenAPI document: 1.7.3 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -513,13 +513,13 @@ export interface APIConfig { * @type {string} * @memberof APIConfig */ - 'youtubedl-hash': string; + 'player-url-resolver-hash': string; /** * Currently used youtube-dl.exe version * @type {string} * @memberof APIConfig */ - 'youtubedl-version': string; + 'player-url-resolver-version': string; } /** * @@ -2149,6 +2149,19 @@ export enum InviteMessageType { RequestResponse = 'requestResponse' } +/** + * + * @export + * @interface InviteMyselfToRequest + */ +export interface InviteMyselfToRequest { + /** + * Short Name of the Instance; can be retrieved from the Get Instance Short Name endpoint. + * @type {string} + * @memberof InviteMyselfToRequest + */ + 'shortName': string; +} /** * * @export @@ -2884,6 +2897,61 @@ export interface Response { */ 'status_code': number; } +/** + * + * @export + * @interface SentNotification + */ +export interface SentNotification { + /** + * + * @type {string} + * @memberof SentNotification + */ + 'created_at': string; + /** + * **NOTICE:** This is not a JSON object, this is a json **encoded** object, meaning you have to json-de-encode to get the NotificationDetail object depending on the NotificationType. + * @type {string} + * @memberof SentNotification + */ + 'details': string; + /** + * + * @type {string} + * @memberof SentNotification + */ + 'id': string; + /** + * + * @type {string} + * @memberof SentNotification + */ + 'message': string; + /** + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof SentNotification + */ + 'recieverUserId': string; + /** + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof SentNotification + */ + 'senderUserId': string; + /** + * + * @type {string} + * @memberof SentNotification + */ + 'senderUsername': string; + /** + * + * @type {NotificationType} + * @memberof SentNotification + */ + 'type': NotificationType; +} /** * * @export @@ -3590,6 +3658,12 @@ export interface User { * @memberof User */ 'friendKey': string; + /** + * + * @type {string} + * @memberof User + */ + 'friendRequestStatus': string; /** * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} @@ -3608,6 +3682,12 @@ export interface User { * @memberof User */ 'isFriend': boolean; + /** + * Either a date-time or empty string. + * @type {string} + * @memberof User + */ + 'last_activity': string; /** * Either a date-time or empty string. * @type {string} @@ -3626,6 +3706,12 @@ export interface User { * @memberof User */ 'location'?: string; + /** + * + * @type {string} + * @memberof User + */ + 'note'?: string; /** * * @type {string} @@ -3656,6 +3742,24 @@ export interface User { * @memberof User */ 'tags': Array; + /** + * + * @type {string} + * @memberof User + */ + 'travelingToInstance'?: string; + /** + * + * @type {string} + * @memberof User + */ + 'travelingToLocation'?: string; + /** + * + * @type {string} + * @memberof User + */ + 'travelingToWorld'?: string; /** * * @type {string} @@ -3855,12 +3959,6 @@ export interface World { * @memberof World */ 'assetUrl': string; - /** - * - * @type {object} - * @memberof World - */ - 'assetUrlObject': object; /** * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} @@ -3957,12 +4055,6 @@ export interface World { * @memberof World */ 'organization': string; - /** - * - * @type {object} - * @memberof World - */ - 'pluginUrlObject': object; /** * * @type {number} @@ -4011,12 +4103,6 @@ export interface World { * @memberof World */ 'thumbnailImageUrl': string; - /** - * - * @type {object} - * @memberof World - */ - 'unityPackageUrlObject': object; /** * Empty if unauthenticated. * @type {Array} @@ -7788,6 +7874,44 @@ export const InstancesApiAxiosParamCreator = function (configuration?: Configura + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Returns an instance. Please read [Instances Tutorial](https://vrchatapi.github.io/tutorials/instances/) for more information on Instances. + * @summary Get Instance By Short Name + * @param {string} shortName + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getInstanceByShortName: async (shortName: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'shortName' is not null or undefined + assertParamExists('getInstanceByShortName', 'shortName', shortName) + const localVarPath = `/instances/s/{shortName}` + .replace(`{${"shortName"}}`, encodeURIComponent(String(shortName))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -7903,6 +8027,17 @@ export const InstancesApiFp = function(configuration?: Configuration) { const localVarAxiosArgs = await localVarAxiosParamCreator.getInstance(worldId, instanceId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, + /** + * Returns an instance. Please read [Instances Tutorial](https://vrchatapi.github.io/tutorials/instances/) for more information on Instances. + * @summary Get Instance By Short Name + * @param {string} shortName + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getInstanceByShortName(shortName: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getInstanceByShortName(shortName, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** * Returns an instance short name. * @summary Get Instance Short Name @@ -7948,6 +8083,16 @@ export const InstancesApiFactory = function (configuration?: Configuration, base getInstance(worldId: string, instanceId: string, options?: any): AxiosPromise { return localVarFp.getInstance(worldId, instanceId, options).then((request) => request(axios, basePath)); }, + /** + * Returns an instance. Please read [Instances Tutorial](https://vrchatapi.github.io/tutorials/instances/) for more information on Instances. + * @summary Get Instance By Short Name + * @param {string} shortName + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getInstanceByShortName(shortName: string, options?: any): AxiosPromise { + return localVarFp.getInstanceByShortName(shortName, options).then((request) => request(axios, basePath)); + }, /** * Returns an instance short name. * @summary Get Instance Short Name @@ -7993,6 +8138,18 @@ export class InstancesApi extends BaseAPI { return InstancesApiFp(this.configuration).getInstance(worldId, instanceId, options).then((request) => request(this.axios, this.basePath)); } + /** + * Returns an instance. Please read [Instances Tutorial](https://vrchatapi.github.io/tutorials/instances/) for more information on Instances. + * @summary Get Instance By Short Name + * @param {string} shortName + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof InstancesApi + */ + public getInstanceByShortName(shortName: string, options?: AxiosRequestConfig) { + return InstancesApiFp(this.configuration).getInstanceByShortName(shortName, options).then((request) => request(this.axios, this.basePath)); + } + /** * Returns an instance short name. * @summary Get Instance Short Name @@ -8115,6 +8272,52 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio options: localVarRequestOptions, }; }, + /** + * Sends self an invite to an instance + * @summary Invite Myself To Instance + * @param {string} worldId + * @param {string} instanceId + * @param {InviteMyselfToRequest} [inviteMyselfToRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + inviteMyselfTo: async (worldId: string, instanceId: string, inviteMyselfToRequest?: InviteMyselfToRequest, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'worldId' is not null or undefined + assertParamExists('inviteMyselfTo', 'worldId', worldId) + // verify required parameter 'instanceId' is not null or undefined + assertParamExists('inviteMyselfTo', 'instanceId', instanceId) + const localVarPath = `/invite/myself/to/{worldId}:{instanceId}` + .replace(`{${"worldId"}}`, encodeURIComponent(String(worldId))) + .replace(`{${"instanceId"}}`, encodeURIComponent(String(instanceId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(inviteMyselfToRequest, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, /** * Sends an invite to a user. Returns the Notification of type `invite` that was sent. * @summary Invite User @@ -8372,6 +8575,19 @@ export const InviteApiFp = function(configuration?: Configuration) { const localVarAxiosArgs = await localVarAxiosParamCreator.getInviteMessages(userId, messageType, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, + /** + * Sends self an invite to an instance + * @summary Invite Myself To Instance + * @param {string} worldId + * @param {string} instanceId + * @param {InviteMyselfToRequest} [inviteMyselfToRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async inviteMyselfTo(worldId: string, instanceId: string, inviteMyselfToRequest?: InviteMyselfToRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.inviteMyselfTo(worldId, instanceId, inviteMyselfToRequest, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** * Sends an invite to a user. Returns the Notification of type `invite` that was sent. * @summary Invite User @@ -8380,7 +8596,7 @@ export const InviteApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async inviteUser(userId: string, inviteRequest?: InviteRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async inviteUser(userId: string, inviteRequest?: InviteRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.inviteUser(userId, inviteRequest, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -8468,6 +8684,18 @@ export const InviteApiFactory = function (configuration?: Configuration, basePat getInviteMessages(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', options?: any): AxiosPromise> { return localVarFp.getInviteMessages(userId, messageType, options).then((request) => request(axios, basePath)); }, + /** + * Sends self an invite to an instance + * @summary Invite Myself To Instance + * @param {string} worldId + * @param {string} instanceId + * @param {InviteMyselfToRequest} [inviteMyselfToRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + inviteMyselfTo(worldId: string, instanceId: string, inviteMyselfToRequest?: InviteMyselfToRequest, options?: any): AxiosPromise { + return localVarFp.inviteMyselfTo(worldId, instanceId, inviteMyselfToRequest, options).then((request) => request(axios, basePath)); + }, /** * Sends an invite to a user. Returns the Notification of type `invite` that was sent. * @summary Invite User @@ -8476,7 +8704,7 @@ export const InviteApiFactory = function (configuration?: Configuration, basePat * @param {*} [options] Override http request option. * @throws {RequiredError} */ - inviteUser(userId: string, inviteRequest?: InviteRequest, options?: any): AxiosPromise { + inviteUser(userId: string, inviteRequest?: InviteRequest, options?: any): AxiosPromise { return localVarFp.inviteUser(userId, inviteRequest, options).then((request) => request(axios, basePath)); }, /** @@ -8563,6 +8791,20 @@ export class InviteApi extends BaseAPI { return InviteApiFp(this.configuration).getInviteMessages(userId, messageType, options).then((request) => request(this.axios, this.basePath)); } + /** + * Sends self an invite to an instance + * @summary Invite Myself To Instance + * @param {string} worldId + * @param {string} instanceId + * @param {InviteMyselfToRequest} [inviteMyselfToRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof InviteApi + */ + public inviteMyselfTo(worldId: string, instanceId: string, inviteMyselfToRequest?: InviteMyselfToRequest, options?: AxiosRequestConfig) { + return InviteApiFp(this.configuration).inviteMyselfTo(worldId, instanceId, inviteMyselfToRequest, options).then((request) => request(this.axios, this.basePath)); + } + /** * Sends an invite to a user. Returns the Notification of type `invite` that was sent. * @summary Invite User diff --git a/base.ts b/base.ts index 4324c3f..a8aba9c 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.7.2 + * The version of the OpenAPI document: 1.7.3 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index f152db3..2e4880d 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.7.2 + * The version of the OpenAPI document: 1.7.3 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index 25fcbce..12655a3 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.7.2 + * The version of the OpenAPI document: 1.7.3 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index 80006c0..3a3b69f 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.7.2 + * The version of the OpenAPI document: 1.7.3 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index e6cbd28..3f55d22 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.7.2", + "version": "1.7.3", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.7.2", + "version": "1.7.3", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index 0148de7..6bc0787 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.7.2", + "version": "1.7.3", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "keywords": [ From ec58d56e6720263edb132e3d9f0f43bf7c6f0b25 Mon Sep 17 00:00:00 2001 From: VRCCat Date: Thu, 8 Sep 2022 22:35:06 +0000 Subject: [PATCH 075/130] Upgrade Node SDK to spec 1.7.4 --- api.ts | 67 +++++++++++++++++++++++++---------------------- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 +-- package.json | 2 +- 7 files changed, 43 insertions(+), 38 deletions(-) diff --git a/api.ts b/api.ts index b940833..e2a8567 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.7.3 + * The version of the OpenAPI document: 1.7.4 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -2017,7 +2017,13 @@ export interface Instance { * @type {string} * @memberof Instance */ - 'shortName': string; + 'secureName': string; + /** + * + * @type {string} + * @memberof Instance + */ + 'shortName'?: string; /** * The tags array on Instances usually contain the language tags of the people in the instance. * @type {Array} @@ -2074,6 +2080,25 @@ export interface InstancePlatforms { */ 'standalonewindows': number; } +/** + * + * @export + * @interface InstanceShortNameResponse + */ +export interface InstanceShortNameResponse { + /** + * + * @type {string} + * @memberof InstanceShortNameResponse + */ + 'secureName': string; + /** + * + * @type {string} + * @memberof InstanceShortNameResponse + */ + 'shortName'?: string; +} /** * * @export @@ -2149,19 +2174,6 @@ export enum InviteMessageType { RequestResponse = 'requestResponse' } -/** - * - * @export - * @interface InviteMyselfToRequest - */ -export interface InviteMyselfToRequest { - /** - * Short Name of the Instance; can be retrieved from the Get Instance Short Name endpoint. - * @type {string} - * @memberof InviteMyselfToRequest - */ - 'shortName': string; -} /** * * @export @@ -8046,7 +8058,7 @@ export const InstancesApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getShortName(worldId: string, instanceId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async getShortName(worldId: string, instanceId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getShortName(worldId, instanceId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -8101,7 +8113,7 @@ export const InstancesApiFactory = function (configuration?: Configuration, base * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getShortName(worldId: string, instanceId: string, options?: any): AxiosPromise { + getShortName(worldId: string, instanceId: string, options?: any): AxiosPromise { return localVarFp.getShortName(worldId, instanceId, options).then((request) => request(axios, basePath)); }, /** @@ -8277,11 +8289,10 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio * @summary Invite Myself To Instance * @param {string} worldId * @param {string} instanceId - * @param {InviteMyselfToRequest} [inviteMyselfToRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - inviteMyselfTo: async (worldId: string, instanceId: string, inviteMyselfToRequest?: InviteMyselfToRequest, options: AxiosRequestConfig = {}): Promise => { + inviteMyselfTo: async (worldId: string, instanceId: string, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'worldId' is not null or undefined assertParamExists('inviteMyselfTo', 'worldId', worldId) // verify required parameter 'instanceId' is not null or undefined @@ -8306,12 +8317,9 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio - localVarHeaderParameter['Content-Type'] = 'application/json'; - setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - localVarRequestOptions.data = serializeDataIfNeeded(inviteMyselfToRequest, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), @@ -8580,12 +8588,11 @@ export const InviteApiFp = function(configuration?: Configuration) { * @summary Invite Myself To Instance * @param {string} worldId * @param {string} instanceId - * @param {InviteMyselfToRequest} [inviteMyselfToRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async inviteMyselfTo(worldId: string, instanceId: string, inviteMyselfToRequest?: InviteMyselfToRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.inviteMyselfTo(worldId, instanceId, inviteMyselfToRequest, options); + async inviteMyselfTo(worldId: string, instanceId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.inviteMyselfTo(worldId, instanceId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** @@ -8689,12 +8696,11 @@ export const InviteApiFactory = function (configuration?: Configuration, basePat * @summary Invite Myself To Instance * @param {string} worldId * @param {string} instanceId - * @param {InviteMyselfToRequest} [inviteMyselfToRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - inviteMyselfTo(worldId: string, instanceId: string, inviteMyselfToRequest?: InviteMyselfToRequest, options?: any): AxiosPromise { - return localVarFp.inviteMyselfTo(worldId, instanceId, inviteMyselfToRequest, options).then((request) => request(axios, basePath)); + inviteMyselfTo(worldId: string, instanceId: string, options?: any): AxiosPromise { + return localVarFp.inviteMyselfTo(worldId, instanceId, options).then((request) => request(axios, basePath)); }, /** * Sends an invite to a user. Returns the Notification of type `invite` that was sent. @@ -8796,13 +8802,12 @@ export class InviteApi extends BaseAPI { * @summary Invite Myself To Instance * @param {string} worldId * @param {string} instanceId - * @param {InviteMyselfToRequest} [inviteMyselfToRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof InviteApi */ - public inviteMyselfTo(worldId: string, instanceId: string, inviteMyselfToRequest?: InviteMyselfToRequest, options?: AxiosRequestConfig) { - return InviteApiFp(this.configuration).inviteMyselfTo(worldId, instanceId, inviteMyselfToRequest, options).then((request) => request(this.axios, this.basePath)); + public inviteMyselfTo(worldId: string, instanceId: string, options?: AxiosRequestConfig) { + return InviteApiFp(this.configuration).inviteMyselfTo(worldId, instanceId, options).then((request) => request(this.axios, this.basePath)); } /** diff --git a/base.ts b/base.ts index a8aba9c..9145e91 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.7.3 + * The version of the OpenAPI document: 1.7.4 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index 2e4880d..bdf97f7 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.7.3 + * The version of the OpenAPI document: 1.7.4 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index 12655a3..bcd5293 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.7.3 + * The version of the OpenAPI document: 1.7.4 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index 3a3b69f..7ae781f 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.7.3 + * The version of the OpenAPI document: 1.7.4 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index 3f55d22..be3eb49 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.7.3", + "version": "1.7.4", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.7.3", + "version": "1.7.4", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index 6bc0787..638b11d 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.7.3", + "version": "1.7.4", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "keywords": [ From 643242aa0e0ecdec1c72d3c4f994aec3afdf99bc Mon Sep 17 00:00:00 2001 From: VRCCat Date: Mon, 10 Oct 2022 09:14:41 +0000 Subject: [PATCH 076/130] Upgrade Node SDK to spec 1.7.5 --- api.ts | 20 +++++++------------- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 ++-- package.json | 2 +- 7 files changed, 14 insertions(+), 20 deletions(-) diff --git a/api.ts b/api.ts index e2a8567..a3a9b86 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.7.4 + * The version of the OpenAPI document: 1.7.5 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -3965,12 +3965,6 @@ export interface VerifyAuthTokenResult { * @interface World */ export interface World { - /** - * Empty if unauthenticated. - * @type {string} - * @memberof World - */ - 'assetUrl': string; /** * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} @@ -4033,10 +4027,10 @@ export interface World { 'imageUrl': string; /** * - * @type {Array>} + * @type {Array>} * @memberof World */ - 'instances'?: Array>; + 'instances'?: Array>; /** * * @type {string} @@ -4270,7 +4264,7 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf }; }, /** - * This endpoint does the following two operations: 1) Checks if you are already logged in by looking for a valid `auth` cookie. If you are have a valid auth cookie then no additional auth-related actions are taken. If you are **not** logged in then it will log you in with the `Authorization` header and set the `auth` cookie. The `auth` cookie will only be sent once. 2) If logged in, this function will also return the CurrentUser object containing detailed information about the currently logged in user. **WARNING: Session Limit:** Each authentication with login credentials counts as a separate session, out of which you have a limited amount. Make sure to save and reuse the `auth` cookie if you are often restarting the program. The provided API libraries automatically save cookies during runtime, but does not persist during restart. While it can be fine to use username/password during development, expect in production to very fast run into the rate-limit and be temporarily blocked from making new sessions until older ones expire. The exact number of simultaneous sessions is unknown/undisclosed. + * This endpoint does the following two operations: 1) Checks if you are already logged in by looking for a valid `auth` cookie. If you are have a valid auth cookie then no additional auth-related actions are taken. If you are **not** logged in then it will log you in with the `Authorization` header and set the `auth` cookie. The `auth` cookie will only be sent once. 2) If logged in, this function will also return the CurrentUser object containing detailed information about the currently logged in user. The auth string after `Authorization: Basic {string}` is a base64-encoded string of the username and password, both individually url-encoded, and then joined with a colon. > base64(urlencode(username):urlencode(password)) **WARNING: Session Limit:** Each authentication with login credentials counts as a separate session, out of which you have a limited amount. Make sure to save and reuse the `auth` cookie if you are often restarting the program. The provided API libraries automatically save cookies during runtime, but does not persist during restart. While it can be fine to use username/password during development, expect in production to very fast run into the rate-limit and be temporarily blocked from making new sessions until older ones expire. The exact number of simultaneous sessions is unknown/undisclosed. * @summary Login and/or Get Current User Info * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -4479,7 +4473,7 @@ export const AuthenticationApiFp = function(configuration?: Configuration) { return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * This endpoint does the following two operations: 1) Checks if you are already logged in by looking for a valid `auth` cookie. If you are have a valid auth cookie then no additional auth-related actions are taken. If you are **not** logged in then it will log you in with the `Authorization` header and set the `auth` cookie. The `auth` cookie will only be sent once. 2) If logged in, this function will also return the CurrentUser object containing detailed information about the currently logged in user. **WARNING: Session Limit:** Each authentication with login credentials counts as a separate session, out of which you have a limited amount. Make sure to save and reuse the `auth` cookie if you are often restarting the program. The provided API libraries automatically save cookies during runtime, but does not persist during restart. While it can be fine to use username/password during development, expect in production to very fast run into the rate-limit and be temporarily blocked from making new sessions until older ones expire. The exact number of simultaneous sessions is unknown/undisclosed. + * This endpoint does the following two operations: 1) Checks if you are already logged in by looking for a valid `auth` cookie. If you are have a valid auth cookie then no additional auth-related actions are taken. If you are **not** logged in then it will log you in with the `Authorization` header and set the `auth` cookie. The `auth` cookie will only be sent once. 2) If logged in, this function will also return the CurrentUser object containing detailed information about the currently logged in user. The auth string after `Authorization: Basic {string}` is a base64-encoded string of the username and password, both individually url-encoded, and then joined with a colon. > base64(urlencode(username):urlencode(password)) **WARNING: Session Limit:** Each authentication with login credentials counts as a separate session, out of which you have a limited amount. Make sure to save and reuse the `auth` cookie if you are often restarting the program. The provided API libraries automatically save cookies during runtime, but does not persist during restart. While it can be fine to use username/password during development, expect in production to very fast run into the rate-limit and be temporarily blocked from making new sessions until older ones expire. The exact number of simultaneous sessions is unknown/undisclosed. * @summary Login and/or Get Current User Info * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -4564,7 +4558,7 @@ export const AuthenticationApiFactory = function (configuration?: Configuration, return localVarFp.deleteUser(userId, options).then((request) => request(axios, basePath)); }, /** - * This endpoint does the following two operations: 1) Checks if you are already logged in by looking for a valid `auth` cookie. If you are have a valid auth cookie then no additional auth-related actions are taken. If you are **not** logged in then it will log you in with the `Authorization` header and set the `auth` cookie. The `auth` cookie will only be sent once. 2) If logged in, this function will also return the CurrentUser object containing detailed information about the currently logged in user. **WARNING: Session Limit:** Each authentication with login credentials counts as a separate session, out of which you have a limited amount. Make sure to save and reuse the `auth` cookie if you are often restarting the program. The provided API libraries automatically save cookies during runtime, but does not persist during restart. While it can be fine to use username/password during development, expect in production to very fast run into the rate-limit and be temporarily blocked from making new sessions until older ones expire. The exact number of simultaneous sessions is unknown/undisclosed. + * This endpoint does the following two operations: 1) Checks if you are already logged in by looking for a valid `auth` cookie. If you are have a valid auth cookie then no additional auth-related actions are taken. If you are **not** logged in then it will log you in with the `Authorization` header and set the `auth` cookie. The `auth` cookie will only be sent once. 2) If logged in, this function will also return the CurrentUser object containing detailed information about the currently logged in user. The auth string after `Authorization: Basic {string}` is a base64-encoded string of the username and password, both individually url-encoded, and then joined with a colon. > base64(urlencode(username):urlencode(password)) **WARNING: Session Limit:** Each authentication with login credentials counts as a separate session, out of which you have a limited amount. Make sure to save and reuse the `auth` cookie if you are often restarting the program. The provided API libraries automatically save cookies during runtime, but does not persist during restart. While it can be fine to use username/password during development, expect in production to very fast run into the rate-limit and be temporarily blocked from making new sessions until older ones expire. The exact number of simultaneous sessions is unknown/undisclosed. * @summary Login and/or Get Current User Info * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -4648,7 +4642,7 @@ export class AuthenticationApi extends BaseAPI { } /** - * This endpoint does the following two operations: 1) Checks if you are already logged in by looking for a valid `auth` cookie. If you are have a valid auth cookie then no additional auth-related actions are taken. If you are **not** logged in then it will log you in with the `Authorization` header and set the `auth` cookie. The `auth` cookie will only be sent once. 2) If logged in, this function will also return the CurrentUser object containing detailed information about the currently logged in user. **WARNING: Session Limit:** Each authentication with login credentials counts as a separate session, out of which you have a limited amount. Make sure to save and reuse the `auth` cookie if you are often restarting the program. The provided API libraries automatically save cookies during runtime, but does not persist during restart. While it can be fine to use username/password during development, expect in production to very fast run into the rate-limit and be temporarily blocked from making new sessions until older ones expire. The exact number of simultaneous sessions is unknown/undisclosed. + * This endpoint does the following two operations: 1) Checks if you are already logged in by looking for a valid `auth` cookie. If you are have a valid auth cookie then no additional auth-related actions are taken. If you are **not** logged in then it will log you in with the `Authorization` header and set the `auth` cookie. The `auth` cookie will only be sent once. 2) If logged in, this function will also return the CurrentUser object containing detailed information about the currently logged in user. The auth string after `Authorization: Basic {string}` is a base64-encoded string of the username and password, both individually url-encoded, and then joined with a colon. > base64(urlencode(username):urlencode(password)) **WARNING: Session Limit:** Each authentication with login credentials counts as a separate session, out of which you have a limited amount. Make sure to save and reuse the `auth` cookie if you are often restarting the program. The provided API libraries automatically save cookies during runtime, but does not persist during restart. While it can be fine to use username/password during development, expect in production to very fast run into the rate-limit and be temporarily blocked from making new sessions until older ones expire. The exact number of simultaneous sessions is unknown/undisclosed. * @summary Login and/or Get Current User Info * @param {*} [options] Override http request option. * @throws {RequiredError} diff --git a/base.ts b/base.ts index 9145e91..a73c0a2 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.7.4 + * The version of the OpenAPI document: 1.7.5 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index bdf97f7..063dcab 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.7.4 + * The version of the OpenAPI document: 1.7.5 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index bcd5293..d527266 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.7.4 + * The version of the OpenAPI document: 1.7.5 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index 7ae781f..382c56e 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.7.4 + * The version of the OpenAPI document: 1.7.5 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index be3eb49..cd3d020 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.7.4", + "version": "1.7.5", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.7.4", + "version": "1.7.5", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index 638b11d..4ba15ef 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.7.4", + "version": "1.7.5", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "keywords": [ From 1751dbc7bb180e959b32922befca2500f115a9a1 Mon Sep 17 00:00:00 2001 From: VRCCat Date: Tue, 11 Oct 2022 21:17:08 +0000 Subject: [PATCH 077/130] Upgrade Node SDK to spec 1.7.6 --- api.ts | 6 +++--- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 ++-- package.json | 2 +- 7 files changed, 10 insertions(+), 10 deletions(-) diff --git a/api.ts b/api.ts index a3a9b86..3d7ab98 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.7.5 + * The version of the OpenAPI document: 1.7.6 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -4027,10 +4027,10 @@ export interface World { 'imageUrl': string; /** * - * @type {Array>} + * @type {Array>} * @memberof World */ - 'instances'?: Array>; + 'instances'?: Array>; /** * * @type {string} diff --git a/base.ts b/base.ts index a73c0a2..c15116a 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.7.5 + * The version of the OpenAPI document: 1.7.6 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index 063dcab..855c62d 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.7.5 + * The version of the OpenAPI document: 1.7.6 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index d527266..fea3c63 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.7.5 + * The version of the OpenAPI document: 1.7.6 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index 382c56e..b708a38 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.7.5 + * The version of the OpenAPI document: 1.7.6 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index cd3d020..8e2980a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.7.5", + "version": "1.7.6", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.7.5", + "version": "1.7.6", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index 4ba15ef..14966d4 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.7.5", + "version": "1.7.6", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "keywords": [ From 6a1e8d3ea040c36954e146702bfe33cc92d17df4 Mon Sep 17 00:00:00 2001 From: VRCCat Date: Sun, 16 Oct 2022 00:27:45 +0000 Subject: [PATCH 078/130] Upgrade Node SDK to spec 1.7.7 --- api.ts | 26 +++++++++++++------------- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 ++-- package.json | 2 +- 7 files changed, 20 insertions(+), 20 deletions(-) diff --git a/api.ts b/api.ts index 3d7ab98..1b48c9f 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.7.6 + * The version of the OpenAPI document: 1.7.7 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -4026,7 +4026,7 @@ export interface World { */ 'imageUrl': string; /** - * + * Will always be an empty list when unauthenticated. * @type {Array>} * @memberof World */ @@ -4050,7 +4050,7 @@ export interface World { */ 'namespace': string; /** - * + * Will always be `0` when unauthenticated. * @type {number} * @memberof World */ @@ -4074,13 +4074,13 @@ export interface World { */ 'previewYoutubeId'?: string | null; /** - * + * Will always be `0` when unauthenticated. * @type {number} * @memberof World */ 'privateOccupants'?: number; /** - * + * Will always be `0` when unauthenticated. * @type {number} * @memberof World */ @@ -8993,7 +8993,7 @@ export const NotificationsApiAxiosParamCreator = function (configuration?: Confi /** * Retrieve all of the current user\'s notifications. * @summary List Notifications - * @param {string} [type] Only send notifications of this type (can use `all` for all). + * @param {string} [type] Only send notifications of this type (can use `all` for all). This parameter no longer does anything, and is deprecated. * @param {boolean} [sent] Return notifications sent by the user. Must be false or omitted. * @param {boolean} [hidden] Whether to return hidden or non-hidden notifications. True only allowed on type `friendRequest`. * @param {string} [after] Only return notifications sent after this Date. Ignored if type is `friendRequest`. @@ -9137,7 +9137,7 @@ export const NotificationsApiFp = function(configuration?: Configuration) { /** * Retrieve all of the current user\'s notifications. * @summary List Notifications - * @param {string} [type] Only send notifications of this type (can use `all` for all). + * @param {string} [type] Only send notifications of this type (can use `all` for all). This parameter no longer does anything, and is deprecated. * @param {boolean} [sent] Return notifications sent by the user. Must be false or omitted. * @param {boolean} [hidden] Whether to return hidden or non-hidden notifications. True only allowed on type `friendRequest`. * @param {string} [after] Only return notifications sent after this Date. Ignored if type is `friendRequest`. @@ -9203,7 +9203,7 @@ export const NotificationsApiFactory = function (configuration?: Configuration, /** * Retrieve all of the current user\'s notifications. * @summary List Notifications - * @param {string} [type] Only send notifications of this type (can use `all` for all). + * @param {string} [type] Only send notifications of this type (can use `all` for all). This parameter no longer does anything, and is deprecated. * @param {boolean} [sent] Return notifications sent by the user. Must be false or omitted. * @param {boolean} [hidden] Whether to return hidden or non-hidden notifications. True only allowed on type `friendRequest`. * @param {string} [after] Only return notifications sent after this Date. Ignored if type is `friendRequest`. @@ -9273,7 +9273,7 @@ export class NotificationsApi extends BaseAPI { /** * Retrieve all of the current user\'s notifications. * @summary List Notifications - * @param {string} [type] Only send notifications of this type (can use `all` for all). + * @param {string} [type] Only send notifications of this type (can use `all` for all). This parameter no longer does anything, and is deprecated. * @param {boolean} [sent] Return notifications sent by the user. Must be false or omitted. * @param {boolean} [hidden] Whether to return hidden or non-hidden notifications. True only allowed on type `friendRequest`. * @param {string} [after] Only return notifications sent after this Date. Ignored if type is `friendRequest`. @@ -11175,7 +11175,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio }; }, /** - * Get information about a specific World. + * Get information about a specific World. Works unauthenticated but when so will always return `0` for certain fields. * @summary Get World by ID * @param {string} worldId * @param {*} [options] Override http request option. @@ -11652,7 +11652,7 @@ export const WorldsApiFp = function(configuration?: Configuration) { return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Get information about a specific World. + * Get information about a specific World. Works unauthenticated but when so will always return `0` for certain fields. * @summary Get World by ID * @param {string} worldId * @param {*} [options] Override http request option. @@ -11851,7 +11851,7 @@ export const WorldsApiFactory = function (configuration?: Configuration, basePat return localVarFp.getRecentWorlds(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options).then((request) => request(axios, basePath)); }, /** - * Get information about a specific World. + * Get information about a specific World. Works unauthenticated but when so will always return `0` for certain fields. * @summary Get World by ID * @param {string} worldId * @param {*} [options] Override http request option. @@ -12052,7 +12052,7 @@ export class WorldsApi extends BaseAPI { } /** - * Get information about a specific World. + * Get information about a specific World. Works unauthenticated but when so will always return `0` for certain fields. * @summary Get World by ID * @param {string} worldId * @param {*} [options] Override http request option. diff --git a/base.ts b/base.ts index c15116a..400cf0d 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.7.6 + * The version of the OpenAPI document: 1.7.7 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index 855c62d..dcd1626 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.7.6 + * The version of the OpenAPI document: 1.7.7 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index fea3c63..be14e05 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.7.6 + * The version of the OpenAPI document: 1.7.7 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index b708a38..113adb5 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.7.6 + * The version of the OpenAPI document: 1.7.7 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index 8e2980a..df5c723 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.7.6", + "version": "1.7.7", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.7.6", + "version": "1.7.7", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index 14966d4..3eba31b 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.7.6", + "version": "1.7.7", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "keywords": [ From d1e302b7bd17336cdd4a42360d71f30cb29cda87 Mon Sep 17 00:00:00 2001 From: VRCCat Date: Fri, 4 Nov 2022 02:04:50 +0000 Subject: [PATCH 079/130] Upgrade Node SDK to spec 1.8.0 --- api.ts | 39 ++++++++++++++++++++++++--------------- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 ++-- package.json | 2 +- 7 files changed, 31 insertions(+), 22 deletions(-) diff --git a/api.ts b/api.ts index 1b48c9f..0c819ca 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.7.7 + * The version of the OpenAPI document: 1.8.0 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -1265,11 +1265,12 @@ export interface CurrentUser { */ 'userIcon': string; /** - * + * -| **DEPRECATED:** VRChat API no longer return usernames of other users. [See issue by Tupper for more information](https://github.com/pypy-vrc/VRCX/issues/429). * @type {string} * @memberof CurrentUser + * @deprecated */ - 'username': string; + 'username'?: string; } /** * Used to identify which API deployment cluster is currently responding. `blue` and `green` are used by Production. `grape`and `cherry` are used during Development. [Blue Green Deployment by Martin Fowler](https://martinfowler.com/bliki/BlueGreenDeployment.html) @@ -2402,11 +2403,12 @@ export interface LimitedUser { */ 'userIcon': string; /** - * + * -| **DEPRECATED:** VRChat API no longer return usernames of other users. [See issue by Tupper for more information](https://github.com/pypy-vrc/VRCX/issues/429). * @type {string} * @memberof LimitedUser + * @deprecated */ - 'username': string; + 'username'?: string; /** * * @type {string} @@ -2688,11 +2690,12 @@ export interface Notification { */ 'senderUserId': string; /** - * + * -| **DEPRECATED:** VRChat API no longer return usernames of other users. [See issue by Tupper for more information](https://github.com/pypy-vrc/VRCX/issues/429). * @type {string} * @memberof Notification + * @deprecated */ - 'senderUsername': string; + 'senderUsername'?: string; /** * * @type {NotificationType} @@ -2952,11 +2955,12 @@ export interface SentNotification { */ 'senderUserId': string; /** - * + * -| **DEPRECATED:** VRChat API no longer return usernames of other users. [See issue by Tupper for more information](https://github.com/pypy-vrc/VRCX/issues/429). * @type {string} * @memberof SentNotification + * @deprecated */ - 'senderUsername': string; + 'senderUsername'?: string; /** * * @type {NotificationType} @@ -3779,11 +3783,12 @@ export interface User { */ 'userIcon': string; /** - * A users unique name, used during login. This is different from `displayName` which is what shows up in-game. A users `username` can never be changed. + * -| A users unique name, used during login. This is different from `displayName` which is what shows up in-game. A users `username` can never be changed.\' **DEPRECATED:** VRChat API no longer return usernames of other users. [See issue by Tupper for more information](https://github.com/pypy-vrc/VRCX/issues/429). * @type {string} * @memberof User + * @deprecated */ - 'username': string; + 'username'?: string; /** * WorldID be \"offline\" on User profiles if you are not friends with that user. * @type {string} @@ -10495,10 +10500,11 @@ export const UsersApiAxiosParamCreator = function (configuration?: Configuration }; }, /** - * Get public user information about a specific user using their name. + * ~~Get public user information about a specific user using their name.~~ **DEPRECATED:** VRChat API no longer return usernames of other users. [See issue by Tupper for more information](https://github.com/pypy-vrc/VRCX/issues/429). This endpoint now require Admin Credentials. * @summary Get User by Username * @param {string} username * @param {*} [options] Override http request option. + * @deprecated * @throws {RequiredError} */ getUserByName: async (username: string, options: AxiosRequestConfig = {}): Promise => { @@ -10650,10 +10656,11 @@ export const UsersApiFp = function(configuration?: Configuration) { return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Get public user information about a specific user using their name. + * ~~Get public user information about a specific user using their name.~~ **DEPRECATED:** VRChat API no longer return usernames of other users. [See issue by Tupper for more information](https://github.com/pypy-vrc/VRCX/issues/429). This endpoint now require Admin Credentials. * @summary Get User by Username * @param {string} username * @param {*} [options] Override http request option. + * @deprecated * @throws {RequiredError} */ async getUserByName(username: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { @@ -10707,10 +10714,11 @@ export const UsersApiFactory = function (configuration?: Configuration, basePath return localVarFp.getUser(userId, options).then((request) => request(axios, basePath)); }, /** - * Get public user information about a specific user using their name. + * ~~Get public user information about a specific user using their name.~~ **DEPRECATED:** VRChat API no longer return usernames of other users. [See issue by Tupper for more information](https://github.com/pypy-vrc/VRCX/issues/429). This endpoint now require Admin Credentials. * @summary Get User by Username * @param {string} username * @param {*} [options] Override http request option. + * @deprecated * @throws {RequiredError} */ getUserByName(username: string, options?: any): AxiosPromise { @@ -10763,10 +10771,11 @@ export class UsersApi extends BaseAPI { } /** - * Get public user information about a specific user using their name. + * ~~Get public user information about a specific user using their name.~~ **DEPRECATED:** VRChat API no longer return usernames of other users. [See issue by Tupper for more information](https://github.com/pypy-vrc/VRCX/issues/429). This endpoint now require Admin Credentials. * @summary Get User by Username * @param {string} username * @param {*} [options] Override http request option. + * @deprecated * @throws {RequiredError} * @memberof UsersApi */ diff --git a/base.ts b/base.ts index 400cf0d..26a566a 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.7.7 + * The version of the OpenAPI document: 1.8.0 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index dcd1626..263a7e1 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.7.7 + * The version of the OpenAPI document: 1.8.0 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index be14e05..c4375ec 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.7.7 + * The version of the OpenAPI document: 1.8.0 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index 113adb5..a642202 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.7.7 + * The version of the OpenAPI document: 1.8.0 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index df5c723..d7db00e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.7.7", + "version": "1.8.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.7.7", + "version": "1.8.0", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index 3eba31b..f82af92 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.7.7", + "version": "1.8.0", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "keywords": [ From 6cd2a6a4bf4c74fe97a784e9b5b26c1870f85562 Mon Sep 17 00:00:00 2001 From: VRCCat Date: Thu, 17 Nov 2022 21:21:32 +0000 Subject: [PATCH 080/130] Upgrade Node SDK to spec 1.9.0 --- api.ts | 75 +++++++++++++++++++++++++++++++++++++++++++++-- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 +-- package.json | 2 +- 7 files changed, 79 insertions(+), 10 deletions(-) diff --git a/api.ts b/api.ts index 0c819ca..a519554 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.8.0 + * The version of the OpenAPI document: 1.9.0 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -2828,8 +2828,6 @@ export enum PlayerModerationType { Unmute = 'unmute', Block = 'block', Unblock = 'unblock', - HideAvatar = 'hideAvatar', - ShowAvatar = 'showAvatar', InteractOn = 'interactOn', InteractOff = 'interactOff' } @@ -4915,6 +4913,44 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get the current avatar for the user. This will return an error for any other user than the one logged in. + * @summary Get Own Avatar + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getOwnAvatar: async (userId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'userId' is not null or undefined + assertParamExists('getOwnAvatar', 'userId', userId) + const localVarPath = `/users/{userId}/avatar` + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -5207,6 +5243,17 @@ export const AvatarsApiFp = function(configuration?: Configuration) { const localVarAxiosArgs = await localVarAxiosParamCreator.getFavoritedAvatars(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, + /** + * Get the current avatar for the user. This will return an error for any other user than the one logged in. + * @summary Get Own Avatar + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getOwnAvatar(userId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getOwnAvatar(userId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** * Search and list avatars by query filters. You can only search your own or featured avatars. It is not possible as a normal user to search other peoples avatars. * @summary Search Avatars @@ -5326,6 +5373,16 @@ export const AvatarsApiFactory = function (configuration?: Configuration, basePa getFavoritedAvatars(featured?: boolean, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any): AxiosPromise> { return localVarFp.getFavoritedAvatars(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options).then((request) => request(axios, basePath)); }, + /** + * Get the current avatar for the user. This will return an error for any other user than the one logged in. + * @summary Get Own Avatar + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getOwnAvatar(userId: string, options?: any): AxiosPromise { + return localVarFp.getOwnAvatar(userId, options).then((request) => request(axios, basePath)); + }, /** * Search and list avatars by query filters. You can only search your own or featured avatars. It is not possible as a normal user to search other peoples avatars. * @summary Search Avatars @@ -5449,6 +5506,18 @@ export class AvatarsApi extends BaseAPI { return AvatarsApiFp(this.configuration).getFavoritedAvatars(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options).then((request) => request(this.axios, this.basePath)); } + /** + * Get the current avatar for the user. This will return an error for any other user than the one logged in. + * @summary Get Own Avatar + * @param {string} userId + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AvatarsApi + */ + public getOwnAvatar(userId: string, options?: AxiosRequestConfig) { + return AvatarsApiFp(this.configuration).getOwnAvatar(userId, options).then((request) => request(this.axios, this.basePath)); + } + /** * Search and list avatars by query filters. You can only search your own or featured avatars. It is not possible as a normal user to search other peoples avatars. * @summary Search Avatars diff --git a/base.ts b/base.ts index 26a566a..eab6999 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.8.0 + * The version of the OpenAPI document: 1.9.0 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index 263a7e1..b9fbd1f 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.8.0 + * The version of the OpenAPI document: 1.9.0 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index c4375ec..d2d6851 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.8.0 + * The version of the OpenAPI document: 1.9.0 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index a642202..135350f 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.8.0 + * The version of the OpenAPI document: 1.9.0 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index d7db00e..b138fa1 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.8.0", + "version": "1.9.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.8.0", + "version": "1.9.0", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index f82af92..9786cb9 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.8.0", + "version": "1.9.0", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "keywords": [ From 68a9120583283eea63be9235ace3815f20acbca4 Mon Sep 17 00:00:00 2001 From: VRCCat Date: Thu, 17 Nov 2022 23:00:58 +0000 Subject: [PATCH 081/130] Upgrade Node SDK to spec 1.9.1 --- api.ts | 4 ++-- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 ++-- package.json | 2 +- 7 files changed, 9 insertions(+), 9 deletions(-) diff --git a/api.ts b/api.ts index a519554..d4d8f3b 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.9.0 + * The version of the OpenAPI document: 1.9.1 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -3677,7 +3677,7 @@ export interface User { * @type {string} * @memberof User */ - 'friendRequestStatus': string; + 'friendRequestStatus'?: string; /** * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} diff --git a/base.ts b/base.ts index eab6999..7a39813 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.9.0 + * The version of the OpenAPI document: 1.9.1 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index b9fbd1f..5815fb1 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.9.0 + * The version of the OpenAPI document: 1.9.1 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index d2d6851..08cb90d 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.9.0 + * The version of the OpenAPI document: 1.9.1 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index 135350f..ec0f76b 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.9.0 + * The version of the OpenAPI document: 1.9.1 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index b138fa1..08ec5cd 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.9.0", + "version": "1.9.1", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.9.0", + "version": "1.9.1", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index 9786cb9..975e461 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.9.0", + "version": "1.9.1", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "keywords": [ From ecd0d3a1327ad08900c291e095f0016840c14de2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Foorack=20/=20Max=20Fax=C3=A4lv?= Date: Sun, 4 Dec 2022 20:36:53 +0100 Subject: [PATCH 082/130] Upgrade openapi generator from 5.3.0 to 6.2.1 --- .openapi-generator/VERSION | 2 +- api.ts | 362 +++++++++++++++++++++---------------- common.ts | 34 ++-- generate.sh | 0 openapitools.json | 2 +- package-lock.json | 32 ++-- package.json | 12 +- tsconfig.json | 2 +- 8 files changed, 255 insertions(+), 191 deletions(-) mode change 100644 => 100755 generate.sh diff --git a/.openapi-generator/VERSION b/.openapi-generator/VERSION index e230c83..0df17dd 100644 --- a/.openapi-generator/VERSION +++ b/.openapi-generator/VERSION @@ -1 +1 @@ -5.3.0 \ No newline at end of file +6.2.1 \ No newline at end of file diff --git a/api.ts b/api.ts index d4d8f3b..d1a106c 100644 --- a/api.ts +++ b/api.ts @@ -711,7 +711,7 @@ export interface Avatar { */ 'releaseStatus': ReleaseStatus; /** - * + * * @type {Array} * @memberof Avatar */ @@ -798,7 +798,7 @@ export interface CreateAvatarRequest { */ 'description'?: string; /** - * + * * @type {Array} * @memberof CreateAvatarRequest */ @@ -853,7 +853,7 @@ export interface CreateFileRequest { */ 'extension': string; /** - * + * * @type {Array} * @memberof CreateFileRequest */ @@ -963,7 +963,7 @@ export interface CreateWorldRequest { */ 'releaseStatus'?: ReleaseStatus; /** - * + * * @type {Array} * @memberof CreateWorldRequest */ @@ -1181,7 +1181,7 @@ export interface CurrentUser { */ 'onlineFriends'?: Array; /** - * + * * @type {Array} * @memberof CurrentUser */ @@ -1278,12 +1278,15 @@ export interface CurrentUser { * @enum {string} */ -export enum DeploymentGroup { - Blue = 'blue', - Green = 'green', - Grape = 'grape', - Cherry = 'cherry' -} +export const DeploymentGroup = { + Blue: 'blue', + Green: 'green', + Grape: 'grape', + Cherry: 'cherry' +} as const; + +export type DeploymentGroup = typeof DeploymentGroup[keyof typeof DeploymentGroup]; + /** * \"none\" User is a normal user \"trusted\" Unknown \"internal\" Is a VRChat Developer \"moderator\" Is a VRChat Moderator Staff can hide their developerType at will. @@ -1291,12 +1294,15 @@ export enum DeploymentGroup { * @enum {string} */ -export enum DeveloperType { - None = 'none', - Trusted = 'trusted', - Internal = 'internal', - Moderator = 'moderator' -} +export const DeveloperType = { + None: 'none', + Trusted: 'trusted', + Internal: 'internal', + Moderator: 'moderator' +} as const; + +export type DeveloperType = typeof DeveloperType[keyof typeof DeveloperType]; + /** * Download links for various development assets. @@ -1398,7 +1404,7 @@ export interface Favorite { */ 'id': string; /** - * + * * @type {Array} * @memberof Favorite */ @@ -1447,7 +1453,7 @@ export interface FavoriteGroup { */ 'ownerId': string; /** - * + * * @type {Array} * @memberof FavoriteGroup */ @@ -1471,11 +1477,14 @@ export interface FavoriteGroup { * @enum {string} */ -export enum FavoriteGroupVisibility { - Private = 'private', - Friends = 'friends', - Public = 'public' -} +export const FavoriteGroupVisibility = { + Private: 'private', + Friends: 'friends', + Public: 'public' +} as const; + +export type FavoriteGroupVisibility = typeof FavoriteGroupVisibility[keyof typeof FavoriteGroupVisibility]; + /** * @@ -1483,11 +1492,14 @@ export enum FavoriteGroupVisibility { * @enum {string} */ -export enum FavoriteType { - World = 'world', - Friend = 'friend', - Avatar = 'avatar' -} +export const FavoriteType = { + World: 'world', + Friend: 'friend', + Avatar: 'avatar' +} as const; + +export type FavoriteType = typeof FavoriteType[keyof typeof FavoriteType]; + /** * @@ -1539,15 +1551,13 @@ export interface FileData { 'url': string; } -/** - * @export - * @enum {string} - */ -export enum FileDataCategoryEnum { - Multipart = 'multipart', - Queued = 'queued', - Simple = 'simple' -} +export const FileDataCategoryEnum = { + Multipart: 'multipart', + Queued: 'queued', + Simple: 'simple' +} as const; + +export type FileDataCategoryEnum = typeof FileDataCategoryEnum[keyof typeof FileDataCategoryEnum]; /** * @@ -1555,12 +1565,15 @@ export enum FileDataCategoryEnum { * @enum {string} */ -export enum FileStatus { - Waiting = 'waiting', - Complete = 'complete', - None = 'none', - Queued = 'queued' -} +export const FileStatus = { + Waiting: 'waiting', + Complete: 'complete', + None: 'none', + Queued: 'queued' +} as const; + +export type FileStatus = typeof FileStatus[keyof typeof FileStatus]; + /** * @@ -1750,7 +1763,7 @@ export interface InfoPush { */ 'priority': number; /** - * + * * @type {Array} * @memberof InfoPush */ @@ -1905,16 +1918,14 @@ export interface InfoPushDataClickable { 'parameters'?: Array; } -/** - * @export - * @enum {string} - */ -export enum InfoPushDataClickableCommandEnum { - OpenUrl = 'OpenURL', - OpenVrcPlusMenu = 'OpenVRCPlusMenu', - OpenSafetyMenu = 'OpenSafetyMenu', - CannedWorldSearch = 'CannedWorldSearch' -} +export const InfoPushDataClickableCommandEnum = { + OpenUrl: 'OpenURL', + OpenVrcPlusMenu: 'OpenVRCPlusMenu', + OpenSafetyMenu: 'OpenSafetyMenu', + CannedWorldSearch: 'CannedWorldSearch' +} as const; + +export type InfoPushDataClickableCommandEnum = typeof InfoPushDataClickableCommandEnum[keyof typeof InfoPushDataClickableCommandEnum]; /** * * `hidden` field is only present if InstanceType is `hidden` aka \"Friends+\", and is instance creator. * `friends` field is only present if InstanceType is `friends` aka \"Friends\", and is instance creator. * `private` field is only present if InstanceType is `private` aka \"Invite\" or \"Invite+\", and is instance creator. @@ -2106,12 +2117,15 @@ export interface InstanceShortNameResponse { * @enum {string} */ -export enum InstanceType { - Public = 'public', - Hidden = 'hidden', - Friends = 'friends', - Private = 'private' -} +export const InstanceType = { + Public: 'public', + Hidden: 'hidden', + Friends: 'friends', + Private: 'private' +} as const; + +export type InstanceType = typeof InstanceType[keyof typeof InstanceType]; + /** * @@ -2168,12 +2182,15 @@ export interface InviteMessage { * @enum {string} */ -export enum InviteMessageType { - Message = 'message', - Response = 'response', - Request = 'request', - RequestResponse = 'requestResponse' -} +export const InviteMessageType = { + Message: 'message', + Response: 'response', + Request: 'request', + RequestResponse: 'requestResponse' +} as const; + +export type InviteMessageType = typeof InviteMessageType[keyof typeof InviteMessageType]; + /** * @@ -2244,10 +2261,13 @@ export interface License { * @enum {string} */ -export enum LicenseAction { - Wear = 'wear', - Have = 'have' -} +export const LicenseAction = { + Wear: 'wear', + Have: 'have' +} as const; + +export type LicenseAction = typeof LicenseAction[keyof typeof LicenseAction]; + /** * @@ -2286,12 +2306,15 @@ export interface LicenseGroup { * @enum {string} */ -export enum LicenseType { - Avatar = 'avatar', - LicenseGroup = 'licenseGroup', - Permission = 'permission', - Product = 'product' -} +export const LicenseType = { + Avatar: 'avatar', + LicenseGroup: 'licenseGroup', + Permission: 'permission', + Product: 'product' +} as const; + +export type LicenseType = typeof LicenseType[keyof typeof LicenseType]; + /** * @@ -2519,7 +2542,7 @@ export interface LimitedWorld { */ 'releaseStatus': ReleaseStatus; /** - * + * * @type {Array} * @memberof LimitedWorld */ @@ -2531,7 +2554,7 @@ export interface LimitedWorld { */ 'thumbnailImageUrl': string; /** - * + * * @type {Array} * @memberof LimitedWorld */ @@ -2549,22 +2572,25 @@ export interface LimitedWorld { * @enum {string} */ -export enum MIMEType { - ImageJpeg = 'image/jpeg', - ImageJpg = 'image/jpg', - ImagePng = 'image/png', - ImageWebp = 'image/webp', - ImageGif = 'image/gif', - ImageBmp = 'image/bmp', - ImageSvgxml = 'image/svg+xml', - ImageTiff = 'image/tiff', - ApplicationXAvatar = 'application/x-avatar', - ApplicationXWorld = 'application/x-world', - ApplicationGzip = 'application/gzip', - ApplicationXRsyncSignature = 'application/x-rsync-signature', - ApplicationXRsyncDelta = 'application/x-rsync-delta', - ApplicationOctetStream = 'application/octet-stream' -} +export const MIMEType = { + ImageJpeg: 'image/jpeg', + ImageJpg: 'image/jpg', + ImagePng: 'image/png', + ImageWebp: 'image/webp', + ImageGif: 'image/gif', + ImageBmp: 'image/bmp', + ImageSvgxml: 'image/svg+xml', + ImageTiff: 'image/tiff', + ApplicationXAvatar: 'application/x-avatar', + ApplicationXWorld: 'application/x-world', + ApplicationGzip: 'application/gzip', + ApplicationXRsyncSignature: 'application/x-rsync-signature', + ApplicationXRsyncDelta: 'application/x-rsync-delta', + ApplicationOctetStream: 'application/octet-stream' +} as const; + +export type MIMEType = typeof MIMEType[keyof typeof MIMEType]; + /** * @@ -2616,13 +2642,13 @@ export interface ModelFile { */ 'ownerId': string; /** - * + * * @type {Array} * @memberof ModelFile */ 'tags': Array; /** - * + * * @type {Set} * @memberof ModelFile */ @@ -2709,14 +2735,17 @@ export interface Notification { * @enum {string} */ -export enum NotificationType { - FriendRequest = 'friendRequest', - Invite = 'invite', - InviteResponse = 'inviteResponse', - RequestInvite = 'requestInvite', - RequestInviteResponse = 'requestInviteResponse', - Votetokick = 'votetokick' -} +export const NotificationType = { + FriendRequest: 'friendRequest', + Invite: 'invite', + InviteResponse: 'inviteResponse', + RequestInvite: 'requestInvite', + RequestInviteResponse: 'requestInviteResponse', + Votetokick: 'votetokick' +} as const; + +export type NotificationType = typeof NotificationType[keyof typeof NotificationType]; + /** * @@ -2823,14 +2852,17 @@ export interface PlayerModeration { * @enum {string} */ -export enum PlayerModerationType { - Mute = 'mute', - Unmute = 'unmute', - Block = 'block', - Unblock = 'unblock', - InteractOn = 'interactOn', - InteractOff = 'interactOff' -} +export const PlayerModerationType = { + Mute: 'mute', + Unmute: 'unmute', + Block: 'block', + Unblock: 'unblock', + InteractOn: 'interactOn', + InteractOff: 'interactOff' +} as const; + +export type PlayerModerationType = typeof PlayerModerationType[keyof typeof PlayerModerationType]; + /** * Public Announcement @@ -2857,14 +2889,17 @@ export interface PublicAnnouncement { * @enum {string} */ -export enum Region { - Us = 'us', - Use = 'use', - Usw = 'usw', - Eu = 'eu', - Jp = 'jp', - Unknown = 'unknown' -} +export const Region = { + Us: 'us', + Use: 'use', + Usw: 'usw', + Eu: 'eu', + Jp: 'jp', + Unknown: 'unknown' +} as const; + +export type Region = typeof Region[keyof typeof Region]; + /** * @@ -2872,11 +2907,14 @@ export enum Region { * @enum {string} */ -export enum ReleaseStatus { - Public = 'public', - Private = 'private', - Hidden = 'hidden' -} +export const ReleaseStatus = { + Public: 'public', + Private: 'private', + Hidden: 'hidden' +} as const; + +export type ReleaseStatus = typeof ReleaseStatus[keyof typeof ReleaseStatus]; + /** * @@ -3015,13 +3053,16 @@ export interface Subscription { * @enum {string} */ -export enum SubscriptionPeriod { - Hour = 'hour', - Day = 'day', - Week = 'week', - Month = 'month', - Year = 'year' -} +export const SubscriptionPeriod = { + Hour: 'hour', + Day: 'day', + Week: 'week', + Month: 'month', + Year: 'year' +} as const; + +export type SubscriptionPeriod = typeof SubscriptionPeriod[keyof typeof SubscriptionPeriod]; + /** * @@ -3212,12 +3253,15 @@ export interface TransactionAgreement { * @enum {string} */ -export enum TransactionStatus { - Active = 'active', - Failed = 'failed', - Expired = 'expired', - Chargeback = 'chargeback' -} +export const TransactionStatus = { + Active: 'active', + Failed: 'failed', + Expired: 'expired', + Chargeback: 'chargeback' +} as const; + +export type TransactionStatus = typeof TransactionStatus[keyof typeof TransactionStatus]; + /** * @@ -3398,7 +3442,7 @@ export interface UpdateAvatarRequest { */ 'description'?: string; /** - * + * * @type {Array} * @memberof UpdateAvatarRequest */ @@ -3491,7 +3535,7 @@ export interface UpdateUserRequest { */ 'acceptedTOSVersion'?: number; /** - * + * * @type {Array} * @memberof UpdateUserRequest */ @@ -3594,7 +3638,7 @@ export interface UpdateWorldRequest { */ 'releaseStatus'?: ReleaseStatus; /** - * + * * @type {Array} * @memberof UpdateWorldRequest */ @@ -3751,7 +3795,7 @@ export interface User { */ 'statusDescription': string; /** - * + * * @type {Array} * @memberof User */ @@ -3813,11 +3857,14 @@ export interface UserExists { * @enum {string} */ -export enum UserState { - Offline = 'offline', - Active = 'active', - Online = 'online' -} +export const UserState = { + Offline: 'offline', + Active: 'active', + Online: 'online' +} as const; + +export type UserState = typeof UserState[keyof typeof UserState]; + /** * Defines the User\'s current status, for example \"ask me\", \"join me\" or \"offline. This status is a combined indicator of their online activity and privacy preference. @@ -3825,13 +3872,16 @@ export enum UserState { * @enum {string} */ -export enum UserStatus { - Active = 'active', - JoinMe = 'join me', - AskMe = 'ask me', - Busy = 'busy', - Offline = 'offline' -} +export const UserStatus = { + Active: 'active', + JoinMe: 'join me', + AskMe: 'ask me', + Busy: 'busy', + Offline: 'offline' +} as const; + +export type UserStatus = typeof UserStatus[keyof typeof UserStatus]; + /** * @@ -4101,7 +4151,7 @@ export interface World { */ 'releaseStatus': ReleaseStatus; /** - * + * * @type {Array} * @memberof World */ diff --git a/common.ts b/common.ts index 5815fb1..4bad3da 100644 --- a/common.ts +++ b/common.ts @@ -82,24 +82,34 @@ export const setOAuthToObject = async function (object: any, name: string, scope } } +function setFlattenedQueryParams(urlSearchParams: URLSearchParams, parameter: any, key: string = ""): void { + if (typeof parameter === "object") { + if (Array.isArray(parameter)) { + (parameter as any[]).forEach(item => setFlattenedQueryParams(urlSearchParams, item, key)); + } + else { + Object.keys(parameter).forEach(currentKey => + setFlattenedQueryParams(urlSearchParams, parameter[currentKey], `${key}${key !== '' ? '.' : ''}${currentKey}`) + ); + } + } + else { + if (urlSearchParams.has(key)) { + urlSearchParams.append(key, parameter); + } + else { + urlSearchParams.set(key, parameter); + } + } +} + /** * * @export */ export const setSearchParams = function (url: URL, ...objects: any[]) { const searchParams = new URLSearchParams(url.search); - for (const object of objects) { - for (const key in object) { - if (Array.isArray(object[key])) { - searchParams.delete(key); - for (const item of object[key]) { - searchParams.append(key, item); - } - } else { - searchParams.set(key, object[key]); - } - } - } + setFlattenedQueryParams(searchParams, objects); url.search = searchParams.toString(); } diff --git a/generate.sh b/generate.sh old mode 100644 new mode 100755 diff --git a/openapitools.json b/openapitools.json index 3b40e47..f5f966a 100644 --- a/openapitools.json +++ b/openapitools.json @@ -2,6 +2,6 @@ "$schema": "node_modules/@openapitools/openapi-generator-cli/config.schema.json", "spaces": 2, "generator-cli": { - "version": "5.3.0" + "version": "6.2.1" } } diff --git a/package-lock.json b/package-lock.json index 08ec5cd..55690a5 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10,13 +10,13 @@ "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", - "axios": "^0.21.4", + "axios": "^0.26.1", "axios-cookiejar-support": "^1.0.1", "tough-cookie": "^4.0.0" }, "devDependencies": { "@types/node": "^12.11.5", - "typescript": "^3.6.4" + "typescript": "^4.0" } }, "node_modules/@types/node": { @@ -31,11 +31,11 @@ "integrity": "sha512-Y0K95ThC3esLEYD6ZuqNek29lNX2EM1qxV8y2FTLUB0ff5wWrk7az+mLrnNFUnaXcgKye22+sFBRXOgpPILZNg==" }, "node_modules/axios": { - "version": "0.21.4", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz", - "integrity": "sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==", + "version": "0.26.1", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.26.1.tgz", + "integrity": "sha512-fPwcX4EvnSHuInCMItEhAGnaSEXRBjtzh9fOtsE6E1G6p7vl7edEeZe11QHf18+6+9gR5PbKV/sGKNaD8YaMeA==", "dependencies": { - "follow-redirects": "^1.14.0" + "follow-redirects": "^1.14.8" } }, "node_modules/axios-cookiejar-support": { @@ -120,9 +120,9 @@ } }, "node_modules/typescript": { - "version": "3.9.10", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz", - "integrity": "sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==", + "version": "4.9.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.3.tgz", + "integrity": "sha512-CIfGzTelbKNEnLpLdGFgdyKhG23CKdKgQPOBc+OUNrkJ2vr+KSzsSV5kq5iWhEQbok+quxgGzrAtGWCyU7tHnA==", "dev": true, "bin": { "tsc": "bin/tsc", @@ -154,11 +154,11 @@ "integrity": "sha512-Y0K95ThC3esLEYD6ZuqNek29lNX2EM1qxV8y2FTLUB0ff5wWrk7az+mLrnNFUnaXcgKye22+sFBRXOgpPILZNg==" }, "axios": { - "version": "0.21.4", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz", - "integrity": "sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==", + "version": "0.26.1", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.26.1.tgz", + "integrity": "sha512-fPwcX4EvnSHuInCMItEhAGnaSEXRBjtzh9fOtsE6E1G6p7vl7edEeZe11QHf18+6+9gR5PbKV/sGKNaD8YaMeA==", "requires": { - "follow-redirects": "^1.14.0" + "follow-redirects": "^1.14.8" } }, "axios-cookiejar-support": { @@ -206,9 +206,9 @@ } }, "typescript": { - "version": "3.9.10", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz", - "integrity": "sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==", + "version": "4.9.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.3.tgz", + "integrity": "sha512-CIfGzTelbKNEnLpLdGFgdyKhG23CKdKgQPOBc+OUNrkJ2vr+KSzsSV5kq5iWhEQbok+quxgGzrAtGWCyU7tHnA==", "dev": true }, "universalify": { diff --git a/package.json b/package.json index 975e461..eb0945a 100644 --- a/package.json +++ b/package.json @@ -3,6 +3,10 @@ "version": "1.9.1", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", + "repository": { + "type": "git", + "url": "https://github.com/vrchatapi/vrchatapi-javascript.git" + }, "keywords": [ "axios", "typescript", @@ -14,17 +18,17 @@ "main": "./dist/index.js", "typings": "./dist/index.d.ts", "scripts": { - "build": "tsc --outDir dist/", - "prepublishOnly": "npm run build" + "build": "tsc ", + "prepare": "npm run build" }, "dependencies": { "tough-cookie": "^4.0.0", "axios-cookiejar-support": "^1.0.1", "@types/tough-cookie": "^4.0.1", - "axios": "^0.21.4" + "axios": "^0.26.1" }, "devDependencies": { "@types/node": "^12.11.5", - "typescript": "^3.6.4" + "typescript": "^4.0" } } diff --git a/tsconfig.json b/tsconfig.json index 2f27acb..d953a37 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,7 +1,7 @@ { "compilerOptions": { "declaration": true, - "target": "es5", + "target": "ES5", "module": "commonjs", "noImplicitAny": true, "outDir": "dist", From 4856e07313d24be952540274dad5b74feffb4be1 Mon Sep 17 00:00:00 2001 From: VRCCat Date: Sun, 4 Dec 2022 22:35:39 +0000 Subject: [PATCH 083/130] Upgrade Node SDK to spec 1.9.1 --- .openapi-generator/VERSION | 2 +- api.ts | 12279 +++++++++++++++++++++++------------ common.ts | 34 +- openapitools.json | 2 +- package-lock.json | 32 +- package.json | 12 +- tsconfig.json | 2 +- 7 files changed, 8319 insertions(+), 4044 deletions(-) diff --git a/.openapi-generator/VERSION b/.openapi-generator/VERSION index 0df17dd..e230c83 100644 --- a/.openapi-generator/VERSION +++ b/.openapi-generator/VERSION @@ -1 +1 @@ -6.2.1 \ No newline at end of file +5.3.0 \ No newline at end of file diff --git a/api.ts b/api.ts index d1a106c..7dd05a4 100644 --- a/api.ts +++ b/api.ts @@ -47,10 +47,10 @@ export interface APIConfig { 'address': string; /** * Public Announcements - * @type {Set} + * @type {Set} * @memberof APIConfig */ - 'announcements': Set; + 'announcements': Set; /** * apiKey to be used for all other requests * @type {string} @@ -270,10 +270,10 @@ export interface APIConfig { 'downloadLinkWindows': string; /** * - * @type {DownloadURLList} + * @type {APIConfigDownloadURLList} * @memberof APIConfig */ - 'downloadUrls': DownloadURLList; + 'downloadUrls': APIConfigDownloadURLList; /** * Array of DynamicWorldRow objects, used by the game to display the list of world rows * @type {Set} @@ -282,10 +282,10 @@ export interface APIConfig { 'dynamicWorldRows': Set; /** * - * @type {APIEventConfig} + * @type {APIConfigEvents} * @memberof APIConfig */ - 'events': APIEventConfig; + 'events': APIConfigEvents; /** * Unknown * @type {string} @@ -521,70 +521,115 @@ export interface APIConfig { */ 'player-url-resolver-version': string; } +/** + * Public Announcement + * @export + * @interface APIConfigAnnouncement + */ +export interface APIConfigAnnouncement { + /** + * Announcement name + * @type {string} + * @memberof APIConfigAnnouncement + */ + 'name': string; + /** + * Announcement text + * @type {string} + * @memberof APIConfigAnnouncement + */ + 'text': string; +} +/** + * Download links for various development assets. + * @export + * @interface APIConfigDownloadURLList + */ +export interface APIConfigDownloadURLList { + /** + * Download link for legacy SDK2 + * @type {string} + * @memberof APIConfigDownloadURLList + * @deprecated + */ + 'sdk2': string; + /** + * Download link for SDK3 for Avatars + * @type {string} + * @memberof APIConfigDownloadURLList + */ + 'sdk3-avatars': string; + /** + * Download link for SDK3 for Worlds + * @type {string} + * @memberof APIConfigDownloadURLList + */ + 'sdk3-worlds': string; +} /** * * @export - * @interface APIEventConfig + * @interface APIConfigEvents */ -export interface APIEventConfig { +export interface APIConfigEvents { /** * Unknown * @type {number} - * @memberof APIEventConfig + * @memberof APIConfigEvents */ 'distanceClose': number; /** * Unknown * @type {number} - * @memberof APIEventConfig + * @memberof APIConfigEvents */ 'distanceFactor': number; /** * Unknown * @type {number} - * @memberof APIEventConfig + * @memberof APIConfigEvents */ 'distanceFar': number; /** * Unknown * @type {number} - * @memberof APIEventConfig + * @memberof APIConfigEvents */ 'groupDistance': number; /** * Unknown * @type {number} - * @memberof APIEventConfig + * @memberof APIConfigEvents */ 'maximumBunchSize': number; /** * Unknown * @type {number} - * @memberof APIEventConfig + * @memberof APIConfigEvents */ 'notVisibleFactor': number; /** * Unknown * @type {number} - * @memberof APIEventConfig + * @memberof APIConfigEvents */ 'playerOrderBucketSize': number; /** * Unknown * @type {number} - * @memberof APIEventConfig + * @memberof APIConfigEvents */ 'playerOrderFactor': number; /** * Unknown * @type {number} - * @memberof APIEventConfig + * @memberof APIConfigEvents */ 'slowUpdateFactorThreshold': number; /** * Unknown * @type {number} - * @memberof APIEventConfig + * @memberof APIConfigEvents */ 'viewSegmentLength': number; } @@ -638,6 +683,19 @@ export interface AddFavoriteRequest { */ 'tags': Array; } +/** + * + * @export + * @interface AddGroupGalleryImageRequest + */ +export interface AddGroupGalleryImageRequest { + /** + * + * @type {string} + * @memberof AddGroupGalleryImageRequest + */ + 'fileId': string; +} /** * * @export @@ -711,7 +769,7 @@ export interface Avatar { */ 'releaseStatus': ReleaseStatus; /** - * + * * @type {Array} * @memberof Avatar */ @@ -767,6 +825,19 @@ export interface AvatarUnityPackageUrlObject { */ 'unityPackageUrl'?: string; } +/** + * + * @export + * @interface BanGroupMemberRequest + */ +export interface BanGroupMemberRequest { + /** + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof BanGroupMemberRequest + */ + 'userId': string; +} /** * * @export @@ -798,7 +869,7 @@ export interface CreateAvatarRequest { */ 'description'?: string; /** - * + * * @type {Array} * @memberof CreateAvatarRequest */ @@ -853,7 +924,7 @@ export interface CreateFileRequest { */ 'extension': string; /** - * + * * @type {Array} * @memberof CreateFileRequest */ @@ -890,6 +961,197 @@ export interface CreateFileVersionRequest { */ 'fileSizeInBytes'?: number; } +/** + * + * @export + * @interface CreateGroupAnnouncementRequest + */ +export interface CreateGroupAnnouncementRequest { + /** + * Announcement title + * @type {string} + * @memberof CreateGroupAnnouncementRequest + */ + 'title': string; + /** + * Announcement text + * @type {string} + * @memberof CreateGroupAnnouncementRequest + */ + 'text'?: string; + /** + * + * @type {string} + * @memberof CreateGroupAnnouncementRequest + */ + 'imageId'?: string; + /** + * Send notification to group members. + * @type {boolean} + * @memberof CreateGroupAnnouncementRequest + */ + 'sendNotification'?: boolean; +} +/** + * + * @export + * @interface CreateGroupGalleryRequest + */ +export interface CreateGroupGalleryRequest { + /** + * Name of the gallery. + * @type {string} + * @memberof CreateGroupGalleryRequest + */ + 'name': string; + /** + * Description of the gallery. + * @type {string} + * @memberof CreateGroupGalleryRequest + */ + 'description'?: string; + /** + * Whether the gallery is members only. + * @type {boolean} + * @memberof CreateGroupGalleryRequest + */ + 'membersOnly'?: boolean; + /** + * + * @type {Array} + * @memberof CreateGroupGalleryRequest + */ + 'roleIdsToView'?: Array | null; + /** + * + * @type {Array} + * @memberof CreateGroupGalleryRequest + */ + 'roleIdsToSubmit'?: Array | null; + /** + * + * @type {Array} + * @memberof CreateGroupGalleryRequest + */ + 'roleIdsToAutoApprove'?: Array | null; + /** + * + * @type {Array} + * @memberof CreateGroupGalleryRequest + */ + 'roleIdsToManage'?: Array | null; +} +/** + * + * @export + * @interface CreateGroupInviteRequest + */ +export interface CreateGroupInviteRequest { + /** + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof CreateGroupInviteRequest + */ + 'userId': string; + /** + * + * @type {boolean} + * @memberof CreateGroupInviteRequest + */ + 'confirmOverrideBlock'?: boolean; +} +/** + * + * @export + * @interface CreateGroupRequest + */ +export interface CreateGroupRequest { + /** + * + * @type {string} + * @memberof CreateGroupRequest + */ + 'name': string; + /** + * + * @type {string} + * @memberof CreateGroupRequest + */ + 'shortCode': string; + /** + * + * @type {string} + * @memberof CreateGroupRequest + */ + 'description'?: string; + /** + * + * @type {GroupJoinState} + * @memberof CreateGroupRequest + */ + 'joinState'?: GroupJoinState; + /** + * + * @type {string} + * @memberof CreateGroupRequest + */ + 'iconId'?: string | null; + /** + * + * @type {string} + * @memberof CreateGroupRequest + */ + 'bannerId'?: string | null; + /** + * + * @type {GroupPrivacy} + * @memberof CreateGroupRequest + */ + 'privacy'?: GroupPrivacy; + /** + * + * @type {GroupRoleTemplate} + * @memberof CreateGroupRequest + */ + 'roleTemplate': GroupRoleTemplate; +} +/** + * + * @export + * @interface CreateGroupRoleRequest + */ +export interface CreateGroupRoleRequest { + /** + * + * @type {string} + * @memberof CreateGroupRoleRequest + */ + 'id'?: string; + /** + * + * @type {string} + * @memberof CreateGroupRoleRequest + */ + 'name'?: string; + /** + * + * @type {string} + * @memberof CreateGroupRoleRequest + */ + 'description'?: string; + /** + * + * @type {boolean} + * @memberof CreateGroupRoleRequest + */ + 'isSelfAssignable'?: boolean; + /** + * + * @type {Array} + * @memberof CreateGroupRoleRequest + */ + 'permissions'?: Array; +} /** * * @export @@ -963,7 +1225,7 @@ export interface CreateWorldRequest { */ 'releaseStatus'?: ReleaseStatus; /** - * + * * @type {Array} * @memberof CreateWorldRequest */ @@ -1181,7 +1443,7 @@ export interface CurrentUser { */ 'onlineFriends'?: Array; /** - * + * * @type {Array} * @memberof CurrentUser */ @@ -1278,15 +1540,12 @@ export interface CurrentUser { * @enum {string} */ -export const DeploymentGroup = { - Blue: 'blue', - Green: 'green', - Grape: 'grape', - Cherry: 'cherry' -} as const; - -export type DeploymentGroup = typeof DeploymentGroup[keyof typeof DeploymentGroup]; - +export enum DeploymentGroup { + Blue = 'blue', + Green = 'green', + Grape = 'grape', + Cherry = 'cherry' +} /** * \"none\" User is a normal user \"trusted\" Unknown \"internal\" Is a VRChat Developer \"moderator\" Is a VRChat Moderator Staff can hide their developerType at will. @@ -1294,42 +1553,13 @@ export type DeploymentGroup = typeof DeploymentGroup[keyof typeof DeploymentGrou * @enum {string} */ -export const DeveloperType = { - None: 'none', - Trusted: 'trusted', - Internal: 'internal', - Moderator: 'moderator' -} as const; - -export type DeveloperType = typeof DeveloperType[keyof typeof DeveloperType]; - - -/** - * Download links for various development assets. - * @export - * @interface DownloadURLList - */ -export interface DownloadURLList { - /** - * Download link for legacy SDK2 - * @type {string} - * @memberof DownloadURLList - * @deprecated - */ - 'sdk2': string; - /** - * Download link for SDK3 for Avatars - * @type {string} - * @memberof DownloadURLList - */ - 'sdk3-avatars': string; - /** - * Download link for SDK3 for Worlds - * @type {string} - * @memberof DownloadURLList - */ - 'sdk3-worlds': string; +export enum DeveloperType { + None = 'none', + Trusted = 'trusted', + Internal = 'internal', + Moderator = 'moderator' } + /** * * @export @@ -1404,7 +1634,7 @@ export interface Favorite { */ 'id': string; /** - * + * * @type {Array} * @memberof Favorite */ @@ -1453,7 +1683,7 @@ export interface FavoriteGroup { */ 'ownerId': string; /** - * + * * @type {Array} * @memberof FavoriteGroup */ @@ -1477,14 +1707,11 @@ export interface FavoriteGroup { * @enum {string} */ -export const FavoriteGroupVisibility = { - Private: 'private', - Friends: 'friends', - Public: 'public' -} as const; - -export type FavoriteGroupVisibility = typeof FavoriteGroupVisibility[keyof typeof FavoriteGroupVisibility]; - +export enum FavoriteGroupVisibility { + Private = 'private', + Friends = 'friends', + Public = 'public' +} /** * @@ -1492,14 +1719,11 @@ export type FavoriteGroupVisibility = typeof FavoriteGroupVisibility[keyof typeo * @enum {string} */ -export const FavoriteType = { - World: 'world', - Friend: 'friend', - Avatar: 'avatar' -} as const; - -export type FavoriteType = typeof FavoriteType[keyof typeof FavoriteType]; - +export enum FavoriteType { + World = 'world', + Friend = 'friend', + Avatar = 'avatar' +} /** * @@ -1551,13 +1775,15 @@ export interface FileData { 'url': string; } -export const FileDataCategoryEnum = { - Multipart: 'multipart', - Queued: 'queued', - Simple: 'simple' -} as const; - -export type FileDataCategoryEnum = typeof FileDataCategoryEnum[keyof typeof FileDataCategoryEnum]; +/** + * @export + * @enum {string} + */ +export enum FileDataCategoryEnum { + Multipart = 'multipart', + Queued = 'queued', + Simple = 'simple' +} /** * @@ -1565,15 +1791,12 @@ export type FileDataCategoryEnum = typeof FileDataCategoryEnum[keyof typeof File * @enum {string} */ -export const FileStatus = { - Waiting: 'waiting', - Complete: 'complete', - None: 'none', - Queued: 'queued' -} as const; - -export type FileStatus = typeof FileStatus[keyof typeof FileStatus]; - +export enum FileStatus { + Waiting = 'waiting', + Complete = 'complete', + None = 'none', + Queued = 'queued' +} /** * @@ -1735,570 +1958,575 @@ export interface FriendStatus { /** * * @export - * @interface InfoPush + * @interface Group */ -export interface InfoPush { +export interface Group { /** * * @type {string} - * @memberof InfoPush + * @memberof Group */ - 'id': string; + 'id'?: string; /** * - * @type {boolean} - * @memberof InfoPush + * @type {string} + * @memberof Group */ - 'isEnabled': boolean; + 'name'?: string; /** * - * @type {ReleaseStatus} - * @memberof InfoPush + * @type {string} + * @memberof Group */ - 'releaseStatus': ReleaseStatus; + 'shortCode'?: string; /** * - * @type {number} - * @memberof InfoPush + * @type {string} + * @memberof Group */ - 'priority': number; + 'discriminator'?: string; /** - * - * @type {Array} - * @memberof InfoPush + * + * @type {string} + * @memberof Group */ - 'tags': Array; + 'description'?: string; /** * - * @type {InfoPushData} - * @memberof InfoPush + * @type {string} + * @memberof Group */ - 'data': InfoPushData; + 'iconUrl'?: string | null; /** - * Unknown usage, MD5 + * * @type {string} - * @memberof InfoPush + * @memberof Group */ - 'hash': string; + 'bannerUrl'?: string | null; /** * + * @type {GroupPrivacy} + * @memberof Group + */ + 'privacy'?: GroupPrivacy; + /** + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof InfoPush + * @memberof Group */ - 'createdAt': string; + 'ownerId'?: string; /** * * @type {string} - * @memberof InfoPush + * @memberof Group */ - 'updatedAt': string; + 'rules'?: string | null; + /** + * + * @type {Array} + * @memberof Group + */ + 'links'?: Array; + /** + * + * @type {Array} + * @memberof Group + */ + 'languages'?: Array; /** * * @type {string} - * @memberof InfoPush + * @memberof Group */ - 'startDate'?: string; + 'iconId'?: string | null; /** * * @type {string} - * @memberof InfoPush + * @memberof Group */ - 'endDate'?: string; -} -/** - * - * @export - * @interface InfoPushData - */ -export interface InfoPushData { + 'bannerId'?: string | null; /** * - * @type {DynamicContentRow} - * @memberof InfoPushData + * @type {number} + * @memberof Group */ - 'contentList'?: DynamicContentRow; + 'memberCount'?: number; /** * * @type {string} - * @memberof InfoPushData + * @memberof Group */ - 'description'?: string; + 'memberCountSyncedAt'?: string; /** * - * @type {string} - * @memberof InfoPushData + * @type {boolean} + * @memberof Group */ - 'imageUrl'?: string; + 'isVerified'?: boolean; /** * - * @type {string} - * @memberof InfoPushData + * @type {GroupJoinState} + * @memberof Group */ - 'name'?: string; + 'joinState'?: GroupJoinState; /** * - * @type {InfoPushDataClickable} - * @memberof InfoPushData + * @type {Array} + * @memberof Group */ - 'onPressed'?: InfoPushDataClickable; + 'tags'?: Array; /** * - * @type {string} - * @memberof InfoPushData + * @type {Array} + * @memberof Group */ - 'template'?: string; + 'galleries'?: Array; /** * * @type {string} - * @memberof InfoPushData + * @memberof Group */ - 'version'?: string; + 'createdAt'?: string; /** * - * @type {InfoPushDataArticle} - * @memberof InfoPushData + * @type {number} + * @memberof Group */ - 'article'?: InfoPushDataArticle; -} -/** - * - * @export - * @interface InfoPushDataArticle - */ -export interface InfoPushDataArticle { + 'onlineMemberCount'?: number; /** * - * @type {InfoPushDataArticleContent} - * @memberof InfoPushDataArticle + * @type {GroupMemberStatus} + * @memberof Group */ - 'content'?: InfoPushDataArticleContent; + 'membershipStatus'?: GroupMemberStatus; + /** + * + * @type {GroupMyMember} + * @memberof Group + */ + 'myMember'?: GroupMyMember; + /** + * Only returned if ?includeRoles=true is specified. + * @type {Array} + * @memberof Group + */ + 'roles'?: Array | null; } /** * * @export - * @interface InfoPushDataArticleContent + * @interface GroupAnnouncement */ -export interface InfoPushDataArticleContent { +export interface GroupAnnouncement { /** * * @type {string} - * @memberof InfoPushDataArticleContent + * @memberof GroupAnnouncement */ - 'text'?: string; + 'id'?: string; /** * * @type {string} - * @memberof InfoPushDataArticleContent + * @memberof GroupAnnouncement */ - 'imageUrl'?: string; + 'groupId'?: string; + /** + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof GroupAnnouncement + */ + 'authorId'?: string; /** * - * @type {InfoPushDataClickable} - * @memberof InfoPushDataArticleContent + * @type {string} + * @memberof GroupAnnouncement */ - 'onPressed'?: InfoPushDataClickable; -} -/** - * - * @export - * @interface InfoPushDataClickable - */ -export interface InfoPushDataClickable { + 'title'?: string | null; /** * * @type {string} - * @memberof InfoPushDataClickable + * @memberof GroupAnnouncement */ - 'command': InfoPushDataClickableCommandEnum; + 'text'?: string | null; /** - * In case of OpenURL, this would contain the link. - * @type {Array} - * @memberof InfoPushDataClickable + * + * @type {string} + * @memberof GroupAnnouncement */ - 'parameters'?: Array; + 'imageId'?: string; + /** + * + * @type {string} + * @memberof GroupAnnouncement + */ + 'imageUrl'?: string | null; + /** + * + * @type {string} + * @memberof GroupAnnouncement + */ + 'createdAt'?: string | null; + /** + * + * @type {string} + * @memberof GroupAnnouncement + */ + 'updatedAt'?: string | null; } - -export const InfoPushDataClickableCommandEnum = { - OpenUrl: 'OpenURL', - OpenVrcPlusMenu: 'OpenVRCPlusMenu', - OpenSafetyMenu: 'OpenSafetyMenu', - CannedWorldSearch: 'CannedWorldSearch' -} as const; - -export type InfoPushDataClickableCommandEnum = typeof InfoPushDataClickableCommandEnum[keyof typeof InfoPushDataClickableCommandEnum]; - /** - * * `hidden` field is only present if InstanceType is `hidden` aka \"Friends+\", and is instance creator. * `friends` field is only present if InstanceType is `friends` aka \"Friends\", and is instance creator. * `private` field is only present if InstanceType is `private` aka \"Invite\" or \"Invite+\", and is instance creator. + * * @export - * @interface Instance + * @interface GroupAuditLogEntry */ -export interface Instance { +export interface GroupAuditLogEntry { /** * - * @type {boolean} - * @memberof Instance + * @type {string} + * @memberof GroupAuditLogEntry */ - 'active': boolean; + 'id'?: string; /** * - * @type {boolean} - * @memberof Instance + * @type {string} + * @memberof GroupAuditLogEntry */ - 'canRequestInvite': boolean; + 'created_at'?: string; /** * - * @type {number} - * @memberof Instance + * @type {string} + * @memberof GroupAuditLogEntry */ - 'capacity': number; + 'groupId'?: string; /** - * Always returns \"unknown\". + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof Instance - * @deprecated + * @memberof GroupAuditLogEntry */ - 'clientNumber': string; + 'actorId'?: string; /** * - * @type {boolean} - * @memberof Instance + * @type {string} + * @memberof GroupAuditLogEntry */ - 'full': boolean; + 'actorDisplayname'?: string; /** - * InstanceID can be \"offline\" on User profiles if you are not friends with that user and \"private\" if you are friends and user is in private instance. + * Typically GroupID or GroupRoleID, but could be other types of IDs. * @type {string} - * @memberof Instance + * @memberof GroupAuditLogEntry */ - 'id': string; + 'targetId'?: string; /** - * + * The type of event that occurred. This is a string that is prefixed with the type of object that the event occurred on. For example, a group role update event would be prefixed with `group.role`. * @type {string} - * @memberof Instance + * @memberof GroupAuditLogEntry */ - 'instanceId': string; + 'eventType'?: string; /** - * InstanceID can be \"offline\" on User profiles if you are not friends with that user and \"private\" if you are friends and user is in private instance. + * A human-readable description of the event. * @type {string} - * @memberof Instance + * @memberof GroupAuditLogEntry */ - 'location': string; + 'description'?: string; /** - * - * @type {number} - * @memberof Instance + * The data associated with the event. The format of this data is dependent on the event type. + * @type {object} + * @memberof GroupAuditLogEntry */ - 'n_users': number; + 'data'?: object; +} +/** + * + * @export + * @interface GroupGallery + */ +export interface GroupGallery { /** * * @type {string} - * @memberof Instance + * @memberof GroupGallery */ - 'name': string; + 'id'?: string; /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * Name of the gallery. * @type {string} - * @memberof Instance + * @memberof GroupGallery */ - 'ownerId'?: string; + 'name'?: string; /** - * + * Description of the gallery. + * @type {string} + * @memberof GroupGallery + */ + 'description'?: string; + /** + * Whether the gallery is members only. * @type {boolean} - * @memberof Instance + * @memberof GroupGallery */ - 'permanent': boolean; + 'membersOnly'?: boolean; /** * - * @type {Region} - * @memberof Instance + * @type {Array} + * @memberof GroupGallery */ - 'photonRegion': Region; + 'roleIdsToView'?: Array | null; /** * - * @type {InstancePlatforms} - * @memberof Instance + * @type {Array} + * @memberof GroupGallery */ - 'platforms': InstancePlatforms; + 'roleIdsToSubmit'?: Array | null; /** * - * @type {Region} - * @memberof Instance + * @type {Array} + * @memberof GroupGallery */ - 'region': Region; + 'roleIdsToAutoApprove'?: Array | null; + /** + * + * @type {Array} + * @memberof GroupGallery + */ + 'roleIdsToManage'?: Array | null; /** * * @type {string} - * @memberof Instance + * @memberof GroupGallery */ - 'secureName': string; + 'createdAt'?: string; /** * * @type {string} - * @memberof Instance + * @memberof GroupGallery */ - 'shortName'?: string; + 'updatedAt'?: string; +} +/** + * + * @export + * @interface GroupGalleryImage + */ +export interface GroupGalleryImage { /** - * The tags array on Instances usually contain the language tags of the people in the instance. - * @type {Array} - * @memberof Instance + * + * @type {string} + * @memberof GroupGalleryImage */ - 'tags': Array; + 'id'?: string; /** * - * @type {InstanceType} - * @memberof Instance + * @type {string} + * @memberof GroupGalleryImage */ - 'type': InstanceType; + 'groupId'?: string; /** - * WorldID be \"offline\" on User profiles if you are not friends with that user. + * * @type {string} - * @memberof Instance + * @memberof GroupGalleryImage */ - 'worldId': string; + 'galleryId'?: string; /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * * @type {string} - * @memberof Instance + * @memberof GroupGalleryImage */ - 'hidden'?: string; + 'fileId'?: string; /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * * @type {string} - * @memberof Instance + * @memberof GroupGalleryImage */ - 'friends'?: string; + 'imageUrl'?: string; + /** + * + * @type {string} + * @memberof GroupGalleryImage + */ + 'createdAt'?: string; /** * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof Instance + * @memberof GroupGalleryImage */ - 'private'?: string; -} -/** - * - * @export - * @interface InstancePlatforms - */ -export interface InstancePlatforms { + 'submittedByUserId'?: string; /** * - * @type {number} - * @memberof InstancePlatforms + * @type {boolean} + * @memberof GroupGalleryImage */ - 'android': number; + 'approved'?: boolean; + /** + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof GroupGalleryImage + */ + 'approvedByUserId'?: string; /** * - * @type {number} - * @memberof InstancePlatforms + * @type {string} + * @memberof GroupGalleryImage */ - 'standalonewindows': number; + 'approvedAt'?: string; } /** * * @export - * @interface InstanceShortNameResponse + * @enum {string} */ -export interface InstanceShortNameResponse { + +export enum GroupJoinState { + Closed = 'closed', + Invite = 'invite', + Request = 'request', + Open = 'open' +} + +/** + * + * @export + * @interface GroupLimitedMember + */ +export interface GroupLimitedMember { /** * * @type {string} - * @memberof InstanceShortNameResponse + * @memberof GroupLimitedMember */ - 'secureName': string; + 'id'?: string; /** * * @type {string} - * @memberof InstanceShortNameResponse + * @memberof GroupLimitedMember */ - 'shortName'?: string; + 'groupId'?: string; + /** + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof GroupLimitedMember + */ + 'userId'?: string; + /** + * + * @type {boolean} + * @memberof GroupLimitedMember + */ + 'isRepresenting'?: boolean; } /** * * @export - * @enum {string} - */ - -export const InstanceType = { - Public: 'public', - Hidden: 'hidden', - Friends: 'friends', - Private: 'private' -} as const; - -export type InstanceType = typeof InstanceType[keyof typeof InstanceType]; - - -/** - * - * @export - * @interface InviteMessage + * @interface GroupMember */ -export interface InviteMessage { +export interface GroupMember { /** * - * @type {boolean} - * @memberof InviteMessage + * @type {string} + * @memberof GroupMember */ - 'canBeUpdated': boolean; + 'id'?: string; /** * * @type {string} - * @memberof InviteMessage + * @memberof GroupMember */ - 'id': string; + 'groupId'?: string; /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof InviteMessage + * @memberof GroupMember */ - 'message': string; + 'userId'?: string; /** - * - * @type {InviteMessageType} - * @memberof InviteMessage + * Whether the user is representing the group. This makes the group show up above the name tag in-game. + * @type {boolean} + * @memberof GroupMember */ - 'messageType': InviteMessageType; + 'isRepresenting'?: boolean; /** - * Changes to 60 when updated, although probably server-side configurable. - * @type {number} - * @memberof InviteMessage + * + * @type {GroupMemberLimitedUser} + * @memberof GroupMember */ - 'remainingCooldownMinutes': number; + 'user'?: GroupMemberLimitedUser; /** * - * @type {number} - * @memberof InviteMessage + * @type {Array} + * @memberof GroupMember */ - 'slot': number; + 'roleIds'?: Array; /** * * @type {string} - * @memberof InviteMessage + * @memberof GroupMember */ - 'updatedAt': string; -} -/** - * - * @export - * @enum {string} - */ - -export const InviteMessageType = { - Message: 'message', - Response: 'response', - Request: 'request', - RequestResponse: 'requestResponse' -} as const; - -export type InviteMessageType = typeof InviteMessageType[keyof typeof InviteMessageType]; - - -/** - * - * @export - * @interface InviteRequest - */ -export interface InviteRequest { + 'joinedAt'?: string; /** - * InstanceID can be \"offline\" on User profiles if you are not friends with that user and \"private\" if you are friends and user is in private instance. + * * @type {string} - * @memberof InviteRequest + * @memberof GroupMember */ - 'instanceId': string; + 'membershipStatus'?: string; /** * - * @type {number} - * @memberof InviteRequest + * @type {string} + * @memberof GroupMember */ - 'messageSlot'?: number; -} -/** - * - * @export - * @interface InviteResponse - */ -export interface InviteResponse { + 'visibility'?: string; /** * - * @type {number} - * @memberof InviteResponse + * @type {boolean} + * @memberof GroupMember */ - 'responseSlot': number; -} -/** - * - * @export - * @interface License - */ -export interface License { + 'isSubscribedToAnnouncements'?: boolean; /** - * Either a AvatarID, LicenseGroupID, PermissionID or ProductID. This depends on the `forType` field. + * Only visible via the /groups/:groupId/members endpoint, **not** when fetching a specific user. * @type {string} - * @memberof License - */ - 'forId': string; - /** - * - * @type {LicenseType} - * @memberof License + * @memberof GroupMember */ - 'forType': LicenseType; + 'createdAt'?: string | null; /** - * + * Only visible via the /groups/:groupId/members endpoint, **not** when fetching a specific user. * @type {string} - * @memberof License + * @memberof GroupMember */ - 'forName': string; + 'bannedAt'?: string | null; /** - * - * @type {LicenseAction} - * @memberof License + * Only visible via the /groups/:groupId/members endpoint, **not** when fetching a specific user. + * @type {string} + * @memberof GroupMember */ - 'forAction': LicenseAction; + 'managerNotes'?: string | null; } /** - * - * @export - * @enum {string} - */ - -export const LicenseAction = { - Wear: 'wear', - Have: 'have' -} as const; - -export type LicenseAction = typeof LicenseAction[keyof typeof LicenseAction]; - - -/** - * + * Only visible via the /groups/:groupId/members endpoint, **not** when fetching a specific user. * @export - * @interface LicenseGroup + * @interface GroupMemberLimitedUser */ -export interface LicenseGroup { +export interface GroupMemberLimitedUser { /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof LicenseGroup + * @memberof GroupMemberLimitedUser */ - 'id': string; + 'id'?: string; /** * * @type {string} - * @memberof LicenseGroup + * @memberof GroupMemberLimitedUser */ - 'name': string; + 'displayName'?: string; /** * * @type {string} - * @memberof LicenseGroup + * @memberof GroupMemberLimitedUser */ - 'description': string; + 'thumbnailUrl'?: string; /** * - * @type {Array} - * @memberof LicenseGroup + * @type {string} + * @memberof GroupMemberLimitedUser */ - 'licenses': Array; + 'iconUrl'?: string; } /** * @@ -2306,265 +2534,224 @@ export interface LicenseGroup { * @enum {string} */ -export const LicenseType = { - Avatar: 'avatar', - LicenseGroup: 'licenseGroup', - Permission: 'permission', - Product: 'product' -} as const; - -export type LicenseType = typeof LicenseType[keyof typeof LicenseType]; - +export enum GroupMemberStatus { + Inactive = 'inactive', + Member = 'member', + Requested = 'requested', + Invited = 'invited' +} /** * * @export - * @interface LimitedUnityPackage + * @interface GroupMyMember */ -export interface LimitedUnityPackage { - /** - * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. - * @type {string} - * @memberof LimitedUnityPackage - */ - 'platform': string; +export interface GroupMyMember { /** * * @type {string} - * @memberof LimitedUnityPackage + * @memberof GroupMyMember */ - 'unityVersion': string; -} -/** - * - * @export - * @interface LimitedUser - */ -export interface LimitedUser { + 'id'?: string; /** * * @type {string} - * @memberof LimitedUser + * @memberof GroupMyMember */ - 'bio'?: string; + 'groupId'?: string; /** - * When profilePicOverride is not empty, use it instead. + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof LimitedUser + * @memberof GroupMyMember */ - 'currentAvatarImageUrl': string; + 'userId'?: string; /** - * When profilePicOverride is not empty, use it instead. - * @type {string} - * @memberof LimitedUser + * + * @type {Array} + * @memberof GroupMyMember */ - 'currentAvatarThumbnailImageUrl': string; + 'roleIds'?: Array; /** * - * @type {DeveloperType} - * @memberof LimitedUser + * @type {string} + * @memberof GroupMyMember */ - 'developerType': DeveloperType; + 'managerNotes'?: string; /** * * @type {string} - * @memberof LimitedUser + * @memberof GroupMyMember */ - 'displayName': string; + 'membershipStatus'?: string; /** * - * @type {string} - * @memberof LimitedUser + * @type {boolean} + * @memberof GroupMyMember */ - 'fallbackAvatar': string; + 'isSubscribedToAnnouncements'?: boolean; /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * * @type {string} - * @memberof LimitedUser + * @memberof GroupMyMember */ - 'id': string; + 'visibility'?: string; /** * * @type {boolean} - * @memberof LimitedUser + * @memberof GroupMyMember */ - 'isFriend': boolean; + 'isRepresenting'?: boolean; /** - * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. + * * @type {string} - * @memberof LimitedUser + * @memberof GroupMyMember */ - 'last_platform': string; + 'joinedAt'?: string; /** * * @type {string} - * @memberof LimitedUser + * @memberof GroupMyMember */ - 'profilePicOverride': string; + 'bannedAt'?: string | null; /** * - * @type {UserStatus} - * @memberof LimitedUser + * @type {boolean} + * @memberof GroupMyMember */ - 'status': UserStatus; + 'has2FA'?: boolean; /** * - * @type {string} - * @memberof LimitedUser - */ - 'statusDescription': string; - /** - * <- Always empty. * @type {Array} - * @memberof LimitedUser + * @memberof GroupMyMember */ - 'tags': Array; + 'permissions'?: Array; +} +/** + * A permission that can be granted to a role in a group. + * @export + * @interface GroupPermission + */ +export interface GroupPermission { /** - * + * The name of the permission. * @type {string} - * @memberof LimitedUser + * @memberof GroupPermission */ - 'userIcon': string; + 'name'?: string; /** - * -| **DEPRECATED:** VRChat API no longer return usernames of other users. [See issue by Tupper for more information](https://github.com/pypy-vrc/VRCX/issues/429). + * The display name of the permission. * @type {string} - * @memberof LimitedUser - * @deprecated + * @memberof GroupPermission */ - 'username'?: string; + 'displayName'?: string; /** - * + * Human-readable description of the permission. * @type {string} - * @memberof LimitedUser + * @memberof GroupPermission */ - 'location'?: string; + 'help'?: string; /** - * - * @type {string} - * @memberof LimitedUser + * Whether this permission is a \"management\" permission. + * @type {boolean} + * @memberof GroupPermission */ - 'friendKey'?: string; + 'isManagementPermission'?: boolean; + /** + * Whether the user is allowed to add this permission to a role. + * @type {boolean} + * @memberof GroupPermission + */ + 'allowedToAdd'?: boolean; } /** * * @export - * @interface LimitedWorld + * @enum {string} */ -export interface LimitedWorld { + +export enum GroupPrivacy { + Default = 'default', + Private = 'private' +} + +/** + * + * @export + * @interface GroupRole + */ +export interface GroupRole { /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * * @type {string} - * @memberof LimitedWorld + * @memberof GroupRole */ - 'authorId': string; + 'id'?: string; /** * * @type {string} - * @memberof LimitedWorld + * @memberof GroupRole */ - 'authorName': string; - /** - * - * @type {number} - * @memberof LimitedWorld - */ - 'capacity': number; + 'groupId'?: string; /** * * @type {string} - * @memberof LimitedWorld - */ - 'created_at': string; - /** - * - * @type {number} - * @memberof LimitedWorld + * @memberof GroupRole */ - 'favorites': number; + 'name'?: string; /** * - * @type {number} - * @memberof LimitedWorld - */ - 'heat': number; - /** - * WorldID be \"offline\" on User profiles if you are not friends with that user. * @type {string} - * @memberof LimitedWorld + * @memberof GroupRole */ - 'id': string; + 'description'?: string; /** * - * @type {string} - * @memberof LimitedWorld + * @type {boolean} + * @memberof GroupRole */ - 'imageUrl': string; + 'isSelfAssignable'?: boolean; /** * - * @type {string} - * @memberof LimitedWorld + * @type {Array} + * @memberof GroupRole */ - 'labsPublicationDate': string; + 'permissions'?: Array; /** * - * @type {string} - * @memberof LimitedWorld + * @type {boolean} + * @memberof GroupRole */ - 'name': string; + 'isManagementRole'?: boolean; /** * - * @type {number} - * @memberof LimitedWorld + * @type {boolean} + * @memberof GroupRole */ - 'occupants': number; + 'requiresTwoFactor'?: boolean; /** * - * @type {string} - * @memberof LimitedWorld + * @type {boolean} + * @memberof GroupRole */ - 'organization': string; + 'requiresPurchase'?: boolean; /** * * @type {number} - * @memberof LimitedWorld - */ - 'popularity': number; - /** - * - * @type {string} - * @memberof LimitedWorld - */ - 'publicationDate': string; - /** - * - * @type {ReleaseStatus} - * @memberof LimitedWorld - */ - 'releaseStatus': ReleaseStatus; - /** - * - * @type {Array} - * @memberof LimitedWorld + * @memberof GroupRole */ - 'tags': Array; + 'order'?: number; /** * * @type {string} - * @memberof LimitedWorld - */ - 'thumbnailImageUrl': string; - /** - * - * @type {Array} - * @memberof LimitedWorld + * @memberof GroupRole */ - 'unityPackages': Array; + 'createdAt'?: string; /** * * @type {string} - * @memberof LimitedWorld + * @memberof GroupRole */ - 'updated_at': string; + 'updatedAt'?: string; } /** * @@ -2572,480 +2759,405 @@ export interface LimitedWorld { * @enum {string} */ -export const MIMEType = { - ImageJpeg: 'image/jpeg', - ImageJpg: 'image/jpg', - ImagePng: 'image/png', - ImageWebp: 'image/webp', - ImageGif: 'image/gif', - ImageBmp: 'image/bmp', - ImageSvgxml: 'image/svg+xml', - ImageTiff: 'image/tiff', - ApplicationXAvatar: 'application/x-avatar', - ApplicationXWorld: 'application/x-world', - ApplicationGzip: 'application/gzip', - ApplicationXRsyncSignature: 'application/x-rsync-signature', - ApplicationXRsyncDelta: 'application/x-rsync-delta', - ApplicationOctetStream: 'application/octet-stream' -} as const; - -export type MIMEType = typeof MIMEType[keyof typeof MIMEType]; - +export enum GroupRoleTemplate { + Default = 'default', + ManagedFree = 'managedFree', + ManagedInvite = 'managedInvite', + ManagedRequest = 'managedRequest' +} /** * * @export - * @interface ModelError + * @enum {string} */ -export interface ModelError { - /** - * - * @type {Response} - * @memberof ModelError - */ - 'error'?: Response; + +export enum GroupUserVisibility { + Visible = 'visible', + Hidden = 'hidden', + Friends = 'friends' } + /** * * @export - * @interface ModelFile + * @interface InfoPush */ -export interface ModelFile { +export interface InfoPush { /** * * @type {string} - * @memberof ModelFile + * @memberof InfoPush */ - 'extension': string; + 'id': string; /** * - * @type {string} - * @memberof ModelFile + * @type {boolean} + * @memberof InfoPush */ - 'id': string; + 'isEnabled': boolean; /** * - * @type {MIMEType} - * @memberof ModelFile + * @type {ReleaseStatus} + * @memberof InfoPush */ - 'mimeType': MIMEType; + 'releaseStatus': ReleaseStatus; /** * - * @type {string} - * @memberof ModelFile + * @type {number} + * @memberof InfoPush */ - 'name': string; + 'priority': number; /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * + * @type {Array} + * @memberof InfoPush + */ + 'tags': Array; + /** + * + * @type {InfoPushData} + * @memberof InfoPush + */ + 'data': InfoPushData; + /** + * Unknown usage, MD5 * @type {string} - * @memberof ModelFile + * @memberof InfoPush */ - 'ownerId': string; + 'hash': string; /** - * - * @type {Array} - * @memberof ModelFile + * + * @type {string} + * @memberof InfoPush */ - 'tags': Array; + 'createdAt': string; /** - * - * @type {Set} - * @memberof ModelFile + * + * @type {string} + * @memberof InfoPush */ - 'versions': Set; -} -/** - * - * @export - * @interface ModerateUserRequest - */ -export interface ModerateUserRequest { + 'updatedAt': string; /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * * @type {string} - * @memberof ModerateUserRequest + * @memberof InfoPush */ - 'moderated': string; + 'startDate'?: string; /** * - * @type {PlayerModerationType} - * @memberof ModerateUserRequest + * @type {string} + * @memberof InfoPush */ - 'type': PlayerModerationType; + 'endDate'?: string; } /** * * @export - * @interface Notification + * @interface InfoPushData */ -export interface Notification { +export interface InfoPushData { /** * - * @type {string} - * @memberof Notification + * @type {DynamicContentRow} + * @memberof InfoPushData */ - 'created_at': string; + 'contentList'?: DynamicContentRow; /** - * **NOTICE:** This is not a JSON object, this is a json **encoded** object, meaning you have to json-de-encode to get the NotificationDetail object depending on the NotificationType. + * * @type {string} - * @memberof Notification + * @memberof InfoPushData */ - 'details': string; + 'description'?: string; /** * * @type {string} - * @memberof Notification + * @memberof InfoPushData */ - 'id': string; + 'imageUrl'?: string; /** * * @type {string} - * @memberof Notification + * @memberof InfoPushData */ - 'message': string; + 'name'?: string; /** * - * @type {boolean} - * @memberof Notification + * @type {InfoPushDataClickable} + * @memberof InfoPushData */ - 'seen': boolean; + 'onPressed'?: InfoPushDataClickable; /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * * @type {string} - * @memberof Notification + * @memberof InfoPushData */ - 'senderUserId': string; + 'template'?: string; /** - * -| **DEPRECATED:** VRChat API no longer return usernames of other users. [See issue by Tupper for more information](https://github.com/pypy-vrc/VRCX/issues/429). + * * @type {string} - * @memberof Notification - * @deprecated + * @memberof InfoPushData */ - 'senderUsername'?: string; + 'version'?: string; /** * - * @type {NotificationType} - * @memberof Notification + * @type {InfoPushDataArticle} + * @memberof InfoPushData */ - 'type': NotificationType; + 'article'?: InfoPushDataArticle; } /** * * @export - * @enum {string} + * @interface InfoPushDataArticle */ - -export const NotificationType = { - FriendRequest: 'friendRequest', - Invite: 'invite', - InviteResponse: 'inviteResponse', - RequestInvite: 'requestInvite', - RequestInviteResponse: 'requestInviteResponse', - Votetokick: 'votetokick' -} as const; - -export type NotificationType = typeof NotificationType[keyof typeof NotificationType]; - - +export interface InfoPushDataArticle { + /** + * + * @type {InfoPushDataArticleContent} + * @memberof InfoPushDataArticle + */ + 'content'?: InfoPushDataArticleContent; +} /** * * @export - * @interface PastDisplayName + * @interface InfoPushDataArticleContent */ -export interface PastDisplayName { +export interface InfoPushDataArticleContent { /** * * @type {string} - * @memberof PastDisplayName + * @memberof InfoPushDataArticleContent */ - 'displayName': string; + 'text'?: string; /** * * @type {string} - * @memberof PastDisplayName + * @memberof InfoPushDataArticleContent */ - 'updated_at': string; + 'imageUrl'?: string; + /** + * + * @type {InfoPushDataClickable} + * @memberof InfoPushDataArticleContent + */ + 'onPressed'?: InfoPushDataClickable; } /** * * @export - * @interface Permission + * @interface InfoPushDataClickable */ -export interface Permission { +export interface InfoPushDataClickable { /** * * @type {string} - * @memberof Permission + * @memberof InfoPushDataClickable */ - 'id': string; + 'command': InfoPushDataClickableCommandEnum; /** - * - * @type {string} - * @memberof Permission + * In case of OpenURL, this would contain the link. + * @type {Array} + * @memberof InfoPushDataClickable */ - 'name': string; - /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. - * @type {string} - * @memberof Permission - */ - 'ownerId': string; - /** - * - * @type {object} - * @memberof Permission - */ - 'data'?: object; + 'parameters'?: Array; } + /** - * + * @export + * @enum {string} + */ +export enum InfoPushDataClickableCommandEnum { + OpenUrl = 'OpenURL', + OpenVrcPlusMenu = 'OpenVRCPlusMenu', + OpenSafetyMenu = 'OpenSafetyMenu', + CannedWorldSearch = 'CannedWorldSearch' +} + +/** + * * `hidden` field is only present if InstanceType is `hidden` aka \"Friends+\", and is instance creator. * `friends` field is only present if InstanceType is `friends` aka \"Friends\", and is instance creator. * `private` field is only present if InstanceType is `private` aka \"Invite\" or \"Invite+\", and is instance creator. * @export - * @interface PlayerModeration + * @interface Instance */ -export interface PlayerModeration { +export interface Instance { /** * - * @type {string} - * @memberof PlayerModeration + * @type {boolean} + * @memberof Instance */ - 'created': string; + 'active': boolean; /** * - * @type {string} - * @memberof PlayerModeration + * @type {boolean} + * @memberof Instance */ - 'id': string; + 'canRequestInvite': boolean; /** * + * @type {number} + * @memberof Instance + */ + 'capacity': number; + /** + * Always returns \"unknown\". * @type {string} - * @memberof PlayerModeration + * @memberof Instance + * @deprecated */ - 'sourceDisplayName': string; + 'clientNumber': string; /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * + * @type {boolean} + * @memberof Instance + */ + 'full': boolean; + /** + * InstanceID can be \"offline\" on User profiles if you are not friends with that user and \"private\" if you are friends and user is in private instance. * @type {string} - * @memberof PlayerModeration + * @memberof Instance */ - 'sourceUserId': string; + 'id': string; /** * * @type {string} - * @memberof PlayerModeration + * @memberof Instance */ - 'targetDisplayName': string; + 'instanceId': string; /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * InstanceID can be \"offline\" on User profiles if you are not friends with that user and \"private\" if you are friends and user is in private instance. * @type {string} - * @memberof PlayerModeration + * @memberof Instance */ - 'targetUserId': string; + 'location': string; /** * - * @type {PlayerModerationType} - * @memberof PlayerModeration + * @type {number} + * @memberof Instance */ - 'type': PlayerModerationType; -} -/** - * - * @export - * @enum {string} - */ - -export const PlayerModerationType = { - Mute: 'mute', - Unmute: 'unmute', - Block: 'block', - Unblock: 'unblock', - InteractOn: 'interactOn', - InteractOff: 'interactOff' -} as const; - -export type PlayerModerationType = typeof PlayerModerationType[keyof typeof PlayerModerationType]; - - -/** - * Public Announcement - * @export - * @interface PublicAnnouncement - */ -export interface PublicAnnouncement { + 'n_users': number; /** - * Announcement name + * * @type {string} - * @memberof PublicAnnouncement + * @memberof Instance */ 'name': string; /** - * Announcement text + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof PublicAnnouncement + * @memberof Instance */ - 'text': string; -} -/** - * API/Photon region. - * @export - * @enum {string} - */ - -export const Region = { - Us: 'us', - Use: 'use', - Usw: 'usw', - Eu: 'eu', - Jp: 'jp', - Unknown: 'unknown' -} as const; - -export type Region = typeof Region[keyof typeof Region]; - - -/** - * - * @export - * @enum {string} - */ - -export const ReleaseStatus = { - Public: 'public', - Private: 'private', - Hidden: 'hidden' -} as const; - -export type ReleaseStatus = typeof ReleaseStatus[keyof typeof ReleaseStatus]; - - -/** - * - * @export - * @interface RequestInviteRequest - */ -export interface RequestInviteRequest { + 'ownerId'?: string; /** * - * @type {number} - * @memberof RequestInviteRequest + * @type {boolean} + * @memberof Instance */ - 'messageSlot'?: number; -} -/** - * - * @export - * @interface Response - */ -export interface Response { + 'permanent': boolean; /** * - * @type {string} - * @memberof Response + * @type {Region} + * @memberof Instance */ - 'message'?: string; + 'photonRegion': Region; /** * - * @type {number} - * @memberof Response + * @type {InstancePlatforms} + * @memberof Instance */ - 'status_code': number; -} -/** - * - * @export - * @interface SentNotification - */ -export interface SentNotification { + 'platforms': InstancePlatforms; /** * - * @type {string} - * @memberof SentNotification + * @type {Region} + * @memberof Instance */ - 'created_at': string; + 'region': Region; /** - * **NOTICE:** This is not a JSON object, this is a json **encoded** object, meaning you have to json-de-encode to get the NotificationDetail object depending on the NotificationType. + * * @type {string} - * @memberof SentNotification + * @memberof Instance */ - 'details': string; + 'secureName': string; /** * * @type {string} - * @memberof SentNotification + * @memberof Instance */ - 'id': string; + 'shortName'?: string; + /** + * The tags array on Instances usually contain the language tags of the people in the instance. + * @type {Array} + * @memberof Instance + */ + 'tags': Array; /** * - * @type {string} - * @memberof SentNotification + * @type {InstanceType} + * @memberof Instance */ - 'message': string; + 'type': InstanceType; /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * WorldID be \"offline\" on User profiles if you are not friends with that user. * @type {string} - * @memberof SentNotification + * @memberof Instance */ - 'recieverUserId': string; + 'worldId': string; /** * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof SentNotification + * @memberof Instance */ - 'senderUserId': string; + 'hidden'?: string; /** - * -| **DEPRECATED:** VRChat API no longer return usernames of other users. [See issue by Tupper for more information](https://github.com/pypy-vrc/VRCX/issues/429). + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof SentNotification - * @deprecated + * @memberof Instance */ - 'senderUsername'?: string; + 'friends'?: string; /** - * - * @type {NotificationType} - * @memberof SentNotification + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof Instance */ - 'type': NotificationType; + 'private'?: string; } /** * * @export - * @interface Subscription + * @interface InstancePlatforms */ -export interface Subscription { - /** - * - * @type {string} - * @memberof Subscription - */ - 'id': string; +export interface InstancePlatforms { /** * - * @type {string} - * @memberof Subscription + * @type {number} + * @memberof InstancePlatforms */ - 'steamItemId': string; + 'android': number; /** * * @type {number} - * @memberof Subscription + * @memberof InstancePlatforms */ - 'amount': number; + 'standalonewindows': number; +} +/** + * + * @export + * @interface InstanceShortNameResponse + */ +export interface InstanceShortNameResponse { /** * * @type {string} - * @memberof Subscription - */ - 'description': string; - /** - * - * @type {SubscriptionPeriod} - * @memberof Subscription + * @memberof InstanceShortNameResponse */ - 'period': SubscriptionPeriod; + 'secureName': string; /** * - * @type {number} - * @memberof Subscription + * @type {string} + * @memberof InstanceShortNameResponse */ - 'tier': number; + 'shortName'?: string; } /** * @@ -3053,199 +3165,179 @@ export interface Subscription { * @enum {string} */ -export const SubscriptionPeriod = { - Hour: 'hour', - Day: 'day', - Week: 'week', - Month: 'month', - Year: 'year' -} as const; - -export type SubscriptionPeriod = typeof SubscriptionPeriod[keyof typeof SubscriptionPeriod]; - +export enum InstanceType { + Public = 'public', + Hidden = 'hidden', + Friends = 'friends', + Private = 'private' +} /** * * @export - * @interface Success + * @interface InviteMessage */ -export interface Success { +export interface InviteMessage { /** * - * @type {Response} - * @memberof Success + * @type {boolean} + * @memberof InviteMessage */ - 'success'?: Response; -} -/** - * - * @export - * @interface Transaction - */ -export interface Transaction { + 'canBeUpdated': boolean; /** * * @type {string} - * @memberof Transaction + * @memberof InviteMessage */ 'id': string; - /** - * - * @type {TransactionStatus} - * @memberof Transaction - */ - 'status': TransactionStatus; - /** - * - * @type {Subscription} - * @memberof Transaction - */ - 'subscription': Subscription; - /** - * - * @type {boolean} - * @memberof Transaction - */ - 'sandbox': boolean; /** * * @type {string} - * @memberof Transaction + * @memberof InviteMessage */ - 'created_at': string; + 'message': string; /** * - * @type {string} - * @memberof Transaction + * @type {InviteMessageType} + * @memberof InviteMessage */ - 'updated_at': string; + 'messageType': InviteMessageType; /** - * - * @type {TransactionSteamInfo} - * @memberof Transaction + * Changes to 60 when updated, although probably server-side configurable. + * @type {number} + * @memberof InviteMessage */ - 'steam'?: TransactionSteamInfo; + 'remainingCooldownMinutes': number; /** * - * @type {TransactionAgreement} - * @memberof Transaction + * @type {number} + * @memberof InviteMessage */ - 'agreement'?: TransactionAgreement; + 'slot': number; /** * * @type {string} - * @memberof Transaction + * @memberof InviteMessage */ - 'error': string; + 'updatedAt': string; } /** * * @export - * @interface TransactionAgreement + * @enum {string} */ -export interface TransactionAgreement { + +export enum InviteMessageType { + Message = 'message', + Response = 'response', + Request = 'request', + RequestResponse = 'requestResponse' +} + +/** + * + * @export + * @interface InviteRequest + */ +export interface InviteRequest { /** - * + * InstanceID can be \"offline\" on User profiles if you are not friends with that user and \"private\" if you are friends and user is in private instance. * @type {string} - * @memberof TransactionAgreement + * @memberof InviteRequest */ - 'agreementId': string; + 'instanceId': string; /** * * @type {number} - * @memberof TransactionAgreement - */ - 'itemId': number; - /** - * This is NOT TransactionStatus, but whatever Steam return. - * @type {string} - * @memberof TransactionAgreement - */ - 'status': string; - /** - * - * @type {string} - * @memberof TransactionAgreement + * @memberof InviteRequest */ - 'period': string; + 'messageSlot'?: number; +} +/** + * + * @export + * @interface InviteResponse + */ +export interface InviteResponse { /** * * @type {number} - * @memberof TransactionAgreement + * @memberof InviteResponse */ - 'frequency': number; + 'responseSlot': number; +} +/** + * + * @export + * @interface License + */ +export interface License { /** - * + * Either a AvatarID, LicenseGroupID, PermissionID or ProductID. This depends on the `forType` field. * @type {string} - * @memberof TransactionAgreement + * @memberof License */ - 'billingType': string; + 'forId': string; /** * - * @type {string} - * @memberof TransactionAgreement + * @type {LicenseType} + * @memberof License */ - 'startDate': string; + 'forType': LicenseType; /** * * @type {string} - * @memberof TransactionAgreement - */ - 'endDate': string; - /** - * - * @type {number} - * @memberof TransactionAgreement + * @memberof License */ - 'recurringAmt': number; + 'forName': string; /** * - * @type {string} - * @memberof TransactionAgreement + * @type {LicenseAction} + * @memberof License */ - 'currency': string; + 'forAction': LicenseAction; +} +/** + * + * @export + * @enum {string} + */ + +export enum LicenseAction { + Wear = 'wear', + Have = 'have' +} + +/** + * + * @export + * @interface LicenseGroup + */ +export interface LicenseGroup { /** * * @type {string} - * @memberof TransactionAgreement + * @memberof LicenseGroup */ - 'timeCreated': string; + 'id': string; /** * * @type {string} - * @memberof TransactionAgreement + * @memberof LicenseGroup */ - 'nextPayment': string; + 'name': string; /** * * @type {string} - * @memberof TransactionAgreement - */ - 'lastPayment': string; - /** - * - * @type {number} - * @memberof TransactionAgreement - */ - 'lastAmount': number; - /** - * - * @type {number} - * @memberof TransactionAgreement - */ - 'lastAmountVat': number; - /** - * - * @type {number} - * @memberof TransactionAgreement + * @memberof LicenseGroup */ - 'outstanding': number; + 'description': string; /** * - * @type {number} - * @memberof TransactionAgreement + * @type {Array} + * @memberof LicenseGroup */ - 'failedAttempts': number; + 'licenses': Array; } /** * @@ -3253,1043 +3345,4672 @@ export interface TransactionAgreement { * @enum {string} */ -export const TransactionStatus = { - Active: 'active', - Failed: 'failed', - Expired: 'expired', - Chargeback: 'chargeback' -} as const; - -export type TransactionStatus = typeof TransactionStatus[keyof typeof TransactionStatus]; - +export enum LicenseType { + Avatar = 'avatar', + LicenseGroup = 'licenseGroup', + Permission = 'permission', + Product = 'product' +} /** * * @export - * @interface TransactionSteamInfo + * @interface LimitedUnityPackage */ -export interface TransactionSteamInfo { - /** - * - * @type {TransactionSteamWalletInfo} - * @memberof TransactionSteamInfo - */ - 'walletInfo': TransactionSteamWalletInfo; - /** - * Steam User ID - * @type {string} - * @memberof TransactionSteamInfo - */ - 'steamId': string; - /** - * Steam Order ID - * @type {string} - * @memberof TransactionSteamInfo - */ - 'orderId': string; +export interface LimitedUnityPackage { /** - * Empty + * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. * @type {string} - * @memberof TransactionSteamInfo + * @memberof LimitedUnityPackage */ - 'steamUrl': string; + 'platform': string; /** - * Steam Transaction ID, NOT the same as VRChat TransactionID + * * @type {string} - * @memberof TransactionSteamInfo + * @memberof LimitedUnityPackage */ - 'transId': string; + 'unityVersion': string; } /** * * @export - * @interface TransactionSteamWalletInfo + * @interface LimitedUser */ -export interface TransactionSteamWalletInfo { +export interface LimitedUser { /** * * @type {string} - * @memberof TransactionSteamWalletInfo + * @memberof LimitedUser */ - 'state': string; + 'bio'?: string; /** - * + * When profilePicOverride is not empty, use it instead. * @type {string} - * @memberof TransactionSteamWalletInfo + * @memberof LimitedUser */ - 'country': string; + 'currentAvatarImageUrl': string; /** - * + * When profilePicOverride is not empty, use it instead. * @type {string} - * @memberof TransactionSteamWalletInfo + * @memberof LimitedUser */ - 'currency': string; + 'currentAvatarThumbnailImageUrl': string; /** * - * @type {string} - * @memberof TransactionSteamWalletInfo + * @type {DeveloperType} + * @memberof LimitedUser */ - 'status': string; -} -/** - * - * @export - * @interface TwoFactorAuthCode - */ -export interface TwoFactorAuthCode { + 'developerType': DeveloperType; /** * * @type {string} - * @memberof TwoFactorAuthCode + * @memberof LimitedUser */ - 'code': string; -} -/** - * - * @export - * @interface UnityPackage - */ -export interface UnityPackage { + 'displayName': string; /** * * @type {string} - * @memberof UnityPackage + * @memberof LimitedUser */ - 'assetUrl'?: string; + 'fallbackAvatar': string; /** - * - * @type {object} - * @memberof UnityPackage + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof LimitedUser */ - 'assetUrlObject'?: object; + 'id': string; /** * - * @type {number} - * @memberof UnityPackage + * @type {boolean} + * @memberof LimitedUser */ - 'assetVersion': number; + 'isFriend': boolean; /** - * + * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. * @type {string} - * @memberof UnityPackage + * @memberof LimitedUser */ - 'created_at'?: string; + 'last_platform': string; /** * * @type {string} - * @memberof UnityPackage + * @memberof LimitedUser */ - 'id': string; + 'profilePicOverride': string; /** - * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. - * @type {string} - * @memberof UnityPackage + * + * @type {UserStatus} + * @memberof LimitedUser */ - 'platform': string; + 'status': UserStatus; /** * * @type {string} - * @memberof UnityPackage + * @memberof LimitedUser */ - 'pluginUrl'?: string; + 'statusDescription': string; + /** + * <- Always empty. + * @type {Array} + * @memberof LimitedUser + */ + 'tags': Array; /** * - * @type {object} - * @memberof UnityPackage + * @type {string} + * @memberof LimitedUser */ - 'pluginUrlObject'?: object; + 'userIcon': string; + /** + * -| **DEPRECATED:** VRChat API no longer return usernames of other users. [See issue by Tupper for more information](https://github.com/pypy-vrc/VRCX/issues/429). + * @type {string} + * @memberof LimitedUser + * @deprecated + */ + 'username'?: string; /** * - * @type {number} - * @memberof UnityPackage + * @type {string} + * @memberof LimitedUser */ - 'unitySortNumber'?: number; + 'location'?: string; /** * * @type {string} - * @memberof UnityPackage + * @memberof LimitedUser */ - 'unityVersion': string; + 'friendKey'?: string; } /** * * @export - * @interface UpdateAvatarRequest + * @interface LimitedWorld */ -export interface UpdateAvatarRequest { +export interface LimitedWorld { /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof UpdateAvatarRequest + * @memberof LimitedWorld */ - 'assetUrl'?: string; + 'authorId': string; /** * * @type {string} - * @memberof UpdateAvatarRequest + * @memberof LimitedWorld */ - 'id'?: string; + 'authorName': string; /** * - * @type {string} - * @memberof UpdateAvatarRequest + * @type {number} + * @memberof LimitedWorld */ - 'name'?: string; + 'capacity': number; /** * * @type {string} - * @memberof UpdateAvatarRequest - */ - 'description'?: string; - /** - * - * @type {Array} - * @memberof UpdateAvatarRequest + * @memberof LimitedWorld */ - 'tags'?: Array; + 'created_at': string; /** * - * @type {string} - * @memberof UpdateAvatarRequest + * @type {number} + * @memberof LimitedWorld */ - 'imageUrl'?: string; + 'favorites': number; /** * - * @type {ReleaseStatus} - * @memberof UpdateAvatarRequest + * @type {number} + * @memberof LimitedWorld */ - 'releaseStatus'?: ReleaseStatus; + 'heat': number; /** - * - * @type {number} - * @memberof UpdateAvatarRequest + * WorldID be \"offline\" on User profiles if you are not friends with that user. + * @type {string} + * @memberof LimitedWorld */ - 'version'?: number; + 'id': string; /** * * @type {string} - * @memberof UpdateAvatarRequest + * @memberof LimitedWorld */ - 'unityPackageUrl'?: string; -} -/** - * - * @export - * @interface UpdateFavoriteGroupRequest - */ -export interface UpdateFavoriteGroupRequest { + 'imageUrl': string; /** * * @type {string} - * @memberof UpdateFavoriteGroupRequest + * @memberof LimitedWorld */ - 'displayName'?: string; + 'labsPublicationDate': string; /** * - * @type {FavoriteGroupVisibility} - * @memberof UpdateFavoriteGroupRequest + * @type {string} + * @memberof LimitedWorld */ - 'visibility'?: FavoriteGroupVisibility; + 'name': string; /** - * Tags on FavoriteGroups are believed to do nothing. - * @type {Array} - * @memberof UpdateFavoriteGroupRequest + * + * @type {number} + * @memberof LimitedWorld */ - 'tags'?: Array; -} -/** - * - * @export - * @interface UpdateInviteMessageRequest - */ -export interface UpdateInviteMessageRequest { + 'occupants': number; /** * * @type {string} - * @memberof UpdateInviteMessageRequest + * @memberof LimitedWorld */ - 'message': string; -} -/** - * - * @export - * @interface UpdateUserRequest - */ -export interface UpdateUserRequest { + 'organization': string; /** * - * @type {string} - * @memberof UpdateUserRequest + * @type {number} + * @memberof LimitedWorld */ - 'email'?: string; + 'popularity': number; /** * * @type {string} - * @memberof UpdateUserRequest + * @memberof LimitedWorld */ - 'birthday'?: string; + 'publicationDate': string; /** * - * @type {number} - * @memberof UpdateUserRequest + * @type {ReleaseStatus} + * @memberof LimitedWorld */ - 'acceptedTOSVersion'?: number; + 'releaseStatus': ReleaseStatus; /** - * + * * @type {Array} - * @memberof UpdateUserRequest + * @memberof LimitedWorld */ - 'tags'?: Array; + 'tags': Array; /** * - * @type {UserStatus} - * @memberof UpdateUserRequest + * @type {string} + * @memberof LimitedWorld */ - 'status'?: UserStatus; + 'thumbnailImageUrl': string; /** * - * @type {string} - * @memberof UpdateUserRequest + * @type {Array} + * @memberof LimitedWorld */ - 'statusDescription'?: string; + 'unityPackages': Array; /** * * @type {string} - * @memberof UpdateUserRequest + * @memberof LimitedWorld */ - 'bio'?: string; + 'updated_at': string; +} +/** + * + * @export + * @enum {string} + */ + +export enum MIMEType { + ImageJpeg = 'image/jpeg', + ImageJpg = 'image/jpg', + ImagePng = 'image/png', + ImageWebp = 'image/webp', + ImageGif = 'image/gif', + ImageBmp = 'image/bmp', + ImageSvgxml = 'image/svg+xml', + ImageTiff = 'image/tiff', + ApplicationXAvatar = 'application/x-avatar', + ApplicationXWorld = 'application/x-world', + ApplicationGzip = 'application/gzip', + ApplicationXRsyncSignature = 'application/x-rsync-signature', + ApplicationXRsyncDelta = 'application/x-rsync-delta', + ApplicationOctetStream = 'application/octet-stream' +} + +/** + * + * @export + * @interface ModelError + */ +export interface ModelError { /** * - * @type {Array} - * @memberof UpdateUserRequest - */ - 'bioLinks'?: Array; - /** - * MUST be a valid VRChat /file/ url. - * @type {string} - * @memberof UpdateUserRequest + * @type {Response} + * @memberof ModelError */ - 'userIcon'?: string; + 'error'?: Response; } /** * * @export - * @interface UpdateWorldRequest + * @interface ModelFile */ -export interface UpdateWorldRequest { +export interface ModelFile { /** * * @type {string} - * @memberof UpdateWorldRequest + * @memberof ModelFile */ - 'assetUrl'?: string; + 'extension': string; /** * * @type {string} - * @memberof UpdateWorldRequest + * @memberof ModelFile */ - 'assetVersion'?: string; - /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. - * @type {string} - * @memberof UpdateWorldRequest - */ - 'authorId'?: string; - /** - * - * @type {string} - * @memberof UpdateWorldRequest - */ - 'authorName'?: string; + 'id': string; /** * - * @type {number} - * @memberof UpdateWorldRequest + * @type {MIMEType} + * @memberof ModelFile */ - 'capacity'?: number; + 'mimeType': MIMEType; /** * * @type {string} - * @memberof UpdateWorldRequest + * @memberof ModelFile */ - 'description'?: string; + 'name': string; /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof UpdateWorldRequest + * @memberof ModelFile */ - 'imageUrl'?: string; + 'ownerId': string; /** * - * @type {string} - * @memberof UpdateWorldRequest - */ - 'name'?: string; - /** - * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. - * @type {string} - * @memberof UpdateWorldRequest + * @type {Array} + * @memberof ModelFile */ - 'platform'?: string; + 'tags': Array; /** * - * @type {ReleaseStatus} - * @memberof UpdateWorldRequest - */ - 'releaseStatus'?: ReleaseStatus; - /** - * - * @type {Array} - * @memberof UpdateWorldRequest + * @type {Set} + * @memberof ModelFile */ - 'tags'?: Array; + 'versions': Set; +} +/** + * + * @export + * @interface ModerateUserRequest + */ +export interface ModerateUserRequest { /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof UpdateWorldRequest + * @memberof ModerateUserRequest */ - 'unityPackageUrl'?: string; + 'moderated': string; /** * - * @type {string} - * @memberof UpdateWorldRequest + * @type {PlayerModerationType} + * @memberof ModerateUserRequest */ - 'unityVersion'?: string; + 'type': PlayerModerationType; } /** * * @export - * @interface User + * @interface Notification */ -export interface User { - /** - * - * @type {boolean} - * @memberof User - */ - 'allowAvatarCopying': boolean; +export interface Notification { /** * * @type {string} - * @memberof User - */ - 'bio': string; - /** - * - * @type {Array} - * @memberof User + * @memberof Notification */ - 'bioLinks': Array; + 'created_at': string; /** - * When profilePicOverride is not empty, use it instead. + * **NOTICE:** This is not a JSON object when received from the REST API, but it is when received from the Websocket API. When received from the REST API, this is a json **encoded** object, meaning you have to json-de-encode to get the NotificationDetail object depending on the NotificationType. * @type {string} - * @memberof User + * @memberof Notification */ - 'currentAvatarImageUrl': string; + 'details': string; /** - * When profilePicOverride is not empty, use it instead. + * * @type {string} - * @memberof User + * @memberof Notification */ - 'currentAvatarThumbnailImageUrl': string; + 'id': string; /** * * @type {string} - * @memberof User + * @memberof Notification */ - 'date_joined': string; + 'message': string; /** - * - * @type {DeveloperType} - * @memberof User + * Not included in notification objects received from the Websocket API + * @type {boolean} + * @memberof Notification */ - 'developerType': DeveloperType; + 'seen'?: boolean; /** - * A users visual display name. This is what shows up in-game, and can different from their `username`. Changing display name is restricted to a cooldown period. + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof User + * @memberof Notification */ - 'displayName': string; + 'receiverUserId'?: string; /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof User + * @memberof Notification */ - 'friendKey': string; + 'senderUserId': string; /** - * + * -| **DEPRECATED:** VRChat API no longer return usernames of other users. [See issue by Tupper for more information](https://github.com/pypy-vrc/VRCX/issues/429). * @type {string} - * @memberof User + * @memberof Notification + * @deprecated */ - 'friendRequestStatus'?: string; + 'senderUsername'?: string; /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. - * @type {string} - * @memberof User + * + * @type {NotificationType} + * @memberof Notification */ - 'id': string; + 'type': NotificationType; +} +/** + * + * @export + * @enum {string} + */ + +export enum NotificationType { + FriendRequest = 'friendRequest', + Invite = 'invite', + InviteResponse = 'inviteResponse', + RequestInvite = 'requestInvite', + RequestInviteResponse = 'requestInviteResponse', + Votetokick = 'votetokick' +} + +/** + * + * @export + * @enum {string} + */ + +export enum OrderOption { + Ascending = 'ascending', + Descending = 'descending' +} + +/** + * + * @export + * @interface PaginatedGroupAuditLogEntryList + */ +export interface PaginatedGroupAuditLogEntryList { /** - * InstanceID can be \"offline\" on User profiles if you are not friends with that user and \"private\" if you are friends and user is in private instance. - * @type {string} - * @memberof User + * + * @type {Array} + * @memberof PaginatedGroupAuditLogEntryList */ - 'instanceId'?: string; + 'results'?: Array; /** - * Either their `friendKey`, or empty string if you are not friends. Unknown usage. - * @type {boolean} - * @memberof User + * The total number of results that the query would return if there were no pagination. + * @type {number} + * @memberof PaginatedGroupAuditLogEntryList */ - 'isFriend': boolean; + 'totalCount'?: number; /** - * Either a date-time or empty string. - * @type {string} - * @memberof User + * Whether there are more results after this page. + * @type {boolean} + * @memberof PaginatedGroupAuditLogEntryList */ - 'last_activity': string; + 'hasNext'?: boolean; +} +/** + * + * @export + * @interface PastDisplayName + */ +export interface PastDisplayName { /** - * Either a date-time or empty string. + * * @type {string} - * @memberof User + * @memberof PastDisplayName */ - 'last_login': string; + 'displayName': string; /** - * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. + * * @type {string} - * @memberof User + * @memberof PastDisplayName */ - 'last_platform': string; + 'updated_at': string; +} +/** + * + * @export + * @interface Permission + */ +export interface Permission { /** - * WorldID be \"offline\" on User profiles if you are not friends with that user. + * * @type {string} - * @memberof User + * @memberof Permission */ - 'location'?: string; + 'id': string; /** * * @type {string} - * @memberof User + * @memberof Permission */ - 'note'?: string; + 'name': string; /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof User + * @memberof Permission */ - 'profilePicOverride': string; + 'ownerId': string; /** * - * @type {UserState} - * @memberof User + * @type {object} + * @memberof Permission */ - 'state': UserState; + 'data'?: object; +} +/** + * + * @export + * @interface PlayerModeration + */ +export interface PlayerModeration { /** * - * @type {UserStatus} - * @memberof User + * @type {string} + * @memberof PlayerModeration */ - 'status': UserStatus; + 'created': string; /** * * @type {string} - * @memberof User - */ - 'statusDescription': string; - /** - * - * @type {Array} - * @memberof User + * @memberof PlayerModeration */ - 'tags': Array; + 'id': string; /** * * @type {string} - * @memberof User + * @memberof PlayerModeration */ - 'travelingToInstance'?: string; + 'sourceDisplayName': string; /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof User + * @memberof PlayerModeration */ - 'travelingToLocation'?: string; + 'sourceUserId': string; /** * * @type {string} - * @memberof User - */ - 'travelingToWorld'?: string; - /** - * - * @type {string} - * @memberof User + * @memberof PlayerModeration */ - 'userIcon': string; + 'targetDisplayName': string; /** - * -| A users unique name, used during login. This is different from `displayName` which is what shows up in-game. A users `username` can never be changed.\' **DEPRECATED:** VRChat API no longer return usernames of other users. [See issue by Tupper for more information](https://github.com/pypy-vrc/VRCX/issues/429). + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof User - * @deprecated + * @memberof PlayerModeration */ - 'username'?: string; + 'targetUserId': string; /** - * WorldID be \"offline\" on User profiles if you are not friends with that user. - * @type {string} - * @memberof User + * + * @type {PlayerModerationType} + * @memberof PlayerModeration */ - 'worldId'?: string; + 'type': PlayerModerationType; } /** - * Status object representing if a queried user by username or userId exists or not. This model is primarily used by the `/auth/exists` endpoint, which in turn is used during registration. Please see the documentation on that endpoint for more information on usage. + * * @export - * @interface UserExists + * @enum {string} */ -export interface UserExists { - /** - * Status if a user exist with that username or userId. - * @type {boolean} - * @memberof UserExists - */ - 'userExists': boolean; + +export enum PlayerModerationType { + Mute = 'mute', + Unmute = 'unmute', + Block = 'block', + Unblock = 'unblock', + InteractOn = 'interactOn', + InteractOff = 'interactOff' } + /** - * * \"online\" User is online in VRChat * \"active\" User is online, but not in VRChat * \"offline\" User is offline Always offline when returned through `getCurrentUser` (/auth/user). + * API/Photon region. * @export * @enum {string} */ -export const UserState = { - Offline: 'offline', - Active: 'active', - Online: 'online' -} as const; - -export type UserState = typeof UserState[keyof typeof UserState]; - +export enum Region { + Us = 'us', + Use = 'use', + Usw = 'usw', + Eu = 'eu', + Jp = 'jp', + Unknown = 'unknown' +} /** - * Defines the User\'s current status, for example \"ask me\", \"join me\" or \"offline. This status is a combined indicator of their online activity and privacy preference. + * * @export * @enum {string} */ -export const UserStatus = { - Active: 'active', - JoinMe: 'join me', - AskMe: 'ask me', - Busy: 'busy', - Offline: 'offline' -} as const; - -export type UserStatus = typeof UserStatus[keyof typeof UserStatus]; - +export enum ReleaseStatus { + Public = 'public', + Private = 'private', + Hidden = 'hidden' +} /** * * @export - * @interface UserSubscription + * @interface RequestInviteRequest */ -export interface UserSubscription { +export interface RequestInviteRequest { /** * - * @type {string} - * @memberof UserSubscription + * @type {number} + * @memberof RequestInviteRequest */ - 'id': string; + 'messageSlot'?: number; +} +/** + * + * @export + * @interface RespondGroupJoinRequest + */ +export interface RespondGroupJoinRequest { /** * * @type {string} - * @memberof UserSubscription - */ - 'transactionId': string; - /** - * Which \"Store\" it came from. Right now only Stores are \"Steam\" and \"Admin\". - * @type {string} - * @memberof UserSubscription + * @memberof RespondGroupJoinRequest */ - 'store': string; + 'action'?: string; +} +/** + * + * @export + * @interface Response + */ +export interface Response { /** * * @type {string} - * @memberof UserSubscription + * @memberof Response */ - 'steamItemId'?: string; + 'message'?: string; /** * * @type {number} - * @memberof UserSubscription + * @memberof Response */ - 'amount': number; + 'status_code': number; +} +/** + * + * @export + * @interface SentNotification + */ +export interface SentNotification { /** * * @type {string} - * @memberof UserSubscription + * @memberof SentNotification */ - 'description': string; + 'created_at': string; /** - * - * @type {SubscriptionPeriod} - * @memberof UserSubscription + * **NOTICE:** This is not a JSON object, this is a json **encoded** object, meaning you have to json-de-encode to get the NotificationDetail object depending on the NotificationType. + * @type {string} + * @memberof SentNotification */ - 'period': SubscriptionPeriod; + 'details': string; /** * - * @type {number} - * @memberof UserSubscription + * @type {string} + * @memberof SentNotification */ - 'tier': number; + 'id': string; /** * - * @type {boolean} - * @memberof UserSubscription + * @type {string} + * @memberof SentNotification */ - 'active': boolean; + 'message': string; + /** + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof SentNotification + */ + 'recieverUserId': string; + /** + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof SentNotification + */ + 'senderUserId': string; + /** + * -| **DEPRECATED:** VRChat API no longer return usernames of other users. [See issue by Tupper for more information](https://github.com/pypy-vrc/VRCX/issues/429). + * @type {string} + * @memberof SentNotification + * @deprecated + */ + 'senderUsername'?: string; /** * - * @type {TransactionStatus} - * @memberof UserSubscription + * @type {NotificationType} + * @memberof SentNotification */ - 'status': TransactionStatus; + 'type': NotificationType; +} +/** + * + * @export + * @enum {string} + */ + +export enum SortOption { + Popularity = 'popularity', + Heat = 'heat', + Trust = 'trust', + Shuffle = 'shuffle', + Random = 'random', + Favorites = 'favorites', + ReportScore = 'reportScore', + ReportCount = 'reportCount', + PublicationDate = 'publicationDate', + LabsPublicationDate = 'labsPublicationDate', + Created = 'created', + CreatedAt = '_created_at', + Updated = 'updated', + UpdatedAt = '_updated_at', + Order = 'order', + Relevance = 'relevance', + Magic = 'magic', + Name = 'name' +} + +/** + * + * @export + * @interface Subscription + */ +export interface Subscription { /** * * @type {string} - * @memberof UserSubscription + * @memberof Subscription */ - 'expires': string; + 'id': string; /** * * @type {string} - * @memberof UserSubscription + * @memberof Subscription */ - 'created_at': string; + 'steamItemId': string; + /** + * + * @type {number} + * @memberof Subscription + */ + 'amount': number; /** * * @type {string} - * @memberof UserSubscription + * @memberof Subscription */ - 'updated_at': string; + 'description': string; /** * - * @type {Array} - * @memberof UserSubscription + * @type {SubscriptionPeriod} + * @memberof Subscription */ - 'licenseGroups': Array; + 'period': SubscriptionPeriod; /** * - * @type {boolean} - * @memberof UserSubscription + * @type {number} + * @memberof Subscription */ - 'isGift': boolean; + 'tier': number; } /** * * @export - * @interface Verify2FAResult + * @enum {string} */ -export interface Verify2FAResult { - /** - * - * @type {boolean} - * @memberof Verify2FAResult - */ - 'verified': boolean; + +export enum SubscriptionPeriod { + Hour = 'hour', + Day = 'day', + Week = 'week', + Month = 'month', + Year = 'year' } + /** * * @export - * @interface VerifyAuthTokenResult + * @interface Success */ -export interface VerifyAuthTokenResult { - /** - * - * @type {boolean} - * @memberof VerifyAuthTokenResult - */ - 'ok': boolean; +export interface Success { /** * - * @type {string} - * @memberof VerifyAuthTokenResult + * @type {Response} + * @memberof Success */ - 'token': string; + 'success'?: Response; } /** * * @export - * @interface World + * @interface Transaction */ -export interface World { +export interface Transaction { /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * * @type {string} - * @memberof World + * @memberof Transaction */ - 'authorId': string; + 'id': string; /** * - * @type {string} - * @memberof World + * @type {TransactionStatus} + * @memberof Transaction */ - 'authorName': string; + 'status': TransactionStatus; /** * - * @type {number} - * @memberof World + * @type {Subscription} + * @memberof Transaction */ - 'capacity': number; + 'subscription': Subscription; + /** + * + * @type {boolean} + * @memberof Transaction + */ + 'sandbox': boolean; /** * * @type {string} - * @memberof World + * @memberof Transaction */ 'created_at': string; /** * * @type {string} - * @memberof World + * @memberof Transaction */ - 'description': string; + 'updated_at': string; /** * - * @type {number} - * @memberof World + * @type {TransactionSteamInfo} + * @memberof Transaction */ - 'favorites'?: number; + 'steam'?: TransactionSteamInfo; /** * - * @type {boolean} - * @memberof World - */ - 'featured': boolean; + * @type {TransactionAgreement} + * @memberof Transaction + */ + 'agreement'?: TransactionAgreement; + /** + * + * @type {string} + * @memberof Transaction + */ + 'error': string; +} +/** + * + * @export + * @interface TransactionAgreement + */ +export interface TransactionAgreement { + /** + * + * @type {string} + * @memberof TransactionAgreement + */ + 'agreementId': string; /** * * @type {number} - * @memberof World + * @memberof TransactionAgreement */ - 'heat': number; + 'itemId': number; /** - * WorldID be \"offline\" on User profiles if you are not friends with that user. + * This is NOT TransactionStatus, but whatever Steam return. * @type {string} - * @memberof World + * @memberof TransactionAgreement */ - 'id': string; + 'status': string; /** * * @type {string} - * @memberof World + * @memberof TransactionAgreement */ - 'imageUrl': string; + 'period': string; /** - * Will always be an empty list when unauthenticated. - * @type {Array>} - * @memberof World + * + * @type {number} + * @memberof TransactionAgreement */ - 'instances'?: Array>; + 'frequency': number; /** * * @type {string} - * @memberof World + * @memberof TransactionAgreement */ - 'labsPublicationDate': string; + 'billingType': string; /** * * @type {string} - * @memberof World + * @memberof TransactionAgreement */ - 'name': string; + 'startDate': string; /** * * @type {string} - * @memberof World + * @memberof TransactionAgreement */ - 'namespace': string; + 'endDate': string; /** - * Will always be `0` when unauthenticated. + * * @type {number} - * @memberof World + * @memberof TransactionAgreement */ - 'occupants'?: number; + 'recurringAmt': number; /** * * @type {string} - * @memberof World + * @memberof TransactionAgreement */ - 'organization': string; + 'currency': string; /** * - * @type {number} - * @memberof World + * @type {string} + * @memberof TransactionAgreement */ - 'popularity': number; + 'timeCreated': string; /** * * @type {string} - * @memberof World + * @memberof TransactionAgreement */ - 'previewYoutubeId'?: string | null; + 'nextPayment': string; /** - * Will always be `0` when unauthenticated. - * @type {number} - * @memberof World + * + * @type {string} + * @memberof TransactionAgreement */ - 'privateOccupants'?: number; + 'lastPayment': string; /** - * Will always be `0` when unauthenticated. + * * @type {number} - * @memberof World + * @memberof TransactionAgreement */ - 'publicOccupants'?: number; + 'lastAmount': number; /** * - * @type {string} - * @memberof World + * @type {number} + * @memberof TransactionAgreement */ - 'publicationDate': string; + 'lastAmountVat': number; /** * - * @type {ReleaseStatus} - * @memberof World + * @type {number} + * @memberof TransactionAgreement */ - 'releaseStatus': ReleaseStatus; + 'outstanding': number; /** - * - * @type {Array} - * @memberof World + * + * @type {number} + * @memberof TransactionAgreement */ - 'tags': Array; + 'failedAttempts': number; +} +/** + * + * @export + * @enum {string} + */ + +export enum TransactionStatus { + Active = 'active', + Failed = 'failed', + Expired = 'expired', + Chargeback = 'chargeback' +} + +/** + * + * @export + * @interface TransactionSteamInfo + */ +export interface TransactionSteamInfo { /** * - * @type {string} - * @memberof World + * @type {TransactionSteamWalletInfo} + * @memberof TransactionSteamInfo */ - 'thumbnailImageUrl': string; + 'walletInfo': TransactionSteamWalletInfo; /** - * Empty if unauthenticated. - * @type {Array} - * @memberof World + * Steam User ID + * @type {string} + * @memberof TransactionSteamInfo */ - 'unityPackages': Array; + 'steamId': string; /** - * + * Steam Order ID * @type {string} - * @memberof World + * @memberof TransactionSteamInfo */ - 'updated_at': string; + 'orderId': string; /** - * - * @type {number} - * @memberof World + * Empty + * @type {string} + * @memberof TransactionSteamInfo */ - 'version': number; + 'steamUrl': string; /** - * - * @type {number} - * @memberof World + * Steam Transaction ID, NOT the same as VRChat TransactionID + * @type {string} + * @memberof TransactionSteamInfo */ - 'visits': number; + 'transId': string; } /** * * @export - * @interface WorldMetadata + * @interface TransactionSteamWalletInfo */ -export interface WorldMetadata { +export interface TransactionSteamWalletInfo { /** - * WorldID be \"offline\" on User profiles if you are not friends with that user. + * * @type {string} - * @memberof WorldMetadata + * @memberof TransactionSteamWalletInfo */ - 'id': string; + 'state': string; /** * - * @type {object} - * @memberof WorldMetadata + * @type {string} + * @memberof TransactionSteamWalletInfo */ - 'metadata': object; + 'country': string; + /** + * + * @type {string} + * @memberof TransactionSteamWalletInfo + */ + 'currency': string; + /** + * + * @type {string} + * @memberof TransactionSteamWalletInfo + */ + 'status': string; } /** * * @export - * @interface WorldPublishStatus + * @interface TwoFactorAuthCode */ -export interface WorldPublishStatus { +export interface TwoFactorAuthCode { /** * - * @type {boolean} - * @memberof WorldPublishStatus + * @type {string} + * @memberof TwoFactorAuthCode */ - 'canPubilsh': boolean; + 'code': string; } - /** - * AuthenticationApi - axios parameter creator + * * @export + * @interface UnityPackage */ -export const AuthenticationApiAxiosParamCreator = function (configuration?: Configuration) { - return { - /** - * Checks if a user by a given `username`, `displayName` or `email` exist. This is used during registration to check if a username has already been taken, during change of displayName to check if a displayName is available, and during change of email to check if the email is already used. In the later two cases the `excludeUserId` is used to exclude oneself, otherwise the result would always be true. It is **REQUIRED** to include **AT LEAST** `username`, `displayName` **or** `email` query parameter. Although they can be combined - in addition with `excludeUserId` (generally to exclude yourself) - to further fine-tune the search. - * @summary Check User Exists - * @param {string} [email] Filter by email. - * @param {string} [displayName] Filter by displayName. - * @param {string} [userId] Filter by UserID. - * @param {string} [excludeUserId] Exclude by UserID. - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - checkUserExists: async (email?: string, displayName?: string, userId?: string, excludeUserId?: string, options: AxiosRequestConfig = {}): Promise => { - const localVarPath = `/auth/exists`; - // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); - let baseOptions; - if (configuration) { - baseOptions = configuration.baseOptions; - } - - const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; - const localVarHeaderParameter = {} as any; - const localVarQueryParameter = {} as any; - - // authentication apiKeyCookie required - - if (email !== undefined) { - localVarQueryParameter['email'] = email; - } - - if (displayName !== undefined) { - localVarQueryParameter['displayName'] = displayName; - } - - if (userId !== undefined) { - localVarQueryParameter['userId'] = userId; - } - - if (excludeUserId !== undefined) { - localVarQueryParameter['excludeUserId'] = excludeUserId; - } - - - - setSearchParams(localVarUrlObj, localVarQueryParameter); - let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; - localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - - return { - url: toPathString(localVarUrlObj), - options: localVarRequestOptions, +export interface UnityPackage { + /** + * + * @type {string} + * @memberof UnityPackage + */ + 'assetUrl'?: string; + /** + * + * @type {object} + * @memberof UnityPackage + */ + 'assetUrlObject'?: object; + /** + * + * @type {number} + * @memberof UnityPackage + */ + 'assetVersion': number; + /** + * + * @type {string} + * @memberof UnityPackage + */ + 'created_at'?: string; + /** + * + * @type {string} + * @memberof UnityPackage + */ + 'id': string; + /** + * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. + * @type {string} + * @memberof UnityPackage + */ + 'platform': string; + /** + * + * @type {string} + * @memberof UnityPackage + */ + 'pluginUrl'?: string; + /** + * + * @type {object} + * @memberof UnityPackage + */ + 'pluginUrlObject'?: object; + /** + * + * @type {number} + * @memberof UnityPackage + */ + 'unitySortNumber'?: number; + /** + * + * @type {string} + * @memberof UnityPackage + */ + 'unityVersion': string; +} +/** + * + * @export + * @interface UpdateAvatarRequest + */ +export interface UpdateAvatarRequest { + /** + * + * @type {string} + * @memberof UpdateAvatarRequest + */ + 'assetUrl'?: string; + /** + * + * @type {string} + * @memberof UpdateAvatarRequest + */ + 'id'?: string; + /** + * + * @type {string} + * @memberof UpdateAvatarRequest + */ + 'name'?: string; + /** + * + * @type {string} + * @memberof UpdateAvatarRequest + */ + 'description'?: string; + /** + * + * @type {Array} + * @memberof UpdateAvatarRequest + */ + 'tags'?: Array; + /** + * + * @type {string} + * @memberof UpdateAvatarRequest + */ + 'imageUrl'?: string; + /** + * + * @type {ReleaseStatus} + * @memberof UpdateAvatarRequest + */ + 'releaseStatus'?: ReleaseStatus; + /** + * + * @type {number} + * @memberof UpdateAvatarRequest + */ + 'version'?: number; + /** + * + * @type {string} + * @memberof UpdateAvatarRequest + */ + 'unityPackageUrl'?: string; +} +/** + * + * @export + * @interface UpdateFavoriteGroupRequest + */ +export interface UpdateFavoriteGroupRequest { + /** + * + * @type {string} + * @memberof UpdateFavoriteGroupRequest + */ + 'displayName'?: string; + /** + * + * @type {FavoriteGroupVisibility} + * @memberof UpdateFavoriteGroupRequest + */ + 'visibility'?: FavoriteGroupVisibility; + /** + * Tags on FavoriteGroups are believed to do nothing. + * @type {Array} + * @memberof UpdateFavoriteGroupRequest + */ + 'tags'?: Array; +} +/** + * + * @export + * @interface UpdateGroupGalleryRequest + */ +export interface UpdateGroupGalleryRequest { + /** + * Name of the gallery. + * @type {string} + * @memberof UpdateGroupGalleryRequest + */ + 'name'?: string; + /** + * Description of the gallery. + * @type {string} + * @memberof UpdateGroupGalleryRequest + */ + 'description'?: string; + /** + * Whether the gallery is members only. + * @type {boolean} + * @memberof UpdateGroupGalleryRequest + */ + 'membersOnly'?: boolean; + /** + * + * @type {Array} + * @memberof UpdateGroupGalleryRequest + */ + 'roleIdsToView'?: Array | null; + /** + * + * @type {Array} + * @memberof UpdateGroupGalleryRequest + */ + 'roleIdsToSubmit'?: Array | null; + /** + * + * @type {Array} + * @memberof UpdateGroupGalleryRequest + */ + 'roleIdsToAutoApprove'?: Array | null; + /** + * + * @type {Array} + * @memberof UpdateGroupGalleryRequest + */ + 'roleIdsToManage'?: Array | null; +} +/** + * + * @export + * @interface UpdateGroupMemberRequest + */ +export interface UpdateGroupMemberRequest { + /** + * + * @type {GroupUserVisibility} + * @memberof UpdateGroupMemberRequest + */ + 'visibility'?: GroupUserVisibility; + /** + * + * @type {boolean} + * @memberof UpdateGroupMemberRequest + */ + 'isSubscribedToAnnouncements'?: boolean; + /** + * + * @type {string} + * @memberof UpdateGroupMemberRequest + */ + 'managerNotes'?: string; +} +/** + * + * @export + * @interface UpdateGroupRequest + */ +export interface UpdateGroupRequest { + /** + * + * @type {string} + * @memberof UpdateGroupRequest + */ + 'name'?: string; + /** + * + * @type {string} + * @memberof UpdateGroupRequest + */ + 'shortCode'?: string; + /** + * + * @type {string} + * @memberof UpdateGroupRequest + */ + 'description'?: string; + /** + * + * @type {GroupJoinState} + * @memberof UpdateGroupRequest + */ + 'joinState'?: GroupJoinState; + /** + * + * @type {string} + * @memberof UpdateGroupRequest + */ + 'iconId'?: string | null; + /** + * + * @type {string} + * @memberof UpdateGroupRequest + */ + 'bannerId'?: string | null; + /** + * 3 letter language code + * @type {Array} + * @memberof UpdateGroupRequest + */ + 'languages'?: Array; + /** + * + * @type {Array} + * @memberof UpdateGroupRequest + */ + 'links'?: Array; + /** + * + * @type {string} + * @memberof UpdateGroupRequest + */ + 'rules'?: string; + /** + * + * @type {Array} + * @memberof UpdateGroupRequest + */ + 'tags'?: Array; +} +/** + * + * @export + * @interface UpdateGroupRoleRequest + */ +export interface UpdateGroupRoleRequest { + /** + * + * @type {string} + * @memberof UpdateGroupRoleRequest + */ + 'name'?: string; + /** + * + * @type {string} + * @memberof UpdateGroupRoleRequest + */ + 'description'?: string; + /** + * + * @type {boolean} + * @memberof UpdateGroupRoleRequest + */ + 'isSelfAssignable'?: boolean; + /** + * + * @type {Array} + * @memberof UpdateGroupRoleRequest + */ + 'permissions'?: Array; + /** + * + * @type {number} + * @memberof UpdateGroupRoleRequest + */ + 'order'?: number; +} +/** + * + * @export + * @interface UpdateInviteMessageRequest + */ +export interface UpdateInviteMessageRequest { + /** + * + * @type {string} + * @memberof UpdateInviteMessageRequest + */ + 'message': string; +} +/** + * + * @export + * @interface UpdateUserRequest + */ +export interface UpdateUserRequest { + /** + * + * @type {string} + * @memberof UpdateUserRequest + */ + 'email'?: string; + /** + * + * @type {string} + * @memberof UpdateUserRequest + */ + 'birthday'?: string; + /** + * + * @type {number} + * @memberof UpdateUserRequest + */ + 'acceptedTOSVersion'?: number; + /** + * + * @type {Array} + * @memberof UpdateUserRequest + */ + 'tags'?: Array; + /** + * + * @type {UserStatus} + * @memberof UpdateUserRequest + */ + 'status'?: UserStatus; + /** + * + * @type {string} + * @memberof UpdateUserRequest + */ + 'statusDescription'?: string; + /** + * + * @type {string} + * @memberof UpdateUserRequest + */ + 'bio'?: string; + /** + * + * @type {Array} + * @memberof UpdateUserRequest + */ + 'bioLinks'?: Array; + /** + * MUST be a valid VRChat /file/ url. + * @type {string} + * @memberof UpdateUserRequest + */ + 'userIcon'?: string; +} +/** + * + * @export + * @interface UpdateWorldRequest + */ +export interface UpdateWorldRequest { + /** + * + * @type {string} + * @memberof UpdateWorldRequest + */ + 'assetUrl'?: string; + /** + * + * @type {string} + * @memberof UpdateWorldRequest + */ + 'assetVersion'?: string; + /** + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof UpdateWorldRequest + */ + 'authorId'?: string; + /** + * + * @type {string} + * @memberof UpdateWorldRequest + */ + 'authorName'?: string; + /** + * + * @type {number} + * @memberof UpdateWorldRequest + */ + 'capacity'?: number; + /** + * + * @type {string} + * @memberof UpdateWorldRequest + */ + 'description'?: string; + /** + * + * @type {string} + * @memberof UpdateWorldRequest + */ + 'imageUrl'?: string; + /** + * + * @type {string} + * @memberof UpdateWorldRequest + */ + 'name'?: string; + /** + * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. + * @type {string} + * @memberof UpdateWorldRequest + */ + 'platform'?: string; + /** + * + * @type {ReleaseStatus} + * @memberof UpdateWorldRequest + */ + 'releaseStatus'?: ReleaseStatus; + /** + * + * @type {Array} + * @memberof UpdateWorldRequest + */ + 'tags'?: Array; + /** + * + * @type {string} + * @memberof UpdateWorldRequest + */ + 'unityPackageUrl'?: string; + /** + * + * @type {string} + * @memberof UpdateWorldRequest + */ + 'unityVersion'?: string; +} +/** + * + * @export + * @interface User + */ +export interface User { + /** + * + * @type {boolean} + * @memberof User + */ + 'allowAvatarCopying': boolean; + /** + * + * @type {string} + * @memberof User + */ + 'bio': string; + /** + * + * @type {Array} + * @memberof User + */ + 'bioLinks': Array; + /** + * When profilePicOverride is not empty, use it instead. + * @type {string} + * @memberof User + */ + 'currentAvatarImageUrl': string; + /** + * When profilePicOverride is not empty, use it instead. + * @type {string} + * @memberof User + */ + 'currentAvatarThumbnailImageUrl': string; + /** + * + * @type {string} + * @memberof User + */ + 'date_joined': string; + /** + * + * @type {DeveloperType} + * @memberof User + */ + 'developerType': DeveloperType; + /** + * A users visual display name. This is what shows up in-game, and can different from their `username`. Changing display name is restricted to a cooldown period. + * @type {string} + * @memberof User + */ + 'displayName': string; + /** + * + * @type {string} + * @memberof User + */ + 'friendKey': string; + /** + * + * @type {string} + * @memberof User + */ + 'friendRequestStatus'?: string; + /** + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof User + */ + 'id': string; + /** + * InstanceID can be \"offline\" on User profiles if you are not friends with that user and \"private\" if you are friends and user is in private instance. + * @type {string} + * @memberof User + */ + 'instanceId'?: string; + /** + * Either their `friendKey`, or empty string if you are not friends. Unknown usage. + * @type {boolean} + * @memberof User + */ + 'isFriend': boolean; + /** + * Either a date-time or empty string. + * @type {string} + * @memberof User + */ + 'last_activity': string; + /** + * Either a date-time or empty string. + * @type {string} + * @memberof User + */ + 'last_login': string; + /** + * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. + * @type {string} + * @memberof User + */ + 'last_platform': string; + /** + * WorldID be \"offline\" on User profiles if you are not friends with that user. + * @type {string} + * @memberof User + */ + 'location'?: string; + /** + * + * @type {string} + * @memberof User + */ + 'note'?: string; + /** + * + * @type {string} + * @memberof User + */ + 'profilePicOverride': string; + /** + * + * @type {UserState} + * @memberof User + */ + 'state': UserState; + /** + * + * @type {UserStatus} + * @memberof User + */ + 'status': UserStatus; + /** + * + * @type {string} + * @memberof User + */ + 'statusDescription': string; + /** + * + * @type {Array} + * @memberof User + */ + 'tags': Array; + /** + * + * @type {string} + * @memberof User + */ + 'travelingToInstance'?: string; + /** + * + * @type {string} + * @memberof User + */ + 'travelingToLocation'?: string; + /** + * + * @type {string} + * @memberof User + */ + 'travelingToWorld'?: string; + /** + * + * @type {string} + * @memberof User + */ + 'userIcon': string; + /** + * -| A users unique name, used during login. This is different from `displayName` which is what shows up in-game. A users `username` can never be changed.\' **DEPRECATED:** VRChat API no longer return usernames of other users. [See issue by Tupper for more information](https://github.com/pypy-vrc/VRCX/issues/429). + * @type {string} + * @memberof User + * @deprecated + */ + 'username'?: string; + /** + * WorldID be \"offline\" on User profiles if you are not friends with that user. + * @type {string} + * @memberof User + */ + 'worldId'?: string; +} +/** + * Status object representing if a queried user by username or userId exists or not. This model is primarily used by the `/auth/exists` endpoint, which in turn is used during registration. Please see the documentation on that endpoint for more information on usage. + * @export + * @interface UserExists + */ +export interface UserExists { + /** + * Status if a user exist with that username or userId. + * @type {boolean} + * @memberof UserExists + */ + 'userExists': boolean; +} +/** + * * \"online\" User is online in VRChat * \"active\" User is online, but not in VRChat * \"offline\" User is offline Always offline when returned through `getCurrentUser` (/auth/user). + * @export + * @enum {string} + */ + +export enum UserState { + Offline = 'offline', + Active = 'active', + Online = 'online' +} + +/** + * Defines the User\'s current status, for example \"ask me\", \"join me\" or \"offline. This status is a combined indicator of their online activity and privacy preference. + * @export + * @enum {string} + */ + +export enum UserStatus { + Active = 'active', + JoinMe = 'join me', + AskMe = 'ask me', + Busy = 'busy', + Offline = 'offline' +} + +/** + * + * @export + * @interface UserSubscription + */ +export interface UserSubscription { + /** + * + * @type {string} + * @memberof UserSubscription + */ + 'id': string; + /** + * + * @type {string} + * @memberof UserSubscription + */ + 'transactionId': string; + /** + * Which \"Store\" it came from. Right now only Stores are \"Steam\" and \"Admin\". + * @type {string} + * @memberof UserSubscription + */ + 'store': string; + /** + * + * @type {string} + * @memberof UserSubscription + */ + 'steamItemId'?: string; + /** + * + * @type {number} + * @memberof UserSubscription + */ + 'amount': number; + /** + * + * @type {string} + * @memberof UserSubscription + */ + 'description': string; + /** + * + * @type {SubscriptionPeriod} + * @memberof UserSubscription + */ + 'period': SubscriptionPeriod; + /** + * + * @type {number} + * @memberof UserSubscription + */ + 'tier': number; + /** + * + * @type {boolean} + * @memberof UserSubscription + */ + 'active': boolean; + /** + * + * @type {TransactionStatus} + * @memberof UserSubscription + */ + 'status': TransactionStatus; + /** + * + * @type {string} + * @memberof UserSubscription + */ + 'expires': string; + /** + * + * @type {string} + * @memberof UserSubscription + */ + 'created_at': string; + /** + * + * @type {string} + * @memberof UserSubscription + */ + 'updated_at': string; + /** + * + * @type {Array} + * @memberof UserSubscription + */ + 'licenseGroups': Array; + /** + * + * @type {boolean} + * @memberof UserSubscription + */ + 'isGift': boolean; +} +/** + * + * @export + * @interface Verify2FAResult + */ +export interface Verify2FAResult { + /** + * + * @type {boolean} + * @memberof Verify2FAResult + */ + 'verified': boolean; +} +/** + * + * @export + * @interface VerifyAuthTokenResult + */ +export interface VerifyAuthTokenResult { + /** + * + * @type {boolean} + * @memberof VerifyAuthTokenResult + */ + 'ok': boolean; + /** + * + * @type {string} + * @memberof VerifyAuthTokenResult + */ + 'token': string; +} +/** + * + * @export + * @interface World + */ +export interface World { + /** + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof World + */ + 'authorId': string; + /** + * + * @type {string} + * @memberof World + */ + 'authorName': string; + /** + * + * @type {number} + * @memberof World + */ + 'capacity': number; + /** + * + * @type {string} + * @memberof World + */ + 'created_at': string; + /** + * + * @type {string} + * @memberof World + */ + 'description': string; + /** + * + * @type {number} + * @memberof World + */ + 'favorites'?: number; + /** + * + * @type {boolean} + * @memberof World + */ + 'featured': boolean; + /** + * + * @type {number} + * @memberof World + */ + 'heat': number; + /** + * WorldID be \"offline\" on User profiles if you are not friends with that user. + * @type {string} + * @memberof World + */ + 'id': string; + /** + * + * @type {string} + * @memberof World + */ + 'imageUrl': string; + /** + * Will always be an empty list when unauthenticated. + * @type {Array>} + * @memberof World + */ + 'instances'?: Array>; + /** + * + * @type {string} + * @memberof World + */ + 'labsPublicationDate': string; + /** + * + * @type {string} + * @memberof World + */ + 'name': string; + /** + * + * @type {string} + * @memberof World + */ + 'namespace': string; + /** + * Will always be `0` when unauthenticated. + * @type {number} + * @memberof World + */ + 'occupants'?: number; + /** + * + * @type {string} + * @memberof World + */ + 'organization': string; + /** + * + * @type {number} + * @memberof World + */ + 'popularity': number; + /** + * + * @type {string} + * @memberof World + */ + 'previewYoutubeId'?: string | null; + /** + * Will always be `0` when unauthenticated. + * @type {number} + * @memberof World + */ + 'privateOccupants'?: number; + /** + * Will always be `0` when unauthenticated. + * @type {number} + * @memberof World + */ + 'publicOccupants'?: number; + /** + * + * @type {string} + * @memberof World + */ + 'publicationDate': string; + /** + * + * @type {ReleaseStatus} + * @memberof World + */ + 'releaseStatus': ReleaseStatus; + /** + * + * @type {Array} + * @memberof World + */ + 'tags': Array; + /** + * + * @type {string} + * @memberof World + */ + 'thumbnailImageUrl': string; + /** + * Empty if unauthenticated. + * @type {Array} + * @memberof World + */ + 'unityPackages': Array; + /** + * + * @type {string} + * @memberof World + */ + 'updated_at': string; + /** + * + * @type {number} + * @memberof World + */ + 'version': number; + /** + * + * @type {number} + * @memberof World + */ + 'visits': number; +} +/** + * + * @export + * @interface WorldMetadata + */ +export interface WorldMetadata { + /** + * WorldID be \"offline\" on User profiles if you are not friends with that user. + * @type {string} + * @memberof WorldMetadata + */ + 'id': string; + /** + * + * @type {object} + * @memberof WorldMetadata + */ + 'metadata': object; +} +/** + * + * @export + * @interface WorldPublishStatus + */ +export interface WorldPublishStatus { + /** + * + * @type {boolean} + * @memberof WorldPublishStatus + */ + 'canPubilsh': boolean; +} + +/** + * AuthenticationApi - axios parameter creator + * @export + */ +export const AuthenticationApiAxiosParamCreator = function (configuration?: Configuration) { + return { + /** + * Checks if a user by a given `username`, `displayName` or `email` exist. This is used during registration to check if a username has already been taken, during change of displayName to check if a displayName is available, and during change of email to check if the email is already used. In the later two cases the `excludeUserId` is used to exclude oneself, otherwise the result would always be true. It is **REQUIRED** to include **AT LEAST** `username`, `displayName` **or** `email` query parameter. Although they can be combined - in addition with `excludeUserId` (generally to exclude yourself) - to further fine-tune the search. + * @summary Check User Exists + * @param {string} [email] Filter by email. + * @param {string} [displayName] Filter by displayName. + * @param {string} [userId] Filter by UserID. + * @param {string} [excludeUserId] Exclude by UserID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + checkUserExists: async (email?: string, displayName?: string, userId?: string, excludeUserId?: string, options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/auth/exists`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + if (email !== undefined) { + localVarQueryParameter['email'] = email; + } + + if (displayName !== undefined) { + localVarQueryParameter['displayName'] = displayName; + } + + if (userId !== undefined) { + localVarQueryParameter['userId'] = userId; + } + + if (excludeUserId !== undefined) { + localVarQueryParameter['excludeUserId'] = excludeUserId; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Deletes the account with given ID. Normal users only have permission to delete their own account. Account deletion is 14 days from this request, and will be cancelled if you do an authenticated request with the account afterwards. **VRC+ NOTE:** Despite the 14-days cooldown, any VRC+ subscription will be cancelled **immediately**. **METHOD NOTE:** Despite this being a Delete action, the method type required is PUT. + * @summary Delete User + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + deleteUser: async (userId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'userId' is not null or undefined + assertParamExists('deleteUser', 'userId', userId) + const localVarPath = `/user/{userId}/delete` + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * This endpoint does the following two operations: 1) Checks if you are already logged in by looking for a valid `auth` cookie. If you are have a valid auth cookie then no additional auth-related actions are taken. If you are **not** logged in then it will log you in with the `Authorization` header and set the `auth` cookie. The `auth` cookie will only be sent once. 2) If logged in, this function will also return the CurrentUser object containing detailed information about the currently logged in user. The auth string after `Authorization: Basic {string}` is a base64-encoded string of the username and password, both individually url-encoded, and then joined with a colon. > base64(urlencode(username):urlencode(password)) **WARNING: Session Limit:** Each authentication with login credentials counts as a separate session, out of which you have a limited amount. Make sure to save and reuse the `auth` cookie if you are often restarting the program. The provided API libraries automatically save cookies during runtime, but does not persist during restart. While it can be fine to use username/password during development, expect in production to very fast run into the rate-limit and be temporarily blocked from making new sessions until older ones expire. The exact number of simultaneous sessions is unknown/undisclosed. + * @summary Login and/or Get Current User Info + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getCurrentUser: async (options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/auth/user`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + // authentication authHeader required + // http basic authentication required + setBasicAuthToObject(localVarRequestOptions, configuration) + + // authentication twoFactorAuthCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Invalidates the login session. + * @summary Logout + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + logout: async (options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/logout`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Finishes the login sequence with a normal 2FA-generated code for accounts with 2FA-protection enabled. + * @summary Verify 2FA code + * @param {TwoFactorAuthCode} [twoFactorAuthCode] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + verify2FA: async (twoFactorAuthCode?: TwoFactorAuthCode, options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/auth/twofactorauth/totp/verify`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(twoFactorAuthCode, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Verify whether the currently provided Auth Token is valid. + * @summary Verify Auth Token + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + verifyAuthToken: async (options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/auth`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Finishes the login sequence with an OTP (One Time Password) recovery code for accounts with 2FA-protection enabled. + * @summary Verify 2FA code with Recovery code + * @param {TwoFactorAuthCode} [twoFactorAuthCode] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + verifyRecoveryCode: async (twoFactorAuthCode?: TwoFactorAuthCode, options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/auth/twofactorauth/otp/verify`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(twoFactorAuthCode, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + } +}; + +/** + * AuthenticationApi - functional programming interface + * @export + */ +export const AuthenticationApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = AuthenticationApiAxiosParamCreator(configuration) + return { + /** + * Checks if a user by a given `username`, `displayName` or `email` exist. This is used during registration to check if a username has already been taken, during change of displayName to check if a displayName is available, and during change of email to check if the email is already used. In the later two cases the `excludeUserId` is used to exclude oneself, otherwise the result would always be true. It is **REQUIRED** to include **AT LEAST** `username`, `displayName` **or** `email` query parameter. Although they can be combined - in addition with `excludeUserId` (generally to exclude yourself) - to further fine-tune the search. + * @summary Check User Exists + * @param {string} [email] Filter by email. + * @param {string} [displayName] Filter by displayName. + * @param {string} [userId] Filter by UserID. + * @param {string} [excludeUserId] Exclude by UserID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async checkUserExists(email?: string, displayName?: string, userId?: string, excludeUserId?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.checkUserExists(email, displayName, userId, excludeUserId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Deletes the account with given ID. Normal users only have permission to delete their own account. Account deletion is 14 days from this request, and will be cancelled if you do an authenticated request with the account afterwards. **VRC+ NOTE:** Despite the 14-days cooldown, any VRC+ subscription will be cancelled **immediately**. **METHOD NOTE:** Despite this being a Delete action, the method type required is PUT. + * @summary Delete User + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async deleteUser(userId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.deleteUser(userId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * This endpoint does the following two operations: 1) Checks if you are already logged in by looking for a valid `auth` cookie. If you are have a valid auth cookie then no additional auth-related actions are taken. If you are **not** logged in then it will log you in with the `Authorization` header and set the `auth` cookie. The `auth` cookie will only be sent once. 2) If logged in, this function will also return the CurrentUser object containing detailed information about the currently logged in user. The auth string after `Authorization: Basic {string}` is a base64-encoded string of the username and password, both individually url-encoded, and then joined with a colon. > base64(urlencode(username):urlencode(password)) **WARNING: Session Limit:** Each authentication with login credentials counts as a separate session, out of which you have a limited amount. Make sure to save and reuse the `auth` cookie if you are often restarting the program. The provided API libraries automatically save cookies during runtime, but does not persist during restart. While it can be fine to use username/password during development, expect in production to very fast run into the rate-limit and be temporarily blocked from making new sessions until older ones expire. The exact number of simultaneous sessions is unknown/undisclosed. + * @summary Login and/or Get Current User Info + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getCurrentUser(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getCurrentUser(options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Invalidates the login session. + * @summary Logout + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async logout(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.logout(options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Finishes the login sequence with a normal 2FA-generated code for accounts with 2FA-protection enabled. + * @summary Verify 2FA code + * @param {TwoFactorAuthCode} [twoFactorAuthCode] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async verify2FA(twoFactorAuthCode?: TwoFactorAuthCode, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.verify2FA(twoFactorAuthCode, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Verify whether the currently provided Auth Token is valid. + * @summary Verify Auth Token + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async verifyAuthToken(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.verifyAuthToken(options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Finishes the login sequence with an OTP (One Time Password) recovery code for accounts with 2FA-protection enabled. + * @summary Verify 2FA code with Recovery code + * @param {TwoFactorAuthCode} [twoFactorAuthCode] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async verifyRecoveryCode(twoFactorAuthCode?: TwoFactorAuthCode, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.verifyRecoveryCode(twoFactorAuthCode, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + } +}; + +/** + * AuthenticationApi - factory interface + * @export + */ +export const AuthenticationApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = AuthenticationApiFp(configuration) + return { + /** + * Checks if a user by a given `username`, `displayName` or `email` exist. This is used during registration to check if a username has already been taken, during change of displayName to check if a displayName is available, and during change of email to check if the email is already used. In the later two cases the `excludeUserId` is used to exclude oneself, otherwise the result would always be true. It is **REQUIRED** to include **AT LEAST** `username`, `displayName` **or** `email` query parameter. Although they can be combined - in addition with `excludeUserId` (generally to exclude yourself) - to further fine-tune the search. + * @summary Check User Exists + * @param {string} [email] Filter by email. + * @param {string} [displayName] Filter by displayName. + * @param {string} [userId] Filter by UserID. + * @param {string} [excludeUserId] Exclude by UserID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + checkUserExists(email?: string, displayName?: string, userId?: string, excludeUserId?: string, options?: any): AxiosPromise { + return localVarFp.checkUserExists(email, displayName, userId, excludeUserId, options).then((request) => request(axios, basePath)); + }, + /** + * Deletes the account with given ID. Normal users only have permission to delete their own account. Account deletion is 14 days from this request, and will be cancelled if you do an authenticated request with the account afterwards. **VRC+ NOTE:** Despite the 14-days cooldown, any VRC+ subscription will be cancelled **immediately**. **METHOD NOTE:** Despite this being a Delete action, the method type required is PUT. + * @summary Delete User + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + deleteUser(userId: string, options?: any): AxiosPromise { + return localVarFp.deleteUser(userId, options).then((request) => request(axios, basePath)); + }, + /** + * This endpoint does the following two operations: 1) Checks if you are already logged in by looking for a valid `auth` cookie. If you are have a valid auth cookie then no additional auth-related actions are taken. If you are **not** logged in then it will log you in with the `Authorization` header and set the `auth` cookie. The `auth` cookie will only be sent once. 2) If logged in, this function will also return the CurrentUser object containing detailed information about the currently logged in user. The auth string after `Authorization: Basic {string}` is a base64-encoded string of the username and password, both individually url-encoded, and then joined with a colon. > base64(urlencode(username):urlencode(password)) **WARNING: Session Limit:** Each authentication with login credentials counts as a separate session, out of which you have a limited amount. Make sure to save and reuse the `auth` cookie if you are often restarting the program. The provided API libraries automatically save cookies during runtime, but does not persist during restart. While it can be fine to use username/password during development, expect in production to very fast run into the rate-limit and be temporarily blocked from making new sessions until older ones expire. The exact number of simultaneous sessions is unknown/undisclosed. + * @summary Login and/or Get Current User Info + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getCurrentUser(options?: any): AxiosPromise { + return localVarFp.getCurrentUser(options).then((request) => request(axios, basePath)); + }, + /** + * Invalidates the login session. + * @summary Logout + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + logout(options?: any): AxiosPromise { + return localVarFp.logout(options).then((request) => request(axios, basePath)); + }, + /** + * Finishes the login sequence with a normal 2FA-generated code for accounts with 2FA-protection enabled. + * @summary Verify 2FA code + * @param {TwoFactorAuthCode} [twoFactorAuthCode] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + verify2FA(twoFactorAuthCode?: TwoFactorAuthCode, options?: any): AxiosPromise { + return localVarFp.verify2FA(twoFactorAuthCode, options).then((request) => request(axios, basePath)); + }, + /** + * Verify whether the currently provided Auth Token is valid. + * @summary Verify Auth Token + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + verifyAuthToken(options?: any): AxiosPromise { + return localVarFp.verifyAuthToken(options).then((request) => request(axios, basePath)); + }, + /** + * Finishes the login sequence with an OTP (One Time Password) recovery code for accounts with 2FA-protection enabled. + * @summary Verify 2FA code with Recovery code + * @param {TwoFactorAuthCode} [twoFactorAuthCode] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + verifyRecoveryCode(twoFactorAuthCode?: TwoFactorAuthCode, options?: any): AxiosPromise { + return localVarFp.verifyRecoveryCode(twoFactorAuthCode, options).then((request) => request(axios, basePath)); + }, + }; +}; + +/** + * AuthenticationApi - object-oriented interface + * @export + * @class AuthenticationApi + * @extends {BaseAPI} + */ +export class AuthenticationApi extends BaseAPI { + /** + * Checks if a user by a given `username`, `displayName` or `email` exist. This is used during registration to check if a username has already been taken, during change of displayName to check if a displayName is available, and during change of email to check if the email is already used. In the later two cases the `excludeUserId` is used to exclude oneself, otherwise the result would always be true. It is **REQUIRED** to include **AT LEAST** `username`, `displayName` **or** `email` query parameter. Although they can be combined - in addition with `excludeUserId` (generally to exclude yourself) - to further fine-tune the search. + * @summary Check User Exists + * @param {string} [email] Filter by email. + * @param {string} [displayName] Filter by displayName. + * @param {string} [userId] Filter by UserID. + * @param {string} [excludeUserId] Exclude by UserID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AuthenticationApi + */ + public checkUserExists(email?: string, displayName?: string, userId?: string, excludeUserId?: string, options?: AxiosRequestConfig) { + return AuthenticationApiFp(this.configuration).checkUserExists(email, displayName, userId, excludeUserId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Deletes the account with given ID. Normal users only have permission to delete their own account. Account deletion is 14 days from this request, and will be cancelled if you do an authenticated request with the account afterwards. **VRC+ NOTE:** Despite the 14-days cooldown, any VRC+ subscription will be cancelled **immediately**. **METHOD NOTE:** Despite this being a Delete action, the method type required is PUT. + * @summary Delete User + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AuthenticationApi + */ + public deleteUser(userId: string, options?: AxiosRequestConfig) { + return AuthenticationApiFp(this.configuration).deleteUser(userId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * This endpoint does the following two operations: 1) Checks if you are already logged in by looking for a valid `auth` cookie. If you are have a valid auth cookie then no additional auth-related actions are taken. If you are **not** logged in then it will log you in with the `Authorization` header and set the `auth` cookie. The `auth` cookie will only be sent once. 2) If logged in, this function will also return the CurrentUser object containing detailed information about the currently logged in user. The auth string after `Authorization: Basic {string}` is a base64-encoded string of the username and password, both individually url-encoded, and then joined with a colon. > base64(urlencode(username):urlencode(password)) **WARNING: Session Limit:** Each authentication with login credentials counts as a separate session, out of which you have a limited amount. Make sure to save and reuse the `auth` cookie if you are often restarting the program. The provided API libraries automatically save cookies during runtime, but does not persist during restart. While it can be fine to use username/password during development, expect in production to very fast run into the rate-limit and be temporarily blocked from making new sessions until older ones expire. The exact number of simultaneous sessions is unknown/undisclosed. + * @summary Login and/or Get Current User Info + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AuthenticationApi + */ + public getCurrentUser(options?: AxiosRequestConfig) { + return AuthenticationApiFp(this.configuration).getCurrentUser(options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Invalidates the login session. + * @summary Logout + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AuthenticationApi + */ + public logout(options?: AxiosRequestConfig) { + return AuthenticationApiFp(this.configuration).logout(options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Finishes the login sequence with a normal 2FA-generated code for accounts with 2FA-protection enabled. + * @summary Verify 2FA code + * @param {TwoFactorAuthCode} [twoFactorAuthCode] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AuthenticationApi + */ + public verify2FA(twoFactorAuthCode?: TwoFactorAuthCode, options?: AxiosRequestConfig) { + return AuthenticationApiFp(this.configuration).verify2FA(twoFactorAuthCode, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Verify whether the currently provided Auth Token is valid. + * @summary Verify Auth Token + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AuthenticationApi + */ + public verifyAuthToken(options?: AxiosRequestConfig) { + return AuthenticationApiFp(this.configuration).verifyAuthToken(options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Finishes the login sequence with an OTP (One Time Password) recovery code for accounts with 2FA-protection enabled. + * @summary Verify 2FA code with Recovery code + * @param {TwoFactorAuthCode} [twoFactorAuthCode] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AuthenticationApi + */ + public verifyRecoveryCode(twoFactorAuthCode?: TwoFactorAuthCode, options?: AxiosRequestConfig) { + return AuthenticationApiFp(this.configuration).verifyRecoveryCode(twoFactorAuthCode, options).then((request) => request(this.axios, this.basePath)); + } +} + + +/** + * AvatarsApi - axios parameter creator + * @export + */ +export const AvatarsApiAxiosParamCreator = function (configuration?: Configuration) { + return { + /** + * Create an avatar. It\'s possible to optionally specify a ID if you want a custom one. Attempting to create an Avatar with an already claimed ID will result in a DB error. + * @summary Create Avatar + * @param {CreateAvatarRequest} [createAvatarRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + createAvatar: async (createAvatarRequest?: CreateAvatarRequest, options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/avatars`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(createAvatarRequest, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Delete an avatar. Notice an avatar is never fully \"deleted\", only its ReleaseStatus is set to \"hidden\" and the linked Files are deleted. The AvatarID is permanently reserved. + * @summary Delete Avatar + * @param {string} avatarId Must be a valid avatar ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + deleteAvatar: async (avatarId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'avatarId' is not null or undefined + assertParamExists('deleteAvatar', 'avatarId', avatarId) + const localVarPath = `/avatars/{avatarId}` + .replace(`{${"avatarId"}}`, encodeURIComponent(String(avatarId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get information about a specific Avatar. + * @summary Get Avatar + * @param {string} avatarId Must be a valid avatar ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getAvatar: async (avatarId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'avatarId' is not null or undefined + assertParamExists('getAvatar', 'avatarId', avatarId) + const localVarPath = `/avatars/{avatarId}` + .replace(`{${"avatarId"}}`, encodeURIComponent(String(avatarId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Search and list favorited avatars by query filters. + * @summary List Favorited Avatars + * @param {boolean} [featured] Filters on featured results. + * @param {SortOption} [sort] The sort order of the results. + * @param {number} [n] The number of objects to return. + * @param {OrderOption} [order] Result ordering + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [search] Filters by world name. + * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. + * @param {string} [notag] Tags to exclude (comma-separated). + * @param {ReleaseStatus} [releaseStatus] Filter by ReleaseStatus. + * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. + * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. + * @param {string} [platform] The platform the asset supports. + * @param {string} [userId] Target user to see information on, admin-only. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFavoritedAvatars: async (featured?: boolean, sort?: SortOption, n?: number, order?: OrderOption, offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: ReleaseStatus, maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/avatars/favorites`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + if (featured !== undefined) { + localVarQueryParameter['featured'] = featured; + } + + if (sort !== undefined) { + localVarQueryParameter['sort'] = sort; + } + + if (n !== undefined) { + localVarQueryParameter['n'] = n; + } + + if (order !== undefined) { + localVarQueryParameter['order'] = order; + } + + if (offset !== undefined) { + localVarQueryParameter['offset'] = offset; + } + + if (search !== undefined) { + localVarQueryParameter['search'] = search; + } + + if (tag !== undefined) { + localVarQueryParameter['tag'] = tag; + } + + if (notag !== undefined) { + localVarQueryParameter['notag'] = notag; + } + + if (releaseStatus !== undefined) { + localVarQueryParameter['releaseStatus'] = releaseStatus; + } + + if (maxUnityVersion !== undefined) { + localVarQueryParameter['maxUnityVersion'] = maxUnityVersion; + } + + if (minUnityVersion !== undefined) { + localVarQueryParameter['minUnityVersion'] = minUnityVersion; + } + + if (platform !== undefined) { + localVarQueryParameter['platform'] = platform; + } + + if (userId !== undefined) { + localVarQueryParameter['userId'] = userId; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get the current avatar for the user. This will return an error for any other user than the one logged in. + * @summary Get Own Avatar + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getOwnAvatar: async (userId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'userId' is not null or undefined + assertParamExists('getOwnAvatar', 'userId', userId) + const localVarPath = `/users/{userId}/avatar` + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Search and list avatars by query filters. You can only search your own or featured avatars. It is not possible as a normal user to search other peoples avatars. + * @summary Search Avatars + * @param {boolean} [featured] Filters on featured results. + * @param {SortOption} [sort] The sort order of the results. + * @param {'me'} [user] Set to `me` for searching own avatars. + * @param {string} [userId] Filter by UserID. + * @param {number} [n] The number of objects to return. + * @param {OrderOption} [order] Result ordering + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. + * @param {string} [notag] Tags to exclude (comma-separated). + * @param {ReleaseStatus} [releaseStatus] Filter by ReleaseStatus. + * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. + * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. + * @param {string} [platform] The platform the asset supports. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + searchAvatars: async (featured?: boolean, sort?: SortOption, user?: 'me', userId?: string, n?: number, order?: OrderOption, offset?: number, tag?: string, notag?: string, releaseStatus?: ReleaseStatus, maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/avatars`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + if (featured !== undefined) { + localVarQueryParameter['featured'] = featured; + } + + if (sort !== undefined) { + localVarQueryParameter['sort'] = sort; + } + + if (user !== undefined) { + localVarQueryParameter['user'] = user; + } + + if (userId !== undefined) { + localVarQueryParameter['userId'] = userId; + } + + if (n !== undefined) { + localVarQueryParameter['n'] = n; + } + + if (order !== undefined) { + localVarQueryParameter['order'] = order; + } + + if (offset !== undefined) { + localVarQueryParameter['offset'] = offset; + } + + if (tag !== undefined) { + localVarQueryParameter['tag'] = tag; + } + + if (notag !== undefined) { + localVarQueryParameter['notag'] = notag; + } + + if (releaseStatus !== undefined) { + localVarQueryParameter['releaseStatus'] = releaseStatus; + } + + if (maxUnityVersion !== undefined) { + localVarQueryParameter['maxUnityVersion'] = maxUnityVersion; + } + + if (minUnityVersion !== undefined) { + localVarQueryParameter['minUnityVersion'] = minUnityVersion; + } + + if (platform !== undefined) { + localVarQueryParameter['platform'] = platform; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Switches into that avatar. + * @summary Select Avatar + * @param {string} avatarId Must be a valid avatar ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + selectAvatar: async (avatarId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'avatarId' is not null or undefined + assertParamExists('selectAvatar', 'avatarId', avatarId) + const localVarPath = `/avatars/{avatarId}/select` + .replace(`{${"avatarId"}}`, encodeURIComponent(String(avatarId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Switches into that avatar as your fallback avatar. + * @summary Select Fallback Avatar + * @param {string} avatarId Must be a valid avatar ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + selectFallbackAvatar: async (avatarId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'avatarId' is not null or undefined + assertParamExists('selectFallbackAvatar', 'avatarId', avatarId) + const localVarPath = `/avatars/{avatarId}/selectFallback` + .replace(`{${"avatarId"}}`, encodeURIComponent(String(avatarId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Update information about a specific avatar. + * @summary Update Avatar + * @param {string} avatarId Must be a valid avatar ID. + * @param {UpdateAvatarRequest} [updateAvatarRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + updateAvatar: async (avatarId: string, updateAvatarRequest?: UpdateAvatarRequest, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'avatarId' is not null or undefined + assertParamExists('updateAvatar', 'avatarId', avatarId) + const localVarPath = `/avatars/{avatarId}` + .replace(`{${"avatarId"}}`, encodeURIComponent(String(avatarId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(updateAvatarRequest, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + } +}; + +/** + * AvatarsApi - functional programming interface + * @export + */ +export const AvatarsApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = AvatarsApiAxiosParamCreator(configuration) + return { + /** + * Create an avatar. It\'s possible to optionally specify a ID if you want a custom one. Attempting to create an Avatar with an already claimed ID will result in a DB error. + * @summary Create Avatar + * @param {CreateAvatarRequest} [createAvatarRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async createAvatar(createAvatarRequest?: CreateAvatarRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.createAvatar(createAvatarRequest, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Delete an avatar. Notice an avatar is never fully \"deleted\", only its ReleaseStatus is set to \"hidden\" and the linked Files are deleted. The AvatarID is permanently reserved. + * @summary Delete Avatar + * @param {string} avatarId Must be a valid avatar ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async deleteAvatar(avatarId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.deleteAvatar(avatarId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Get information about a specific Avatar. + * @summary Get Avatar + * @param {string} avatarId Must be a valid avatar ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getAvatar(avatarId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getAvatar(avatarId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Search and list favorited avatars by query filters. + * @summary List Favorited Avatars + * @param {boolean} [featured] Filters on featured results. + * @param {SortOption} [sort] The sort order of the results. + * @param {number} [n] The number of objects to return. + * @param {OrderOption} [order] Result ordering + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [search] Filters by world name. + * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. + * @param {string} [notag] Tags to exclude (comma-separated). + * @param {ReleaseStatus} [releaseStatus] Filter by ReleaseStatus. + * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. + * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. + * @param {string} [platform] The platform the asset supports. + * @param {string} [userId] Target user to see information on, admin-only. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getFavoritedAvatars(featured?: boolean, sort?: SortOption, n?: number, order?: OrderOption, offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: ReleaseStatus, maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getFavoritedAvatars(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Get the current avatar for the user. This will return an error for any other user than the one logged in. + * @summary Get Own Avatar + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getOwnAvatar(userId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getOwnAvatar(userId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Search and list avatars by query filters. You can only search your own or featured avatars. It is not possible as a normal user to search other peoples avatars. + * @summary Search Avatars + * @param {boolean} [featured] Filters on featured results. + * @param {SortOption} [sort] The sort order of the results. + * @param {'me'} [user] Set to `me` for searching own avatars. + * @param {string} [userId] Filter by UserID. + * @param {number} [n] The number of objects to return. + * @param {OrderOption} [order] Result ordering + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. + * @param {string} [notag] Tags to exclude (comma-separated). + * @param {ReleaseStatus} [releaseStatus] Filter by ReleaseStatus. + * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. + * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. + * @param {string} [platform] The platform the asset supports. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async searchAvatars(featured?: boolean, sort?: SortOption, user?: 'me', userId?: string, n?: number, order?: OrderOption, offset?: number, tag?: string, notag?: string, releaseStatus?: ReleaseStatus, maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.searchAvatars(featured, sort, user, userId, n, order, offset, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Switches into that avatar. + * @summary Select Avatar + * @param {string} avatarId Must be a valid avatar ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async selectAvatar(avatarId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.selectAvatar(avatarId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Switches into that avatar as your fallback avatar. + * @summary Select Fallback Avatar + * @param {string} avatarId Must be a valid avatar ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async selectFallbackAvatar(avatarId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.selectFallbackAvatar(avatarId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Update information about a specific avatar. + * @summary Update Avatar + * @param {string} avatarId Must be a valid avatar ID. + * @param {UpdateAvatarRequest} [updateAvatarRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async updateAvatar(avatarId: string, updateAvatarRequest?: UpdateAvatarRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.updateAvatar(avatarId, updateAvatarRequest, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + } +}; + +/** + * AvatarsApi - factory interface + * @export + */ +export const AvatarsApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = AvatarsApiFp(configuration) + return { + /** + * Create an avatar. It\'s possible to optionally specify a ID if you want a custom one. Attempting to create an Avatar with an already claimed ID will result in a DB error. + * @summary Create Avatar + * @param {CreateAvatarRequest} [createAvatarRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + createAvatar(createAvatarRequest?: CreateAvatarRequest, options?: any): AxiosPromise { + return localVarFp.createAvatar(createAvatarRequest, options).then((request) => request(axios, basePath)); + }, + /** + * Delete an avatar. Notice an avatar is never fully \"deleted\", only its ReleaseStatus is set to \"hidden\" and the linked Files are deleted. The AvatarID is permanently reserved. + * @summary Delete Avatar + * @param {string} avatarId Must be a valid avatar ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + deleteAvatar(avatarId: string, options?: any): AxiosPromise { + return localVarFp.deleteAvatar(avatarId, options).then((request) => request(axios, basePath)); + }, + /** + * Get information about a specific Avatar. + * @summary Get Avatar + * @param {string} avatarId Must be a valid avatar ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getAvatar(avatarId: string, options?: any): AxiosPromise { + return localVarFp.getAvatar(avatarId, options).then((request) => request(axios, basePath)); + }, + /** + * Search and list favorited avatars by query filters. + * @summary List Favorited Avatars + * @param {boolean} [featured] Filters on featured results. + * @param {SortOption} [sort] The sort order of the results. + * @param {number} [n] The number of objects to return. + * @param {OrderOption} [order] Result ordering + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [search] Filters by world name. + * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. + * @param {string} [notag] Tags to exclude (comma-separated). + * @param {ReleaseStatus} [releaseStatus] Filter by ReleaseStatus. + * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. + * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. + * @param {string} [platform] The platform the asset supports. + * @param {string} [userId] Target user to see information on, admin-only. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFavoritedAvatars(featured?: boolean, sort?: SortOption, n?: number, order?: OrderOption, offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: ReleaseStatus, maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any): AxiosPromise> { + return localVarFp.getFavoritedAvatars(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options).then((request) => request(axios, basePath)); + }, + /** + * Get the current avatar for the user. This will return an error for any other user than the one logged in. + * @summary Get Own Avatar + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getOwnAvatar(userId: string, options?: any): AxiosPromise { + return localVarFp.getOwnAvatar(userId, options).then((request) => request(axios, basePath)); + }, + /** + * Search and list avatars by query filters. You can only search your own or featured avatars. It is not possible as a normal user to search other peoples avatars. + * @summary Search Avatars + * @param {boolean} [featured] Filters on featured results. + * @param {SortOption} [sort] The sort order of the results. + * @param {'me'} [user] Set to `me` for searching own avatars. + * @param {string} [userId] Filter by UserID. + * @param {number} [n] The number of objects to return. + * @param {OrderOption} [order] Result ordering + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. + * @param {string} [notag] Tags to exclude (comma-separated). + * @param {ReleaseStatus} [releaseStatus] Filter by ReleaseStatus. + * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. + * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. + * @param {string} [platform] The platform the asset supports. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + searchAvatars(featured?: boolean, sort?: SortOption, user?: 'me', userId?: string, n?: number, order?: OrderOption, offset?: number, tag?: string, notag?: string, releaseStatus?: ReleaseStatus, maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: any): AxiosPromise> { + return localVarFp.searchAvatars(featured, sort, user, userId, n, order, offset, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options).then((request) => request(axios, basePath)); + }, + /** + * Switches into that avatar. + * @summary Select Avatar + * @param {string} avatarId Must be a valid avatar ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + selectAvatar(avatarId: string, options?: any): AxiosPromise { + return localVarFp.selectAvatar(avatarId, options).then((request) => request(axios, basePath)); + }, + /** + * Switches into that avatar as your fallback avatar. + * @summary Select Fallback Avatar + * @param {string} avatarId Must be a valid avatar ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + selectFallbackAvatar(avatarId: string, options?: any): AxiosPromise { + return localVarFp.selectFallbackAvatar(avatarId, options).then((request) => request(axios, basePath)); + }, + /** + * Update information about a specific avatar. + * @summary Update Avatar + * @param {string} avatarId Must be a valid avatar ID. + * @param {UpdateAvatarRequest} [updateAvatarRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + updateAvatar(avatarId: string, updateAvatarRequest?: UpdateAvatarRequest, options?: any): AxiosPromise { + return localVarFp.updateAvatar(avatarId, updateAvatarRequest, options).then((request) => request(axios, basePath)); + }, + }; +}; + +/** + * AvatarsApi - object-oriented interface + * @export + * @class AvatarsApi + * @extends {BaseAPI} + */ +export class AvatarsApi extends BaseAPI { + /** + * Create an avatar. It\'s possible to optionally specify a ID if you want a custom one. Attempting to create an Avatar with an already claimed ID will result in a DB error. + * @summary Create Avatar + * @param {CreateAvatarRequest} [createAvatarRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AvatarsApi + */ + public createAvatar(createAvatarRequest?: CreateAvatarRequest, options?: AxiosRequestConfig) { + return AvatarsApiFp(this.configuration).createAvatar(createAvatarRequest, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Delete an avatar. Notice an avatar is never fully \"deleted\", only its ReleaseStatus is set to \"hidden\" and the linked Files are deleted. The AvatarID is permanently reserved. + * @summary Delete Avatar + * @param {string} avatarId Must be a valid avatar ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AvatarsApi + */ + public deleteAvatar(avatarId: string, options?: AxiosRequestConfig) { + return AvatarsApiFp(this.configuration).deleteAvatar(avatarId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Get information about a specific Avatar. + * @summary Get Avatar + * @param {string} avatarId Must be a valid avatar ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AvatarsApi + */ + public getAvatar(avatarId: string, options?: AxiosRequestConfig) { + return AvatarsApiFp(this.configuration).getAvatar(avatarId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Search and list favorited avatars by query filters. + * @summary List Favorited Avatars + * @param {boolean} [featured] Filters on featured results. + * @param {SortOption} [sort] The sort order of the results. + * @param {number} [n] The number of objects to return. + * @param {OrderOption} [order] Result ordering + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [search] Filters by world name. + * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. + * @param {string} [notag] Tags to exclude (comma-separated). + * @param {ReleaseStatus} [releaseStatus] Filter by ReleaseStatus. + * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. + * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. + * @param {string} [platform] The platform the asset supports. + * @param {string} [userId] Target user to see information on, admin-only. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AvatarsApi + */ + public getFavoritedAvatars(featured?: boolean, sort?: SortOption, n?: number, order?: OrderOption, offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: ReleaseStatus, maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: AxiosRequestConfig) { + return AvatarsApiFp(this.configuration).getFavoritedAvatars(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Get the current avatar for the user. This will return an error for any other user than the one logged in. + * @summary Get Own Avatar + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AvatarsApi + */ + public getOwnAvatar(userId: string, options?: AxiosRequestConfig) { + return AvatarsApiFp(this.configuration).getOwnAvatar(userId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Search and list avatars by query filters. You can only search your own or featured avatars. It is not possible as a normal user to search other peoples avatars. + * @summary Search Avatars + * @param {boolean} [featured] Filters on featured results. + * @param {SortOption} [sort] The sort order of the results. + * @param {'me'} [user] Set to `me` for searching own avatars. + * @param {string} [userId] Filter by UserID. + * @param {number} [n] The number of objects to return. + * @param {OrderOption} [order] Result ordering + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. + * @param {string} [notag] Tags to exclude (comma-separated). + * @param {ReleaseStatus} [releaseStatus] Filter by ReleaseStatus. + * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. + * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. + * @param {string} [platform] The platform the asset supports. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AvatarsApi + */ + public searchAvatars(featured?: boolean, sort?: SortOption, user?: 'me', userId?: string, n?: number, order?: OrderOption, offset?: number, tag?: string, notag?: string, releaseStatus?: ReleaseStatus, maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: AxiosRequestConfig) { + return AvatarsApiFp(this.configuration).searchAvatars(featured, sort, user, userId, n, order, offset, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Switches into that avatar. + * @summary Select Avatar + * @param {string} avatarId Must be a valid avatar ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AvatarsApi + */ + public selectAvatar(avatarId: string, options?: AxiosRequestConfig) { + return AvatarsApiFp(this.configuration).selectAvatar(avatarId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Switches into that avatar as your fallback avatar. + * @summary Select Fallback Avatar + * @param {string} avatarId Must be a valid avatar ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AvatarsApi + */ + public selectFallbackAvatar(avatarId: string, options?: AxiosRequestConfig) { + return AvatarsApiFp(this.configuration).selectFallbackAvatar(avatarId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Update information about a specific avatar. + * @summary Update Avatar + * @param {string} avatarId Must be a valid avatar ID. + * @param {UpdateAvatarRequest} [updateAvatarRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AvatarsApi + */ + public updateAvatar(avatarId: string, updateAvatarRequest?: UpdateAvatarRequest, options?: AxiosRequestConfig) { + return AvatarsApiFp(this.configuration).updateAvatar(avatarId, updateAvatarRequest, options).then((request) => request(this.axios, this.basePath)); + } +} + + +/** + * EconomyApi - axios parameter creator + * @export + */ +export const EconomyApiAxiosParamCreator = function (configuration?: Configuration) { + return { + /** + * Get a list of all current user subscriptions. + * @summary Get Current Subscriptions + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getCurrentSubscriptions: async (options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/auth/user/subscription`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get a single License Group by given ID. + * @summary Get License Group + * @param {string} licenseGroupId Must be a valid license group ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getLicenseGroup: async (licenseGroupId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'licenseGroupId' is not null or undefined + assertParamExists('getLicenseGroup', 'licenseGroupId', licenseGroupId) + const localVarPath = `/licenseGroups/{licenseGroupId}` + .replace(`{${"licenseGroupId"}}`, encodeURIComponent(String(licenseGroupId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get a single Steam transactions by ID. This returns the exact same information as `getSteamTransactions`, so no point in using this endpoint. + * @summary Get Steam Transaction + * @param {string} transactionId Must be a valid transaction ID. + * @param {*} [options] Override http request option. + * @deprecated + * @throws {RequiredError} + */ + getSteamTransaction: async (transactionId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'transactionId' is not null or undefined + assertParamExists('getSteamTransaction', 'transactionId', transactionId) + const localVarPath = `/Steam/transactions/{transactionId}` + .replace(`{${"transactionId"}}`, encodeURIComponent(String(transactionId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get all own Steam transactions. + * @summary List Steam Transactions + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getSteamTransactions: async (options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/Steam/transactions`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * List all existing Subscriptions. For example, \"vrchatplus-monthly\" and \"vrchatplus-yearly\". + * @summary List Subscriptions + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getSubscriptions: async (options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/subscriptions`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + } +}; + +/** + * EconomyApi - functional programming interface + * @export + */ +export const EconomyApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = EconomyApiAxiosParamCreator(configuration) + return { + /** + * Get a list of all current user subscriptions. + * @summary Get Current Subscriptions + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getCurrentSubscriptions(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getCurrentSubscriptions(options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Get a single License Group by given ID. + * @summary Get License Group + * @param {string} licenseGroupId Must be a valid license group ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getLicenseGroup(licenseGroupId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getLicenseGroup(licenseGroupId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Get a single Steam transactions by ID. This returns the exact same information as `getSteamTransactions`, so no point in using this endpoint. + * @summary Get Steam Transaction + * @param {string} transactionId Must be a valid transaction ID. + * @param {*} [options] Override http request option. + * @deprecated + * @throws {RequiredError} + */ + async getSteamTransaction(transactionId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getSteamTransaction(transactionId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Get all own Steam transactions. + * @summary List Steam Transactions + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getSteamTransactions(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getSteamTransactions(options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * List all existing Subscriptions. For example, \"vrchatplus-monthly\" and \"vrchatplus-yearly\". + * @summary List Subscriptions + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getSubscriptions(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getSubscriptions(options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + } +}; + +/** + * EconomyApi - factory interface + * @export + */ +export const EconomyApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = EconomyApiFp(configuration) + return { + /** + * Get a list of all current user subscriptions. + * @summary Get Current Subscriptions + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getCurrentSubscriptions(options?: any): AxiosPromise> { + return localVarFp.getCurrentSubscriptions(options).then((request) => request(axios, basePath)); + }, + /** + * Get a single License Group by given ID. + * @summary Get License Group + * @param {string} licenseGroupId Must be a valid license group ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getLicenseGroup(licenseGroupId: string, options?: any): AxiosPromise { + return localVarFp.getLicenseGroup(licenseGroupId, options).then((request) => request(axios, basePath)); + }, + /** + * Get a single Steam transactions by ID. This returns the exact same information as `getSteamTransactions`, so no point in using this endpoint. + * @summary Get Steam Transaction + * @param {string} transactionId Must be a valid transaction ID. + * @param {*} [options] Override http request option. + * @deprecated + * @throws {RequiredError} + */ + getSteamTransaction(transactionId: string, options?: any): AxiosPromise { + return localVarFp.getSteamTransaction(transactionId, options).then((request) => request(axios, basePath)); + }, + /** + * Get all own Steam transactions. + * @summary List Steam Transactions + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getSteamTransactions(options?: any): AxiosPromise> { + return localVarFp.getSteamTransactions(options).then((request) => request(axios, basePath)); + }, + /** + * List all existing Subscriptions. For example, \"vrchatplus-monthly\" and \"vrchatplus-yearly\". + * @summary List Subscriptions + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getSubscriptions(options?: any): AxiosPromise> { + return localVarFp.getSubscriptions(options).then((request) => request(axios, basePath)); + }, + }; +}; + +/** + * EconomyApi - object-oriented interface + * @export + * @class EconomyApi + * @extends {BaseAPI} + */ +export class EconomyApi extends BaseAPI { + /** + * Get a list of all current user subscriptions. + * @summary Get Current Subscriptions + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof EconomyApi + */ + public getCurrentSubscriptions(options?: AxiosRequestConfig) { + return EconomyApiFp(this.configuration).getCurrentSubscriptions(options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Get a single License Group by given ID. + * @summary Get License Group + * @param {string} licenseGroupId Must be a valid license group ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof EconomyApi + */ + public getLicenseGroup(licenseGroupId: string, options?: AxiosRequestConfig) { + return EconomyApiFp(this.configuration).getLicenseGroup(licenseGroupId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Get a single Steam transactions by ID. This returns the exact same information as `getSteamTransactions`, so no point in using this endpoint. + * @summary Get Steam Transaction + * @param {string} transactionId Must be a valid transaction ID. + * @param {*} [options] Override http request option. + * @deprecated + * @throws {RequiredError} + * @memberof EconomyApi + */ + public getSteamTransaction(transactionId: string, options?: AxiosRequestConfig) { + return EconomyApiFp(this.configuration).getSteamTransaction(transactionId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Get all own Steam transactions. + * @summary List Steam Transactions + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof EconomyApi + */ + public getSteamTransactions(options?: AxiosRequestConfig) { + return EconomyApiFp(this.configuration).getSteamTransactions(options).then((request) => request(this.axios, this.basePath)); + } + + /** + * List all existing Subscriptions. For example, \"vrchatplus-monthly\" and \"vrchatplus-yearly\". + * @summary List Subscriptions + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof EconomyApi + */ + public getSubscriptions(options?: AxiosRequestConfig) { + return EconomyApiFp(this.configuration).getSubscriptions(options).then((request) => request(this.axios, this.basePath)); + } +} + + +/** + * FavoritesApi - axios parameter creator + * @export + */ +export const FavoritesApiAxiosParamCreator = function (configuration?: Configuration) { + return { + /** + * Add a new favorite. Friend groups are named `group_0` through `group_3`. Avatar and World groups are named `avatars1` to `avatars4` and `worlds1` to `worlds4`. You cannot add people whom you are not friends with to your friends list. Destroying a friendship removes the person as favorite on both sides. + * @summary Add Favorite + * @param {AddFavoriteRequest} [addFavoriteRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + addFavorite: async (addFavoriteRequest?: AddFavoriteRequest, options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/favorites`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(addFavoriteRequest, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Clear ALL contents of a specific favorite group. + * @summary Clear Favorite Group + * @param {'world' | 'friend' | 'avatar'} favoriteGroupType The type of group to fetch, must be a valid FavoriteType. + * @param {string} favoriteGroupName The name of the group to fetch, must be a name of a FavoriteGroup. + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + clearFavoriteGroup: async (favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'favoriteGroupType' is not null or undefined + assertParamExists('clearFavoriteGroup', 'favoriteGroupType', favoriteGroupType) + // verify required parameter 'favoriteGroupName' is not null or undefined + assertParamExists('clearFavoriteGroup', 'favoriteGroupName', favoriteGroupName) + // verify required parameter 'userId' is not null or undefined + assertParamExists('clearFavoriteGroup', 'userId', userId) + const localVarPath = `/favorite/group/{favoriteGroupType}/{favoriteGroupName}/{userId}` + .replace(`{${"favoriteGroupType"}}`, encodeURIComponent(String(favoriteGroupType))) + .replace(`{${"favoriteGroupName"}}`, encodeURIComponent(String(favoriteGroupName))) + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Return information about a specific Favorite. + * @summary Show Favorite + * @param {string} favoriteId Must be a valid favorite ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFavorite: async (favoriteId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'favoriteId' is not null or undefined + assertParamExists('getFavorite', 'favoriteId', favoriteId) + const localVarPath = `/favorites/{favoriteId}` + .replace(`{${"favoriteId"}}`, encodeURIComponent(String(favoriteId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Fetch information about a specific favorite group. + * @summary Show Favorite Group + * @param {'world' | 'friend' | 'avatar'} favoriteGroupType The type of group to fetch, must be a valid FavoriteType. + * @param {string} favoriteGroupName The name of the group to fetch, must be a name of a FavoriteGroup. + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFavoriteGroup: async (favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'favoriteGroupType' is not null or undefined + assertParamExists('getFavoriteGroup', 'favoriteGroupType', favoriteGroupType) + // verify required parameter 'favoriteGroupName' is not null or undefined + assertParamExists('getFavoriteGroup', 'favoriteGroupName', favoriteGroupName) + // verify required parameter 'userId' is not null or undefined + assertParamExists('getFavoriteGroup', 'userId', userId) + const localVarPath = `/favorite/group/{favoriteGroupType}/{favoriteGroupName}/{userId}` + .replace(`{${"favoriteGroupType"}}`, encodeURIComponent(String(favoriteGroupType))) + .replace(`{${"favoriteGroupName"}}`, encodeURIComponent(String(favoriteGroupName))) + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Return a list of favorite groups owned by a user. Returns the same information as `getFavoriteGroups`. + * @summary List Favorite Groups + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [ownerId] The owner of whoms favorite groups to return. Must be a UserID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFavoriteGroups: async (n?: number, offset?: number, ownerId?: string, options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/favorite/groups`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + if (n !== undefined) { + localVarQueryParameter['n'] = n; + } + + if (offset !== undefined) { + localVarQueryParameter['offset'] = offset; + } + + if (ownerId !== undefined) { + localVarQueryParameter['ownerId'] = ownerId; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Returns a list of favorites. + * @summary List Favorites + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [type] The type of favorites to return, FavoriteType. + * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFavorites: async (n?: number, offset?: number, type?: string, tag?: string, options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/favorites`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + if (n !== undefined) { + localVarQueryParameter['n'] = n; + } + + if (offset !== undefined) { + localVarQueryParameter['offset'] = offset; + } + + if (type !== undefined) { + localVarQueryParameter['type'] = type; + } + + if (tag !== undefined) { + localVarQueryParameter['tag'] = tag; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Remove a favorite from your favorites list. + * @summary Remove Favorite + * @param {string} favoriteId Must be a valid favorite ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + removeFavorite: async (favoriteId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'favoriteId' is not null or undefined + assertParamExists('removeFavorite', 'favoriteId', favoriteId) + const localVarPath = `/favorites/{favoriteId}` + .replace(`{${"favoriteId"}}`, encodeURIComponent(String(favoriteId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Update information about a specific favorite group. + * @summary Update Favorite Group + * @param {'world' | 'friend' | 'avatar'} favoriteGroupType The type of group to fetch, must be a valid FavoriteType. + * @param {string} favoriteGroupName The name of the group to fetch, must be a name of a FavoriteGroup. + * @param {string} userId Must be a valid user ID. + * @param {UpdateFavoriteGroupRequest} [updateFavoriteGroupRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + updateFavoriteGroup: async (favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, updateFavoriteGroupRequest?: UpdateFavoriteGroupRequest, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'favoriteGroupType' is not null or undefined + assertParamExists('updateFavoriteGroup', 'favoriteGroupType', favoriteGroupType) + // verify required parameter 'favoriteGroupName' is not null or undefined + assertParamExists('updateFavoriteGroup', 'favoriteGroupName', favoriteGroupName) + // verify required parameter 'userId' is not null or undefined + assertParamExists('updateFavoriteGroup', 'userId', userId) + const localVarPath = `/favorite/group/{favoriteGroupType}/{favoriteGroupName}/{userId}` + .replace(`{${"favoriteGroupType"}}`, encodeURIComponent(String(favoriteGroupType))) + .replace(`{${"favoriteGroupName"}}`, encodeURIComponent(String(favoriteGroupName))) + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(updateFavoriteGroupRequest, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + } +}; + +/** + * FavoritesApi - functional programming interface + * @export + */ +export const FavoritesApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = FavoritesApiAxiosParamCreator(configuration) + return { + /** + * Add a new favorite. Friend groups are named `group_0` through `group_3`. Avatar and World groups are named `avatars1` to `avatars4` and `worlds1` to `worlds4`. You cannot add people whom you are not friends with to your friends list. Destroying a friendship removes the person as favorite on both sides. + * @summary Add Favorite + * @param {AddFavoriteRequest} [addFavoriteRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async addFavorite(addFavoriteRequest?: AddFavoriteRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.addFavorite(addFavoriteRequest, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Clear ALL contents of a specific favorite group. + * @summary Clear Favorite Group + * @param {'world' | 'friend' | 'avatar'} favoriteGroupType The type of group to fetch, must be a valid FavoriteType. + * @param {string} favoriteGroupName The name of the group to fetch, must be a name of a FavoriteGroup. + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async clearFavoriteGroup(favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.clearFavoriteGroup(favoriteGroupType, favoriteGroupName, userId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Return information about a specific Favorite. + * @summary Show Favorite + * @param {string} favoriteId Must be a valid favorite ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getFavorite(favoriteId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getFavorite(favoriteId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Fetch information about a specific favorite group. + * @summary Show Favorite Group + * @param {'world' | 'friend' | 'avatar'} favoriteGroupType The type of group to fetch, must be a valid FavoriteType. + * @param {string} favoriteGroupName The name of the group to fetch, must be a name of a FavoriteGroup. + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getFavoriteGroup(favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getFavoriteGroup(favoriteGroupType, favoriteGroupName, userId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Return a list of favorite groups owned by a user. Returns the same information as `getFavoriteGroups`. + * @summary List Favorite Groups + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [ownerId] The owner of whoms favorite groups to return. Must be a UserID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getFavoriteGroups(n?: number, offset?: number, ownerId?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getFavoriteGroups(n, offset, ownerId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Returns a list of favorites. + * @summary List Favorites + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [type] The type of favorites to return, FavoriteType. + * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getFavorites(n?: number, offset?: number, type?: string, tag?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getFavorites(n, offset, type, tag, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Remove a favorite from your favorites list. + * @summary Remove Favorite + * @param {string} favoriteId Must be a valid favorite ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async removeFavorite(favoriteId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.removeFavorite(favoriteId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Update information about a specific favorite group. + * @summary Update Favorite Group + * @param {'world' | 'friend' | 'avatar'} favoriteGroupType The type of group to fetch, must be a valid FavoriteType. + * @param {string} favoriteGroupName The name of the group to fetch, must be a name of a FavoriteGroup. + * @param {string} userId Must be a valid user ID. + * @param {UpdateFavoriteGroupRequest} [updateFavoriteGroupRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async updateFavoriteGroup(favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, updateFavoriteGroupRequest?: UpdateFavoriteGroupRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.updateFavoriteGroup(favoriteGroupType, favoriteGroupName, userId, updateFavoriteGroupRequest, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + } +}; + +/** + * FavoritesApi - factory interface + * @export + */ +export const FavoritesApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = FavoritesApiFp(configuration) + return { + /** + * Add a new favorite. Friend groups are named `group_0` through `group_3`. Avatar and World groups are named `avatars1` to `avatars4` and `worlds1` to `worlds4`. You cannot add people whom you are not friends with to your friends list. Destroying a friendship removes the person as favorite on both sides. + * @summary Add Favorite + * @param {AddFavoriteRequest} [addFavoriteRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + addFavorite(addFavoriteRequest?: AddFavoriteRequest, options?: any): AxiosPromise { + return localVarFp.addFavorite(addFavoriteRequest, options).then((request) => request(axios, basePath)); + }, + /** + * Clear ALL contents of a specific favorite group. + * @summary Clear Favorite Group + * @param {'world' | 'friend' | 'avatar'} favoriteGroupType The type of group to fetch, must be a valid FavoriteType. + * @param {string} favoriteGroupName The name of the group to fetch, must be a name of a FavoriteGroup. + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + clearFavoriteGroup(favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, options?: any): AxiosPromise { + return localVarFp.clearFavoriteGroup(favoriteGroupType, favoriteGroupName, userId, options).then((request) => request(axios, basePath)); + }, + /** + * Return information about a specific Favorite. + * @summary Show Favorite + * @param {string} favoriteId Must be a valid favorite ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFavorite(favoriteId: string, options?: any): AxiosPromise { + return localVarFp.getFavorite(favoriteId, options).then((request) => request(axios, basePath)); + }, + /** + * Fetch information about a specific favorite group. + * @summary Show Favorite Group + * @param {'world' | 'friend' | 'avatar'} favoriteGroupType The type of group to fetch, must be a valid FavoriteType. + * @param {string} favoriteGroupName The name of the group to fetch, must be a name of a FavoriteGroup. + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFavoriteGroup(favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, options?: any): AxiosPromise { + return localVarFp.getFavoriteGroup(favoriteGroupType, favoriteGroupName, userId, options).then((request) => request(axios, basePath)); + }, + /** + * Return a list of favorite groups owned by a user. Returns the same information as `getFavoriteGroups`. + * @summary List Favorite Groups + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [ownerId] The owner of whoms favorite groups to return. Must be a UserID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFavoriteGroups(n?: number, offset?: number, ownerId?: string, options?: any): AxiosPromise> { + return localVarFp.getFavoriteGroups(n, offset, ownerId, options).then((request) => request(axios, basePath)); + }, + /** + * Returns a list of favorites. + * @summary List Favorites + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [type] The type of favorites to return, FavoriteType. + * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFavorites(n?: number, offset?: number, type?: string, tag?: string, options?: any): AxiosPromise> { + return localVarFp.getFavorites(n, offset, type, tag, options).then((request) => request(axios, basePath)); + }, + /** + * Remove a favorite from your favorites list. + * @summary Remove Favorite + * @param {string} favoriteId Must be a valid favorite ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + removeFavorite(favoriteId: string, options?: any): AxiosPromise { + return localVarFp.removeFavorite(favoriteId, options).then((request) => request(axios, basePath)); + }, + /** + * Update information about a specific favorite group. + * @summary Update Favorite Group + * @param {'world' | 'friend' | 'avatar'} favoriteGroupType The type of group to fetch, must be a valid FavoriteType. + * @param {string} favoriteGroupName The name of the group to fetch, must be a name of a FavoriteGroup. + * @param {string} userId Must be a valid user ID. + * @param {UpdateFavoriteGroupRequest} [updateFavoriteGroupRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + updateFavoriteGroup(favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, updateFavoriteGroupRequest?: UpdateFavoriteGroupRequest, options?: any): AxiosPromise { + return localVarFp.updateFavoriteGroup(favoriteGroupType, favoriteGroupName, userId, updateFavoriteGroupRequest, options).then((request) => request(axios, basePath)); + }, + }; +}; + +/** + * FavoritesApi - object-oriented interface + * @export + * @class FavoritesApi + * @extends {BaseAPI} + */ +export class FavoritesApi extends BaseAPI { + /** + * Add a new favorite. Friend groups are named `group_0` through `group_3`. Avatar and World groups are named `avatars1` to `avatars4` and `worlds1` to `worlds4`. You cannot add people whom you are not friends with to your friends list. Destroying a friendship removes the person as favorite on both sides. + * @summary Add Favorite + * @param {AddFavoriteRequest} [addFavoriteRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FavoritesApi + */ + public addFavorite(addFavoriteRequest?: AddFavoriteRequest, options?: AxiosRequestConfig) { + return FavoritesApiFp(this.configuration).addFavorite(addFavoriteRequest, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Clear ALL contents of a specific favorite group. + * @summary Clear Favorite Group + * @param {'world' | 'friend' | 'avatar'} favoriteGroupType The type of group to fetch, must be a valid FavoriteType. + * @param {string} favoriteGroupName The name of the group to fetch, must be a name of a FavoriteGroup. + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FavoritesApi + */ + public clearFavoriteGroup(favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, options?: AxiosRequestConfig) { + return FavoritesApiFp(this.configuration).clearFavoriteGroup(favoriteGroupType, favoriteGroupName, userId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Return information about a specific Favorite. + * @summary Show Favorite + * @param {string} favoriteId Must be a valid favorite ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FavoritesApi + */ + public getFavorite(favoriteId: string, options?: AxiosRequestConfig) { + return FavoritesApiFp(this.configuration).getFavorite(favoriteId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Fetch information about a specific favorite group. + * @summary Show Favorite Group + * @param {'world' | 'friend' | 'avatar'} favoriteGroupType The type of group to fetch, must be a valid FavoriteType. + * @param {string} favoriteGroupName The name of the group to fetch, must be a name of a FavoriteGroup. + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FavoritesApi + */ + public getFavoriteGroup(favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, options?: AxiosRequestConfig) { + return FavoritesApiFp(this.configuration).getFavoriteGroup(favoriteGroupType, favoriteGroupName, userId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Return a list of favorite groups owned by a user. Returns the same information as `getFavoriteGroups`. + * @summary List Favorite Groups + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [ownerId] The owner of whoms favorite groups to return. Must be a UserID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FavoritesApi + */ + public getFavoriteGroups(n?: number, offset?: number, ownerId?: string, options?: AxiosRequestConfig) { + return FavoritesApiFp(this.configuration).getFavoriteGroups(n, offset, ownerId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Returns a list of favorites. + * @summary List Favorites + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [type] The type of favorites to return, FavoriteType. + * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FavoritesApi + */ + public getFavorites(n?: number, offset?: number, type?: string, tag?: string, options?: AxiosRequestConfig) { + return FavoritesApiFp(this.configuration).getFavorites(n, offset, type, tag, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Remove a favorite from your favorites list. + * @summary Remove Favorite + * @param {string} favoriteId Must be a valid favorite ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FavoritesApi + */ + public removeFavorite(favoriteId: string, options?: AxiosRequestConfig) { + return FavoritesApiFp(this.configuration).removeFavorite(favoriteId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Update information about a specific favorite group. + * @summary Update Favorite Group + * @param {'world' | 'friend' | 'avatar'} favoriteGroupType The type of group to fetch, must be a valid FavoriteType. + * @param {string} favoriteGroupName The name of the group to fetch, must be a name of a FavoriteGroup. + * @param {string} userId Must be a valid user ID. + * @param {UpdateFavoriteGroupRequest} [updateFavoriteGroupRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FavoritesApi + */ + public updateFavoriteGroup(favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, updateFavoriteGroupRequest?: UpdateFavoriteGroupRequest, options?: AxiosRequestConfig) { + return FavoritesApiFp(this.configuration).updateFavoriteGroup(favoriteGroupType, favoriteGroupName, userId, updateFavoriteGroupRequest, options).then((request) => request(this.axios, this.basePath)); + } +} + + +/** + * FilesApi - axios parameter creator + * @export + */ +export const FilesApiAxiosParamCreator = function (configuration?: Configuration) { + return { + /** + * Creates a new File object + * @summary Create File + * @param {CreateFileRequest} [createFileRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + createFile: async (createFileRequest?: CreateFileRequest, options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/file`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(createFileRequest, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, }; }, /** - * Deletes the account with given ID. Normal users only have permission to delete their own account. Account deletion is 14 days from this request, and will be cancelled if you do an authenticated request with the account afterwards. **VRC+ NOTE:** Despite the 14-days cooldown, any VRC+ subscription will be cancelled **immediately**. **METHOD NOTE:** Despite this being a Delete action, the method type required is PUT. - * @summary Delete User - * @param {string} userId + * Creates a new FileVersion. Once a Version has been created, proceed to the `/file/{fileId}/{versionId}/file/start` endpoint to start a file upload. + * @summary Create File Version + * @param {string} fileId Must be a valid file ID. + * @param {CreateFileVersionRequest} [createFileVersionRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - deleteUser: async (userId: string, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'userId' is not null or undefined - assertParamExists('deleteUser', 'userId', userId) - const localVarPath = `/user/{userId}/delete` - .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); + createFileVersion: async (fileId: string, createFileVersionRequest?: CreateFileVersionRequest, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'fileId' is not null or undefined + assertParamExists('createFileVersion', 'fileId', fileId) + const localVarPath = `/file/{fileId}` + .replace(`{${"fileId"}}`, encodeURIComponent(String(fileId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -4297,7 +8018,7 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; @@ -4307,9 +8028,12 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf + localVarHeaderParameter['Content-Type'] = 'application/json'; + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(createFileVersionRequest, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), @@ -4317,13 +8041,17 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf }; }, /** - * This endpoint does the following two operations: 1) Checks if you are already logged in by looking for a valid `auth` cookie. If you are have a valid auth cookie then no additional auth-related actions are taken. If you are **not** logged in then it will log you in with the `Authorization` header and set the `auth` cookie. The `auth` cookie will only be sent once. 2) If logged in, this function will also return the CurrentUser object containing detailed information about the currently logged in user. The auth string after `Authorization: Basic {string}` is a base64-encoded string of the username and password, both individually url-encoded, and then joined with a colon. > base64(urlencode(username):urlencode(password)) **WARNING: Session Limit:** Each authentication with login credentials counts as a separate session, out of which you have a limited amount. Make sure to save and reuse the `auth` cookie if you are often restarting the program. The provided API libraries automatically save cookies during runtime, but does not persist during restart. While it can be fine to use username/password during development, expect in production to very fast run into the rate-limit and be temporarily blocked from making new sessions until older ones expire. The exact number of simultaneous sessions is unknown/undisclosed. - * @summary Login and/or Get Current User Info + * Deletes a File object. + * @summary Delete File + * @param {string} fileId Must be a valid file ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getCurrentUser: async (options: AxiosRequestConfig = {}): Promise => { - const localVarPath = `/auth/user`; + deleteFile: async (fileId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'fileId' is not null or undefined + assertParamExists('deleteFile', 'fileId', fileId) + const localVarPath = `/file/{fileId}` + .replace(`{${"fileId"}}`, encodeURIComponent(String(fileId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -4331,17 +8059,55 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; + // authentication apiKeyCookie required + // authentication authCookie required - // authentication authHeader required - // http basic authentication required - setBasicAuthToObject(localVarRequestOptions, configuration) - // authentication twoFactorAuthCookie required + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Delete a specific version of a file. You can only delete the latest version. + * @summary Delete File Version + * @param {string} fileId Must be a valid file ID. + * @param {number} versionId Version ID of the asset. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + deleteFileVersion: async (fileId: string, versionId: number, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'fileId' is not null or undefined + assertParamExists('deleteFileVersion', 'fileId', fileId) + // verify required parameter 'versionId' is not null or undefined + assertParamExists('deleteFileVersion', 'versionId', versionId) + const localVarPath = `/file/{fileId}/{versionId}` + .replace(`{${"fileId"}}`, encodeURIComponent(String(fileId))) + .replace(`{${"versionId"}}`, encodeURIComponent(String(versionId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required @@ -4355,13 +8121,21 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf }; }, /** - * Invalidates the login session. - * @summary Logout + * Downloads the file with the provided version number. **Version Note:** Version 0 is always when the file was created. The real data is usually always located in version 1 and up. **Extension Note:** Files are not guaranteed to have a file extensions. UnityPackage files tends to have it, images through this endpoint do not. You are responsible for appending file extension from the `extension` field when neccesary. + * @summary Download File Version + * @param {string} fileId Must be a valid file ID. + * @param {number} versionId Version ID of the asset. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - logout: async (options: AxiosRequestConfig = {}): Promise => { - const localVarPath = `/logout`; + downloadFileVersion: async (fileId: string, versionId: number, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'fileId' is not null or undefined + assertParamExists('downloadFileVersion', 'fileId', fileId) + // verify required parameter 'versionId' is not null or undefined + assertParamExists('downloadFileVersion', 'versionId', versionId) + const localVarPath = `/file/{fileId}/{versionId}` + .replace(`{${"fileId"}}`, encodeURIComponent(String(fileId))) + .replace(`{${"versionId"}}`, encodeURIComponent(String(versionId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -4369,10 +8143,12 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; + // authentication apiKeyCookie required + // authentication authCookie required @@ -4387,14 +8163,26 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf }; }, /** - * Finishes the login sequence with a normal 2FA-generated code for accounts with 2FA-protection enabled. - * @summary Verify 2FA code - * @param {TwoFactorAuthCode} [twoFactorAuthCode] + * Finish an upload of a FileData. This will mark it as \"complete\". After uploading the `file` for Avatars and Worlds you then have to upload a `signature` file. + * @summary Finish FileData Upload + * @param {string} fileId Must be a valid file ID. + * @param {number} versionId Version ID of the asset. + * @param {'file' | 'signature' | 'delta'} fileType Type of file. + * @param {FinishFileDataUploadRequest} [finishFileDataUploadRequest] Please see documentation on ETag\'s: [https://teppen.io/2018/06/23/aws_s3_etags/](https://teppen.io/2018/06/23/aws_s3_etags/) ETag\'s should NOT be present when uploading a `signature`. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - verify2FA: async (twoFactorAuthCode?: TwoFactorAuthCode, options: AxiosRequestConfig = {}): Promise => { - const localVarPath = `/auth/twofactorauth/totp/verify`; + finishFileDataUpload: async (fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', finishFileDataUploadRequest?: FinishFileDataUploadRequest, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'fileId' is not null or undefined + assertParamExists('finishFileDataUpload', 'fileId', fileId) + // verify required parameter 'versionId' is not null or undefined + assertParamExists('finishFileDataUpload', 'versionId', versionId) + // verify required parameter 'fileType' is not null or undefined + assertParamExists('finishFileDataUpload', 'fileType', fileType) + const localVarPath = `/file/{fileId}/{versionId}/{fileType}/finish` + .replace(`{${"fileId"}}`, encodeURIComponent(String(fileId))) + .replace(`{${"versionId"}}`, encodeURIComponent(String(versionId))) + .replace(`{${"fileType"}}`, encodeURIComponent(String(fileType))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -4402,10 +8190,12 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; + // authentication apiKeyCookie required + // authentication authCookie required @@ -4415,7 +8205,7 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - localVarRequestOptions.data = serializeDataIfNeeded(twoFactorAuthCode, localVarRequestOptions, configuration) + localVarRequestOptions.data = serializeDataIfNeeded(finishFileDataUploadRequest, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), @@ -4423,13 +8213,17 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf }; }, /** - * Verify whether the currently provided Auth Token is valid. - * @summary Verify Auth Token + * Shows general information about the \"File\" object. Each File can have several \"Version\"\'s, and each Version can have multiple real files or \"Data\" blobs. + * @summary Show File + * @param {string} fileId Must be a valid file ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - verifyAuthToken: async (options: AxiosRequestConfig = {}): Promise => { - const localVarPath = `/auth`; + getFile: async (fileId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'fileId' is not null or undefined + assertParamExists('getFile', 'fileId', fileId) + const localVarPath = `/file/{fileId}` + .replace(`{${"fileId"}}`, encodeURIComponent(String(fileId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -4441,6 +8235,8 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; + // authentication apiKeyCookie required + // authentication authCookie required @@ -4455,14 +8251,126 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf }; }, /** - * Finishes the login sequence with an OTP (One Time Password) recovery code for accounts with 2FA-protection enabled. - * @summary Verify 2FA code with Recovery code - * @param {TwoFactorAuthCode} [twoFactorAuthCode] + * Retrieves the upload status for file upload. Can currently only be accessed when `status` is `waiting`. Trying to access it on a file version already uploaded currently times out. + * @summary Check FileData Upload Status + * @param {string} fileId Must be a valid file ID. + * @param {number} versionId Version ID of the asset. + * @param {'file' | 'signature' | 'delta'} fileType Type of file. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - verifyRecoveryCode: async (twoFactorAuthCode?: TwoFactorAuthCode, options: AxiosRequestConfig = {}): Promise => { - const localVarPath = `/auth/twofactorauth/otp/verify`; + getFileDataUploadStatus: async (fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'fileId' is not null or undefined + assertParamExists('getFileDataUploadStatus', 'fileId', fileId) + // verify required parameter 'versionId' is not null or undefined + assertParamExists('getFileDataUploadStatus', 'versionId', versionId) + // verify required parameter 'fileType' is not null or undefined + assertParamExists('getFileDataUploadStatus', 'fileType', fileType) + const localVarPath = `/file/{fileId}/{versionId}/{fileType}/status` + .replace(`{${"fileId"}}`, encodeURIComponent(String(fileId))) + .replace(`{${"versionId"}}`, encodeURIComponent(String(versionId))) + .replace(`{${"fileType"}}`, encodeURIComponent(String(fileType))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Returns a list of files + * @summary List Files + * @param {string} [tag] Tag, for example \"icon\" or \"gallery\", not included by default. + * @param {string} [userId] UserID, will always generate a 500 permission error. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFiles: async (tag?: string, userId?: string, n?: number, offset?: number, options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/files`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + if (tag !== undefined) { + localVarQueryParameter['tag'] = tag; + } + + if (userId !== undefined) { + localVarQueryParameter['userId'] = userId; + } + + if (n !== undefined) { + localVarQueryParameter['n'] = n; + } + + if (offset !== undefined) { + localVarQueryParameter['offset'] = offset; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Starts an upload of a specific FilePart. This endpoint will return an AWS URL which you can PUT data to. You need to call this and receive a new AWS API URL for each `partNumber`. Please see AWS\'s REST documentation on \"PUT Object to S3\" on how to upload. Once all parts has been uploaded, proceed to `/finish` endpoint. **Note:** `nextPartNumber` seems like it is always ignored. Despite it returning 0, first partNumber is always 1. + * @summary Start FileData Upload + * @param {string} fileId Must be a valid file ID. + * @param {number} versionId Version ID of the asset. + * @param {'file' | 'signature' | 'delta'} fileType Type of file. + * @param {number} [partNumber] The part number to start uploading. If not provided, the first part will be started. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + startFileDataUpload: async (fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', partNumber?: number, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'fileId' is not null or undefined + assertParamExists('startFileDataUpload', 'fileId', fileId) + // verify required parameter 'versionId' is not null or undefined + assertParamExists('startFileDataUpload', 'versionId', versionId) + // verify required parameter 'fileType' is not null or undefined + assertParamExists('startFileDataUpload', 'fileType', fileType) + const localVarPath = `/file/{fileId}/{versionId}/{fileType}/start` + .replace(`{${"fileId"}}`, encodeURIComponent(String(fileId))) + .replace(`{${"versionId"}}`, encodeURIComponent(String(versionId))) + .replace(`{${"fileType"}}`, encodeURIComponent(String(fileType))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -4470,20 +8378,23 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; + // authentication apiKeyCookie required + // authentication authCookie required + if (partNumber !== undefined) { + localVarQueryParameter['partNumber'] = partNumber; + } + - localVarHeaderParameter['Content-Type'] = 'application/json'; - setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - localVarRequestOptions.data = serializeDataIfNeeded(twoFactorAuthCode, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), @@ -4494,280 +8405,424 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf }; /** - * AuthenticationApi - functional programming interface + * FilesApi - functional programming interface * @export */ -export const AuthenticationApiFp = function(configuration?: Configuration) { - const localVarAxiosParamCreator = AuthenticationApiAxiosParamCreator(configuration) +export const FilesApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = FilesApiAxiosParamCreator(configuration) return { /** - * Checks if a user by a given `username`, `displayName` or `email` exist. This is used during registration to check if a username has already been taken, during change of displayName to check if a displayName is available, and during change of email to check if the email is already used. In the later two cases the `excludeUserId` is used to exclude oneself, otherwise the result would always be true. It is **REQUIRED** to include **AT LEAST** `username`, `displayName` **or** `email` query parameter. Although they can be combined - in addition with `excludeUserId` (generally to exclude yourself) - to further fine-tune the search. - * @summary Check User Exists - * @param {string} [email] Filter by email. - * @param {string} [displayName] Filter by displayName. - * @param {string} [userId] Filter by UserID. - * @param {string} [excludeUserId] Exclude by UserID. + * Creates a new File object + * @summary Create File + * @param {CreateFileRequest} [createFileRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async checkUserExists(email?: string, displayName?: string, userId?: string, excludeUserId?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.checkUserExists(email, displayName, userId, excludeUserId, options); + async createFile(createFileRequest?: CreateFileRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.createFile(createFileRequest, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Deletes the account with given ID. Normal users only have permission to delete their own account. Account deletion is 14 days from this request, and will be cancelled if you do an authenticated request with the account afterwards. **VRC+ NOTE:** Despite the 14-days cooldown, any VRC+ subscription will be cancelled **immediately**. **METHOD NOTE:** Despite this being a Delete action, the method type required is PUT. - * @summary Delete User - * @param {string} userId + * Creates a new FileVersion. Once a Version has been created, proceed to the `/file/{fileId}/{versionId}/file/start` endpoint to start a file upload. + * @summary Create File Version + * @param {string} fileId Must be a valid file ID. + * @param {CreateFileVersionRequest} [createFileVersionRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async deleteUser(userId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.deleteUser(userId, options); + async createFileVersion(fileId: string, createFileVersionRequest?: CreateFileVersionRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.createFileVersion(fileId, createFileVersionRequest, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * This endpoint does the following two operations: 1) Checks if you are already logged in by looking for a valid `auth` cookie. If you are have a valid auth cookie then no additional auth-related actions are taken. If you are **not** logged in then it will log you in with the `Authorization` header and set the `auth` cookie. The `auth` cookie will only be sent once. 2) If logged in, this function will also return the CurrentUser object containing detailed information about the currently logged in user. The auth string after `Authorization: Basic {string}` is a base64-encoded string of the username and password, both individually url-encoded, and then joined with a colon. > base64(urlencode(username):urlencode(password)) **WARNING: Session Limit:** Each authentication with login credentials counts as a separate session, out of which you have a limited amount. Make sure to save and reuse the `auth` cookie if you are often restarting the program. The provided API libraries automatically save cookies during runtime, but does not persist during restart. While it can be fine to use username/password during development, expect in production to very fast run into the rate-limit and be temporarily blocked from making new sessions until older ones expire. The exact number of simultaneous sessions is unknown/undisclosed. - * @summary Login and/or Get Current User Info + * Deletes a File object. + * @summary Delete File + * @param {string} fileId Must be a valid file ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getCurrentUser(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getCurrentUser(options); + async deleteFile(fileId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.deleteFile(fileId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Invalidates the login session. - * @summary Logout + * Delete a specific version of a file. You can only delete the latest version. + * @summary Delete File Version + * @param {string} fileId Must be a valid file ID. + * @param {number} versionId Version ID of the asset. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async logout(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.logout(options); + async deleteFileVersion(fileId: string, versionId: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.deleteFileVersion(fileId, versionId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Finishes the login sequence with a normal 2FA-generated code for accounts with 2FA-protection enabled. - * @summary Verify 2FA code - * @param {TwoFactorAuthCode} [twoFactorAuthCode] + * Downloads the file with the provided version number. **Version Note:** Version 0 is always when the file was created. The real data is usually always located in version 1 and up. **Extension Note:** Files are not guaranteed to have a file extensions. UnityPackage files tends to have it, images through this endpoint do not. You are responsible for appending file extension from the `extension` field when neccesary. + * @summary Download File Version + * @param {string} fileId Must be a valid file ID. + * @param {number} versionId Version ID of the asset. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async verify2FA(twoFactorAuthCode?: TwoFactorAuthCode, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.verify2FA(twoFactorAuthCode, options); + async downloadFileVersion(fileId: string, versionId: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.downloadFileVersion(fileId, versionId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Verify whether the currently provided Auth Token is valid. - * @summary Verify Auth Token + * Finish an upload of a FileData. This will mark it as \"complete\". After uploading the `file` for Avatars and Worlds you then have to upload a `signature` file. + * @summary Finish FileData Upload + * @param {string} fileId Must be a valid file ID. + * @param {number} versionId Version ID of the asset. + * @param {'file' | 'signature' | 'delta'} fileType Type of file. + * @param {FinishFileDataUploadRequest} [finishFileDataUploadRequest] Please see documentation on ETag\'s: [https://teppen.io/2018/06/23/aws_s3_etags/](https://teppen.io/2018/06/23/aws_s3_etags/) ETag\'s should NOT be present when uploading a `signature`. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async verifyAuthToken(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.verifyAuthToken(options); + async finishFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', finishFileDataUploadRequest?: FinishFileDataUploadRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.finishFileDataUpload(fileId, versionId, fileType, finishFileDataUploadRequest, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Finishes the login sequence with an OTP (One Time Password) recovery code for accounts with 2FA-protection enabled. - * @summary Verify 2FA code with Recovery code - * @param {TwoFactorAuthCode} [twoFactorAuthCode] + * Shows general information about the \"File\" object. Each File can have several \"Version\"\'s, and each Version can have multiple real files or \"Data\" blobs. + * @summary Show File + * @param {string} fileId Must be a valid file ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async verifyRecoveryCode(twoFactorAuthCode?: TwoFactorAuthCode, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.verifyRecoveryCode(twoFactorAuthCode, options); + async getFile(fileId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getFile(fileId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Retrieves the upload status for file upload. Can currently only be accessed when `status` is `waiting`. Trying to access it on a file version already uploaded currently times out. + * @summary Check FileData Upload Status + * @param {string} fileId Must be a valid file ID. + * @param {number} versionId Version ID of the asset. + * @param {'file' | 'signature' | 'delta'} fileType Type of file. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getFileDataUploadStatus(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getFileDataUploadStatus(fileId, versionId, fileType, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Returns a list of files + * @summary List Files + * @param {string} [tag] Tag, for example \"icon\" or \"gallery\", not included by default. + * @param {string} [userId] UserID, will always generate a 500 permission error. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getFiles(tag?: string, userId?: string, n?: number, offset?: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getFiles(tag, userId, n, offset, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Starts an upload of a specific FilePart. This endpoint will return an AWS URL which you can PUT data to. You need to call this and receive a new AWS API URL for each `partNumber`. Please see AWS\'s REST documentation on \"PUT Object to S3\" on how to upload. Once all parts has been uploaded, proceed to `/finish` endpoint. **Note:** `nextPartNumber` seems like it is always ignored. Despite it returning 0, first partNumber is always 1. + * @summary Start FileData Upload + * @param {string} fileId Must be a valid file ID. + * @param {number} versionId Version ID of the asset. + * @param {'file' | 'signature' | 'delta'} fileType Type of file. + * @param {number} [partNumber] The part number to start uploading. If not provided, the first part will be started. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async startFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', partNumber?: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.startFileDataUpload(fileId, versionId, fileType, partNumber, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, } }; /** - * AuthenticationApi - factory interface + * FilesApi - factory interface * @export */ -export const AuthenticationApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { - const localVarFp = AuthenticationApiFp(configuration) +export const FilesApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = FilesApiFp(configuration) return { /** - * Checks if a user by a given `username`, `displayName` or `email` exist. This is used during registration to check if a username has already been taken, during change of displayName to check if a displayName is available, and during change of email to check if the email is already used. In the later two cases the `excludeUserId` is used to exclude oneself, otherwise the result would always be true. It is **REQUIRED** to include **AT LEAST** `username`, `displayName` **or** `email` query parameter. Although they can be combined - in addition with `excludeUserId` (generally to exclude yourself) - to further fine-tune the search. - * @summary Check User Exists - * @param {string} [email] Filter by email. - * @param {string} [displayName] Filter by displayName. - * @param {string} [userId] Filter by UserID. - * @param {string} [excludeUserId] Exclude by UserID. + * Creates a new File object + * @summary Create File + * @param {CreateFileRequest} [createFileRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - checkUserExists(email?: string, displayName?: string, userId?: string, excludeUserId?: string, options?: any): AxiosPromise { - return localVarFp.checkUserExists(email, displayName, userId, excludeUserId, options).then((request) => request(axios, basePath)); + createFile(createFileRequest?: CreateFileRequest, options?: any): AxiosPromise { + return localVarFp.createFile(createFileRequest, options).then((request) => request(axios, basePath)); }, /** - * Deletes the account with given ID. Normal users only have permission to delete their own account. Account deletion is 14 days from this request, and will be cancelled if you do an authenticated request with the account afterwards. **VRC+ NOTE:** Despite the 14-days cooldown, any VRC+ subscription will be cancelled **immediately**. **METHOD NOTE:** Despite this being a Delete action, the method type required is PUT. - * @summary Delete User - * @param {string} userId + * Creates a new FileVersion. Once a Version has been created, proceed to the `/file/{fileId}/{versionId}/file/start` endpoint to start a file upload. + * @summary Create File Version + * @param {string} fileId Must be a valid file ID. + * @param {CreateFileVersionRequest} [createFileVersionRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - deleteUser(userId: string, options?: any): AxiosPromise { - return localVarFp.deleteUser(userId, options).then((request) => request(axios, basePath)); + createFileVersion(fileId: string, createFileVersionRequest?: CreateFileVersionRequest, options?: any): AxiosPromise { + return localVarFp.createFileVersion(fileId, createFileVersionRequest, options).then((request) => request(axios, basePath)); }, /** - * This endpoint does the following two operations: 1) Checks if you are already logged in by looking for a valid `auth` cookie. If you are have a valid auth cookie then no additional auth-related actions are taken. If you are **not** logged in then it will log you in with the `Authorization` header and set the `auth` cookie. The `auth` cookie will only be sent once. 2) If logged in, this function will also return the CurrentUser object containing detailed information about the currently logged in user. The auth string after `Authorization: Basic {string}` is a base64-encoded string of the username and password, both individually url-encoded, and then joined with a colon. > base64(urlencode(username):urlencode(password)) **WARNING: Session Limit:** Each authentication with login credentials counts as a separate session, out of which you have a limited amount. Make sure to save and reuse the `auth` cookie if you are often restarting the program. The provided API libraries automatically save cookies during runtime, but does not persist during restart. While it can be fine to use username/password during development, expect in production to very fast run into the rate-limit and be temporarily blocked from making new sessions until older ones expire. The exact number of simultaneous sessions is unknown/undisclosed. - * @summary Login and/or Get Current User Info + * Deletes a File object. + * @summary Delete File + * @param {string} fileId Must be a valid file ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getCurrentUser(options?: any): AxiosPromise { - return localVarFp.getCurrentUser(options).then((request) => request(axios, basePath)); + deleteFile(fileId: string, options?: any): AxiosPromise { + return localVarFp.deleteFile(fileId, options).then((request) => request(axios, basePath)); }, /** - * Invalidates the login session. - * @summary Logout + * Delete a specific version of a file. You can only delete the latest version. + * @summary Delete File Version + * @param {string} fileId Must be a valid file ID. + * @param {number} versionId Version ID of the asset. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - logout(options?: any): AxiosPromise { - return localVarFp.logout(options).then((request) => request(axios, basePath)); + deleteFileVersion(fileId: string, versionId: number, options?: any): AxiosPromise { + return localVarFp.deleteFileVersion(fileId, versionId, options).then((request) => request(axios, basePath)); }, /** - * Finishes the login sequence with a normal 2FA-generated code for accounts with 2FA-protection enabled. - * @summary Verify 2FA code - * @param {TwoFactorAuthCode} [twoFactorAuthCode] + * Downloads the file with the provided version number. **Version Note:** Version 0 is always when the file was created. The real data is usually always located in version 1 and up. **Extension Note:** Files are not guaranteed to have a file extensions. UnityPackage files tends to have it, images through this endpoint do not. You are responsible for appending file extension from the `extension` field when neccesary. + * @summary Download File Version + * @param {string} fileId Must be a valid file ID. + * @param {number} versionId Version ID of the asset. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - verify2FA(twoFactorAuthCode?: TwoFactorAuthCode, options?: any): AxiosPromise { - return localVarFp.verify2FA(twoFactorAuthCode, options).then((request) => request(axios, basePath)); + downloadFileVersion(fileId: string, versionId: number, options?: any): AxiosPromise { + return localVarFp.downloadFileVersion(fileId, versionId, options).then((request) => request(axios, basePath)); }, /** - * Verify whether the currently provided Auth Token is valid. - * @summary Verify Auth Token + * Finish an upload of a FileData. This will mark it as \"complete\". After uploading the `file` for Avatars and Worlds you then have to upload a `signature` file. + * @summary Finish FileData Upload + * @param {string} fileId Must be a valid file ID. + * @param {number} versionId Version ID of the asset. + * @param {'file' | 'signature' | 'delta'} fileType Type of file. + * @param {FinishFileDataUploadRequest} [finishFileDataUploadRequest] Please see documentation on ETag\'s: [https://teppen.io/2018/06/23/aws_s3_etags/](https://teppen.io/2018/06/23/aws_s3_etags/) ETag\'s should NOT be present when uploading a `signature`. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - verifyAuthToken(options?: any): AxiosPromise { - return localVarFp.verifyAuthToken(options).then((request) => request(axios, basePath)); + finishFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', finishFileDataUploadRequest?: FinishFileDataUploadRequest, options?: any): AxiosPromise { + return localVarFp.finishFileDataUpload(fileId, versionId, fileType, finishFileDataUploadRequest, options).then((request) => request(axios, basePath)); }, /** - * Finishes the login sequence with an OTP (One Time Password) recovery code for accounts with 2FA-protection enabled. - * @summary Verify 2FA code with Recovery code - * @param {TwoFactorAuthCode} [twoFactorAuthCode] + * Shows general information about the \"File\" object. Each File can have several \"Version\"\'s, and each Version can have multiple real files or \"Data\" blobs. + * @summary Show File + * @param {string} fileId Must be a valid file ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - verifyRecoveryCode(twoFactorAuthCode?: TwoFactorAuthCode, options?: any): AxiosPromise { - return localVarFp.verifyRecoveryCode(twoFactorAuthCode, options).then((request) => request(axios, basePath)); + getFile(fileId: string, options?: any): AxiosPromise { + return localVarFp.getFile(fileId, options).then((request) => request(axios, basePath)); + }, + /** + * Retrieves the upload status for file upload. Can currently only be accessed when `status` is `waiting`. Trying to access it on a file version already uploaded currently times out. + * @summary Check FileData Upload Status + * @param {string} fileId Must be a valid file ID. + * @param {number} versionId Version ID of the asset. + * @param {'file' | 'signature' | 'delta'} fileType Type of file. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFileDataUploadStatus(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', options?: any): AxiosPromise { + return localVarFp.getFileDataUploadStatus(fileId, versionId, fileType, options).then((request) => request(axios, basePath)); + }, + /** + * Returns a list of files + * @summary List Files + * @param {string} [tag] Tag, for example \"icon\" or \"gallery\", not included by default. + * @param {string} [userId] UserID, will always generate a 500 permission error. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFiles(tag?: string, userId?: string, n?: number, offset?: number, options?: any): AxiosPromise> { + return localVarFp.getFiles(tag, userId, n, offset, options).then((request) => request(axios, basePath)); + }, + /** + * Starts an upload of a specific FilePart. This endpoint will return an AWS URL which you can PUT data to. You need to call this and receive a new AWS API URL for each `partNumber`. Please see AWS\'s REST documentation on \"PUT Object to S3\" on how to upload. Once all parts has been uploaded, proceed to `/finish` endpoint. **Note:** `nextPartNumber` seems like it is always ignored. Despite it returning 0, first partNumber is always 1. + * @summary Start FileData Upload + * @param {string} fileId Must be a valid file ID. + * @param {number} versionId Version ID of the asset. + * @param {'file' | 'signature' | 'delta'} fileType Type of file. + * @param {number} [partNumber] The part number to start uploading. If not provided, the first part will be started. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + startFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', partNumber?: number, options?: any): AxiosPromise { + return localVarFp.startFileDataUpload(fileId, versionId, fileType, partNumber, options).then((request) => request(axios, basePath)); }, }; }; /** - * AuthenticationApi - object-oriented interface + * FilesApi - object-oriented interface * @export - * @class AuthenticationApi + * @class FilesApi * @extends {BaseAPI} */ -export class AuthenticationApi extends BaseAPI { +export class FilesApi extends BaseAPI { + /** + * Creates a new File object + * @summary Create File + * @param {CreateFileRequest} [createFileRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FilesApi + */ + public createFile(createFileRequest?: CreateFileRequest, options?: AxiosRequestConfig) { + return FilesApiFp(this.configuration).createFile(createFileRequest, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Creates a new FileVersion. Once a Version has been created, proceed to the `/file/{fileId}/{versionId}/file/start` endpoint to start a file upload. + * @summary Create File Version + * @param {string} fileId Must be a valid file ID. + * @param {CreateFileVersionRequest} [createFileVersionRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FilesApi + */ + public createFileVersion(fileId: string, createFileVersionRequest?: CreateFileVersionRequest, options?: AxiosRequestConfig) { + return FilesApiFp(this.configuration).createFileVersion(fileId, createFileVersionRequest, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Deletes a File object. + * @summary Delete File + * @param {string} fileId Must be a valid file ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FilesApi + */ + public deleteFile(fileId: string, options?: AxiosRequestConfig) { + return FilesApiFp(this.configuration).deleteFile(fileId, options).then((request) => request(this.axios, this.basePath)); + } + /** - * Checks if a user by a given `username`, `displayName` or `email` exist. This is used during registration to check if a username has already been taken, during change of displayName to check if a displayName is available, and during change of email to check if the email is already used. In the later two cases the `excludeUserId` is used to exclude oneself, otherwise the result would always be true. It is **REQUIRED** to include **AT LEAST** `username`, `displayName` **or** `email` query parameter. Although they can be combined - in addition with `excludeUserId` (generally to exclude yourself) - to further fine-tune the search. - * @summary Check User Exists - * @param {string} [email] Filter by email. - * @param {string} [displayName] Filter by displayName. - * @param {string} [userId] Filter by UserID. - * @param {string} [excludeUserId] Exclude by UserID. + * Delete a specific version of a file. You can only delete the latest version. + * @summary Delete File Version + * @param {string} fileId Must be a valid file ID. + * @param {number} versionId Version ID of the asset. * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof AuthenticationApi + * @memberof FilesApi */ - public checkUserExists(email?: string, displayName?: string, userId?: string, excludeUserId?: string, options?: AxiosRequestConfig) { - return AuthenticationApiFp(this.configuration).checkUserExists(email, displayName, userId, excludeUserId, options).then((request) => request(this.axios, this.basePath)); + public deleteFileVersion(fileId: string, versionId: number, options?: AxiosRequestConfig) { + return FilesApiFp(this.configuration).deleteFileVersion(fileId, versionId, options).then((request) => request(this.axios, this.basePath)); } /** - * Deletes the account with given ID. Normal users only have permission to delete their own account. Account deletion is 14 days from this request, and will be cancelled if you do an authenticated request with the account afterwards. **VRC+ NOTE:** Despite the 14-days cooldown, any VRC+ subscription will be cancelled **immediately**. **METHOD NOTE:** Despite this being a Delete action, the method type required is PUT. - * @summary Delete User - * @param {string} userId + * Downloads the file with the provided version number. **Version Note:** Version 0 is always when the file was created. The real data is usually always located in version 1 and up. **Extension Note:** Files are not guaranteed to have a file extensions. UnityPackage files tends to have it, images through this endpoint do not. You are responsible for appending file extension from the `extension` field when neccesary. + * @summary Download File Version + * @param {string} fileId Must be a valid file ID. + * @param {number} versionId Version ID of the asset. * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof AuthenticationApi + * @memberof FilesApi */ - public deleteUser(userId: string, options?: AxiosRequestConfig) { - return AuthenticationApiFp(this.configuration).deleteUser(userId, options).then((request) => request(this.axios, this.basePath)); + public downloadFileVersion(fileId: string, versionId: number, options?: AxiosRequestConfig) { + return FilesApiFp(this.configuration).downloadFileVersion(fileId, versionId, options).then((request) => request(this.axios, this.basePath)); } /** - * This endpoint does the following two operations: 1) Checks if you are already logged in by looking for a valid `auth` cookie. If you are have a valid auth cookie then no additional auth-related actions are taken. If you are **not** logged in then it will log you in with the `Authorization` header and set the `auth` cookie. The `auth` cookie will only be sent once. 2) If logged in, this function will also return the CurrentUser object containing detailed information about the currently logged in user. The auth string after `Authorization: Basic {string}` is a base64-encoded string of the username and password, both individually url-encoded, and then joined with a colon. > base64(urlencode(username):urlencode(password)) **WARNING: Session Limit:** Each authentication with login credentials counts as a separate session, out of which you have a limited amount. Make sure to save and reuse the `auth` cookie if you are often restarting the program. The provided API libraries automatically save cookies during runtime, but does not persist during restart. While it can be fine to use username/password during development, expect in production to very fast run into the rate-limit and be temporarily blocked from making new sessions until older ones expire. The exact number of simultaneous sessions is unknown/undisclosed. - * @summary Login and/or Get Current User Info + * Finish an upload of a FileData. This will mark it as \"complete\". After uploading the `file` for Avatars and Worlds you then have to upload a `signature` file. + * @summary Finish FileData Upload + * @param {string} fileId Must be a valid file ID. + * @param {number} versionId Version ID of the asset. + * @param {'file' | 'signature' | 'delta'} fileType Type of file. + * @param {FinishFileDataUploadRequest} [finishFileDataUploadRequest] Please see documentation on ETag\'s: [https://teppen.io/2018/06/23/aws_s3_etags/](https://teppen.io/2018/06/23/aws_s3_etags/) ETag\'s should NOT be present when uploading a `signature`. * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof AuthenticationApi + * @memberof FilesApi */ - public getCurrentUser(options?: AxiosRequestConfig) { - return AuthenticationApiFp(this.configuration).getCurrentUser(options).then((request) => request(this.axios, this.basePath)); + public finishFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', finishFileDataUploadRequest?: FinishFileDataUploadRequest, options?: AxiosRequestConfig) { + return FilesApiFp(this.configuration).finishFileDataUpload(fileId, versionId, fileType, finishFileDataUploadRequest, options).then((request) => request(this.axios, this.basePath)); } /** - * Invalidates the login session. - * @summary Logout + * Shows general information about the \"File\" object. Each File can have several \"Version\"\'s, and each Version can have multiple real files or \"Data\" blobs. + * @summary Show File + * @param {string} fileId Must be a valid file ID. * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof AuthenticationApi + * @memberof FilesApi */ - public logout(options?: AxiosRequestConfig) { - return AuthenticationApiFp(this.configuration).logout(options).then((request) => request(this.axios, this.basePath)); + public getFile(fileId: string, options?: AxiosRequestConfig) { + return FilesApiFp(this.configuration).getFile(fileId, options).then((request) => request(this.axios, this.basePath)); } /** - * Finishes the login sequence with a normal 2FA-generated code for accounts with 2FA-protection enabled. - * @summary Verify 2FA code - * @param {TwoFactorAuthCode} [twoFactorAuthCode] + * Retrieves the upload status for file upload. Can currently only be accessed when `status` is `waiting`. Trying to access it on a file version already uploaded currently times out. + * @summary Check FileData Upload Status + * @param {string} fileId Must be a valid file ID. + * @param {number} versionId Version ID of the asset. + * @param {'file' | 'signature' | 'delta'} fileType Type of file. * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof AuthenticationApi + * @memberof FilesApi */ - public verify2FA(twoFactorAuthCode?: TwoFactorAuthCode, options?: AxiosRequestConfig) { - return AuthenticationApiFp(this.configuration).verify2FA(twoFactorAuthCode, options).then((request) => request(this.axios, this.basePath)); + public getFileDataUploadStatus(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', options?: AxiosRequestConfig) { + return FilesApiFp(this.configuration).getFileDataUploadStatus(fileId, versionId, fileType, options).then((request) => request(this.axios, this.basePath)); } /** - * Verify whether the currently provided Auth Token is valid. - * @summary Verify Auth Token + * Returns a list of files + * @summary List Files + * @param {string} [tag] Tag, for example \"icon\" or \"gallery\", not included by default. + * @param {string} [userId] UserID, will always generate a 500 permission error. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof AuthenticationApi + * @memberof FilesApi */ - public verifyAuthToken(options?: AxiosRequestConfig) { - return AuthenticationApiFp(this.configuration).verifyAuthToken(options).then((request) => request(this.axios, this.basePath)); + public getFiles(tag?: string, userId?: string, n?: number, offset?: number, options?: AxiosRequestConfig) { + return FilesApiFp(this.configuration).getFiles(tag, userId, n, offset, options).then((request) => request(this.axios, this.basePath)); } /** - * Finishes the login sequence with an OTP (One Time Password) recovery code for accounts with 2FA-protection enabled. - * @summary Verify 2FA code with Recovery code - * @param {TwoFactorAuthCode} [twoFactorAuthCode] + * Starts an upload of a specific FilePart. This endpoint will return an AWS URL which you can PUT data to. You need to call this and receive a new AWS API URL for each `partNumber`. Please see AWS\'s REST documentation on \"PUT Object to S3\" on how to upload. Once all parts has been uploaded, proceed to `/finish` endpoint. **Note:** `nextPartNumber` seems like it is always ignored. Despite it returning 0, first partNumber is always 1. + * @summary Start FileData Upload + * @param {string} fileId Must be a valid file ID. + * @param {number} versionId Version ID of the asset. + * @param {'file' | 'signature' | 'delta'} fileType Type of file. + * @param {number} [partNumber] The part number to start uploading. If not provided, the first part will be started. * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof AuthenticationApi + * @memberof FilesApi */ - public verifyRecoveryCode(twoFactorAuthCode?: TwoFactorAuthCode, options?: AxiosRequestConfig) { - return AuthenticationApiFp(this.configuration).verifyRecoveryCode(twoFactorAuthCode, options).then((request) => request(this.axios, this.basePath)); + public startFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', partNumber?: number, options?: AxiosRequestConfig) { + return FilesApiFp(this.configuration).startFileDataUpload(fileId, versionId, fileType, partNumber, options).then((request) => request(this.axios, this.basePath)); } } /** - * AvatarsApi - axios parameter creator + * FriendsApi - axios parameter creator * @export */ -export const AvatarsApiAxiosParamCreator = function (configuration?: Configuration) { +export const FriendsApiAxiosParamCreator = function (configuration?: Configuration) { return { /** - * Create an avatar. It\'s possible to optionally specify a ID if you want a custom one. Attempting to create an Avatar with an already claimed ID will result in a DB error. - * @summary Create Avatar - * @param {CreateAvatarRequest} [createAvatarRequest] + * Deletes an outgoing pending friend request to another user. To delete an incoming friend request, use the `deleteNotification` endpoint instead. + * @summary Delete Friend Request + * @param {string} userId Must be a valid user ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - createAvatar: async (createAvatarRequest?: CreateAvatarRequest, options: AxiosRequestConfig = {}): Promise => { - const localVarPath = `/avatars`; + deleteFriendRequest: async (userId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'userId' is not null or undefined + assertParamExists('deleteFriendRequest', 'userId', userId) + const localVarPath = `/user/{userId}/friendRequest` + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -4775,7 +8830,7 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; @@ -4785,12 +8840,9 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati - localVarHeaderParameter['Content-Type'] = 'application/json'; - setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - localVarRequestOptions.data = serializeDataIfNeeded(createAvatarRequest, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), @@ -4798,17 +8850,17 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati }; }, /** - * Delete an avatar. Notice an avatar is never fully \"deleted\", only its ReleaseStatus is set to \"hidden\" and the linked Files are deleted. The AvatarID is permanently reserved. - * @summary Delete Avatar - * @param {string} avatarId + * Send a friend request to another user. + * @summary Send Friend Request + * @param {string} userId Must be a valid user ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - deleteAvatar: async (avatarId: string, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'avatarId' is not null or undefined - assertParamExists('deleteAvatar', 'avatarId', avatarId) - const localVarPath = `/avatars/{avatarId}` - .replace(`{${"avatarId"}}`, encodeURIComponent(String(avatarId))); + friend: async (userId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'userId' is not null or undefined + assertParamExists('friend', 'userId', userId) + const localVarPath = `/user/{userId}/friendRequest` + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -4816,7 +8868,7 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; @@ -4836,17 +8888,17 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati }; }, /** - * Get information about a specific Avatar. - * @summary Get Avatar - * @param {string} avatarId + * Retrieve if the user is currently a friend with a given user, if they have an outgoing friend request, and if they have an incoming friend request. The proper way to receive and accept friend request is by checking if the user has an incoming `Notification` of type `friendRequest`, and then accepting that notification. + * @summary Check Friend Status + * @param {string} userId Must be a valid user ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getAvatar: async (avatarId: string, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'avatarId' is not null or undefined - assertParamExists('getAvatar', 'avatarId', avatarId) - const localVarPath = `/avatars/{avatarId}` - .replace(`{${"avatarId"}}`, encodeURIComponent(String(avatarId))); + getFriendStatus: async (userId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'userId' is not null or undefined + assertParamExists('getFriendStatus', 'userId', userId) + const localVarPath = `/user/{userId}/friendStatus` + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -4874,26 +8926,16 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati }; }, /** - * Search and list favorited avatars by query filters. - * @summary List Favorited Avatars - * @param {boolean} [featured] Filters on featured results. - * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] - * @param {number} [n] The number of objects to return. - * @param {'ascending' | 'descending'} [order] + * List information about friends. + * @summary List Friends * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. - * @param {string} [search] Filters by world name. - * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. - * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. - * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. - * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. - * @param {string} [platform] The platform the asset supports. - * @param {string} [userId] Target user to see information on, admin-only. + * @param {number} [n] The number of objects to return. + * @param {boolean} [offline] Returns *only* offline users if true, returns only online and active users if false * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFavoritedAvatars: async (featured?: boolean, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options: AxiosRequestConfig = {}): Promise => { - const localVarPath = `/avatars/favorites`; + getFriends: async (offset?: number, n?: number, offline?: boolean, options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/auth/user/friends`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -4909,96 +8951,18 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati // authentication authCookie required - if (featured !== undefined) { - localVarQueryParameter['featured'] = featured; - } - - if (sort !== undefined) { - localVarQueryParameter['sort'] = sort; - } - - if (n !== undefined) { - localVarQueryParameter['n'] = n; - } - - if (order !== undefined) { - localVarQueryParameter['order'] = order; - } - if (offset !== undefined) { localVarQueryParameter['offset'] = offset; } - if (search !== undefined) { - localVarQueryParameter['search'] = search; - } - - if (tag !== undefined) { - localVarQueryParameter['tag'] = tag; - } - - if (notag !== undefined) { - localVarQueryParameter['notag'] = notag; - } - - if (releaseStatus !== undefined) { - localVarQueryParameter['releaseStatus'] = releaseStatus; - } - - if (maxUnityVersion !== undefined) { - localVarQueryParameter['maxUnityVersion'] = maxUnityVersion; - } - - if (minUnityVersion !== undefined) { - localVarQueryParameter['minUnityVersion'] = minUnityVersion; - } - - if (platform !== undefined) { - localVarQueryParameter['platform'] = platform; - } - - if (userId !== undefined) { - localVarQueryParameter['userId'] = userId; + if (n !== undefined) { + localVarQueryParameter['n'] = n; } - - - setSearchParams(localVarUrlObj, localVarQueryParameter); - let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; - localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - - return { - url: toPathString(localVarUrlObj), - options: localVarRequestOptions, - }; - }, - /** - * Get the current avatar for the user. This will return an error for any other user than the one logged in. - * @summary Get Own Avatar - * @param {string} userId - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - getOwnAvatar: async (userId: string, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'userId' is not null or undefined - assertParamExists('getOwnAvatar', 'userId', userId) - const localVarPath = `/users/{userId}/avatar` - .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); - // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); - let baseOptions; - if (configuration) { - baseOptions = configuration.baseOptions; + if (offline !== undefined) { + localVarQueryParameter['offline'] = offline; } - const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; - const localVarHeaderParameter = {} as any; - const localVarQueryParameter = {} as any; - - // authentication apiKeyCookie required - - // authentication authCookie required - setSearchParams(localVarUrlObj, localVarQueryParameter); @@ -5008,29 +8972,20 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati return { url: toPathString(localVarUrlObj), options: localVarRequestOptions, - }; - }, - /** - * Search and list avatars by query filters. You can only search your own or featured avatars. It is not possible as a normal user to search other peoples avatars. - * @summary Search Avatars - * @param {boolean} [featured] Filters on featured results. - * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] - * @param {'me'} [user] Set to `me` for searching own avatars. - * @param {string} [userId] Filter by UserID. - * @param {number} [n] The number of objects to return. - * @param {'ascending' | 'descending'} [order] - * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. - * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. - * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. - * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. - * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. - * @param {string} [platform] The platform the asset supports. + }; + }, + /** + * Unfriend a user by ID. + * @summary Unfriend + * @param {string} userId Must be a valid user ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - searchAvatars: async (featured?: boolean, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options: AxiosRequestConfig = {}): Promise => { - const localVarPath = `/avatars`; + unfriend: async (userId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'userId' is not null or undefined + assertParamExists('unfriend', 'userId', userId) + const localVarPath = `/auth/user/friends/{userId}` + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -5038,7 +8993,7 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; @@ -5046,63 +9001,266 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati // authentication authCookie required - if (featured !== undefined) { - localVarQueryParameter['featured'] = featured; - } - if (sort !== undefined) { - localVarQueryParameter['sort'] = sort; - } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - if (user !== undefined) { - localVarQueryParameter['user'] = user; - } + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + } +}; - if (userId !== undefined) { - localVarQueryParameter['userId'] = userId; - } +/** + * FriendsApi - functional programming interface + * @export + */ +export const FriendsApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = FriendsApiAxiosParamCreator(configuration) + return { + /** + * Deletes an outgoing pending friend request to another user. To delete an incoming friend request, use the `deleteNotification` endpoint instead. + * @summary Delete Friend Request + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async deleteFriendRequest(userId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.deleteFriendRequest(userId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Send a friend request to another user. + * @summary Send Friend Request + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async friend(userId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.friend(userId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Retrieve if the user is currently a friend with a given user, if they have an outgoing friend request, and if they have an incoming friend request. The proper way to receive and accept friend request is by checking if the user has an incoming `Notification` of type `friendRequest`, and then accepting that notification. + * @summary Check Friend Status + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getFriendStatus(userId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getFriendStatus(userId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * List information about friends. + * @summary List Friends + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {number} [n] The number of objects to return. + * @param {boolean} [offline] Returns *only* offline users if true, returns only online and active users if false + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getFriends(offset?: number, n?: number, offline?: boolean, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getFriends(offset, n, offline, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Unfriend a user by ID. + * @summary Unfriend + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async unfriend(userId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.unfriend(userId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + } +}; - if (n !== undefined) { - localVarQueryParameter['n'] = n; - } +/** + * FriendsApi - factory interface + * @export + */ +export const FriendsApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = FriendsApiFp(configuration) + return { + /** + * Deletes an outgoing pending friend request to another user. To delete an incoming friend request, use the `deleteNotification` endpoint instead. + * @summary Delete Friend Request + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + deleteFriendRequest(userId: string, options?: any): AxiosPromise { + return localVarFp.deleteFriendRequest(userId, options).then((request) => request(axios, basePath)); + }, + /** + * Send a friend request to another user. + * @summary Send Friend Request + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + friend(userId: string, options?: any): AxiosPromise { + return localVarFp.friend(userId, options).then((request) => request(axios, basePath)); + }, + /** + * Retrieve if the user is currently a friend with a given user, if they have an outgoing friend request, and if they have an incoming friend request. The proper way to receive and accept friend request is by checking if the user has an incoming `Notification` of type `friendRequest`, and then accepting that notification. + * @summary Check Friend Status + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFriendStatus(userId: string, options?: any): AxiosPromise { + return localVarFp.getFriendStatus(userId, options).then((request) => request(axios, basePath)); + }, + /** + * List information about friends. + * @summary List Friends + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {number} [n] The number of objects to return. + * @param {boolean} [offline] Returns *only* offline users if true, returns only online and active users if false + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFriends(offset?: number, n?: number, offline?: boolean, options?: any): AxiosPromise> { + return localVarFp.getFriends(offset, n, offline, options).then((request) => request(axios, basePath)); + }, + /** + * Unfriend a user by ID. + * @summary Unfriend + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + unfriend(userId: string, options?: any): AxiosPromise { + return localVarFp.unfriend(userId, options).then((request) => request(axios, basePath)); + }, + }; +}; - if (order !== undefined) { - localVarQueryParameter['order'] = order; - } +/** + * FriendsApi - object-oriented interface + * @export + * @class FriendsApi + * @extends {BaseAPI} + */ +export class FriendsApi extends BaseAPI { + /** + * Deletes an outgoing pending friend request to another user. To delete an incoming friend request, use the `deleteNotification` endpoint instead. + * @summary Delete Friend Request + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FriendsApi + */ + public deleteFriendRequest(userId: string, options?: AxiosRequestConfig) { + return FriendsApiFp(this.configuration).deleteFriendRequest(userId, options).then((request) => request(this.axios, this.basePath)); + } - if (offset !== undefined) { - localVarQueryParameter['offset'] = offset; - } + /** + * Send a friend request to another user. + * @summary Send Friend Request + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FriendsApi + */ + public friend(userId: string, options?: AxiosRequestConfig) { + return FriendsApiFp(this.configuration).friend(userId, options).then((request) => request(this.axios, this.basePath)); + } - if (tag !== undefined) { - localVarQueryParameter['tag'] = tag; - } + /** + * Retrieve if the user is currently a friend with a given user, if they have an outgoing friend request, and if they have an incoming friend request. The proper way to receive and accept friend request is by checking if the user has an incoming `Notification` of type `friendRequest`, and then accepting that notification. + * @summary Check Friend Status + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FriendsApi + */ + public getFriendStatus(userId: string, options?: AxiosRequestConfig) { + return FriendsApiFp(this.configuration).getFriendStatus(userId, options).then((request) => request(this.axios, this.basePath)); + } - if (notag !== undefined) { - localVarQueryParameter['notag'] = notag; - } + /** + * List information about friends. + * @summary List Friends + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {number} [n] The number of objects to return. + * @param {boolean} [offline] Returns *only* offline users if true, returns only online and active users if false + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FriendsApi + */ + public getFriends(offset?: number, n?: number, offline?: boolean, options?: AxiosRequestConfig) { + return FriendsApiFp(this.configuration).getFriends(offset, n, offline, options).then((request) => request(this.axios, this.basePath)); + } - if (releaseStatus !== undefined) { - localVarQueryParameter['releaseStatus'] = releaseStatus; - } + /** + * Unfriend a user by ID. + * @summary Unfriend + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FriendsApi + */ + public unfriend(userId: string, options?: AxiosRequestConfig) { + return FriendsApiFp(this.configuration).unfriend(userId, options).then((request) => request(this.axios, this.basePath)); + } +} - if (maxUnityVersion !== undefined) { - localVarQueryParameter['maxUnityVersion'] = maxUnityVersion; - } - if (minUnityVersion !== undefined) { - localVarQueryParameter['minUnityVersion'] = minUnityVersion; +/** + * GroupsApi - axios parameter creator + * @export + */ +export const GroupsApiAxiosParamCreator = function (configuration?: Configuration) { + return { + /** + * Adds an image to a Group gallery. + * @summary Add Group Gallery Image + * @param {string} groupId Must be a valid group ID. + * @param {string} groupGalleryId Must be a valid group gallery ID. + * @param {AddGroupGalleryImageRequest} [addGroupGalleryImageRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + addGroupGalleryImage: async (groupId: string, groupGalleryId: string, addGroupGalleryImageRequest?: AddGroupGalleryImageRequest, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'groupId' is not null or undefined + assertParamExists('addGroupGalleryImage', 'groupId', groupId) + // verify required parameter 'groupGalleryId' is not null or undefined + assertParamExists('addGroupGalleryImage', 'groupGalleryId', groupGalleryId) + const localVarPath = `/groups/{groupId}/galleries/{groupGalleryId}/images` + .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))) + .replace(`{${"groupGalleryId"}}`, encodeURIComponent(String(groupGalleryId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; } - if (platform !== undefined) { - localVarQueryParameter['platform'] = platform; - } + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + localVarHeaderParameter['Content-Type'] = 'application/json'; + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(addGroupGalleryImageRequest, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), @@ -5110,17 +9268,25 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati }; }, /** - * Switches into that avatar. - * @summary Select Avatar - * @param {string} avatarId + * Adds a Role to a Group Member + * @summary Add Role to GroupMember + * @param {string} groupId Must be a valid group ID. + * @param {string} userId Must be a valid user ID. + * @param {string} groupRoleId Must be a valid group role ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - selectAvatar: async (avatarId: string, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'avatarId' is not null or undefined - assertParamExists('selectAvatar', 'avatarId', avatarId) - const localVarPath = `/avatars/{avatarId}/select` - .replace(`{${"avatarId"}}`, encodeURIComponent(String(avatarId))); + addGroupMemberRole: async (groupId: string, userId: string, groupRoleId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'groupId' is not null or undefined + assertParamExists('addGroupMemberRole', 'groupId', groupId) + // verify required parameter 'userId' is not null or undefined + assertParamExists('addGroupMemberRole', 'userId', userId) + // verify required parameter 'groupRoleId' is not null or undefined + assertParamExists('addGroupMemberRole', 'groupRoleId', groupRoleId) + const localVarPath = `/groups/{groupId}/members/{userId}/roles/{groupRoleId}` + .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))) + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))) + .replace(`{${"groupRoleId"}}`, encodeURIComponent(String(groupRoleId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -5148,17 +9314,18 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati }; }, /** - * Switches into that avatar as your fallback avatar. - * @summary Select Fallback Avatar - * @param {string} avatarId + * Bans a user from a Group. + * @summary Ban Group Member + * @param {string} groupId Must be a valid group ID. + * @param {BanGroupMemberRequest} [banGroupMemberRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - selectFallbackAvatar: async (avatarId: string, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'avatarId' is not null or undefined - assertParamExists('selectFallbackAvatar', 'avatarId', avatarId) - const localVarPath = `/avatars/{avatarId}/selectFallback` - .replace(`{${"avatarId"}}`, encodeURIComponent(String(avatarId))); + banGroupMember: async (groupId: string, banGroupMemberRequest?: BanGroupMemberRequest, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'groupId' is not null or undefined + assertParamExists('banGroupMember', 'groupId', groupId) + const localVarPath = `/groups/{groupId}/bans` + .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -5166,7 +9333,7 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; @@ -5176,9 +9343,12 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati + localVarHeaderParameter['Content-Type'] = 'application/json'; + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(banGroupMemberRequest, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), @@ -5186,18 +9356,17 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati }; }, /** - * Update information about a specific avatar. - * @summary Update Avatar - * @param {string} avatarId - * @param {UpdateAvatarRequest} [updateAvatarRequest] + * Cancels a request sent to join the group. + * @summary Cancel Group Join Request + * @param {string} groupId Must be a valid group ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - updateAvatar: async (avatarId: string, updateAvatarRequest?: UpdateAvatarRequest, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'avatarId' is not null or undefined - assertParamExists('updateAvatar', 'avatarId', avatarId) - const localVarPath = `/avatars/{avatarId}` - .replace(`{${"avatarId"}}`, encodeURIComponent(String(avatarId))); + cancelGroupRequest: async (groupId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'groupId' is not null or undefined + assertParamExists('cancelGroupRequest', 'groupId', groupId) + const localVarPath = `/groups/{groupId}/requests` + .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -5205,7 +9374,7 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; @@ -5215,436 +9384,233 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati - localVarHeaderParameter['Content-Type'] = 'application/json'; - setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - localVarRequestOptions.data = serializeDataIfNeeded(updateAvatarRequest, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, - } -}; - -/** - * AvatarsApi - functional programming interface - * @export - */ -export const AvatarsApiFp = function(configuration?: Configuration) { - const localVarAxiosParamCreator = AvatarsApiAxiosParamCreator(configuration) - return { - /** - * Create an avatar. It\'s possible to optionally specify a ID if you want a custom one. Attempting to create an Avatar with an already claimed ID will result in a DB error. - * @summary Create Avatar - * @param {CreateAvatarRequest} [createAvatarRequest] - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - async createAvatar(createAvatarRequest?: CreateAvatarRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.createAvatar(createAvatarRequest, options); - return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); - }, - /** - * Delete an avatar. Notice an avatar is never fully \"deleted\", only its ReleaseStatus is set to \"hidden\" and the linked Files are deleted. The AvatarID is permanently reserved. - * @summary Delete Avatar - * @param {string} avatarId - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - async deleteAvatar(avatarId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.deleteAvatar(avatarId, options); - return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); - }, - /** - * Get information about a specific Avatar. - * @summary Get Avatar - * @param {string} avatarId - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - async getAvatar(avatarId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getAvatar(avatarId, options); - return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); - }, - /** - * Search and list favorited avatars by query filters. - * @summary List Favorited Avatars - * @param {boolean} [featured] Filters on featured results. - * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] - * @param {number} [n] The number of objects to return. - * @param {'ascending' | 'descending'} [order] - * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. - * @param {string} [search] Filters by world name. - * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. - * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. - * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. - * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. - * @param {string} [platform] The platform the asset supports. - * @param {string} [userId] Target user to see information on, admin-only. - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - async getFavoritedAvatars(featured?: boolean, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getFavoritedAvatars(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options); - return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); - }, - /** - * Get the current avatar for the user. This will return an error for any other user than the one logged in. - * @summary Get Own Avatar - * @param {string} userId - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - async getOwnAvatar(userId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getOwnAvatar(userId, options); - return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); - }, - /** - * Search and list avatars by query filters. You can only search your own or featured avatars. It is not possible as a normal user to search other peoples avatars. - * @summary Search Avatars - * @param {boolean} [featured] Filters on featured results. - * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] - * @param {'me'} [user] Set to `me` for searching own avatars. - * @param {string} [userId] Filter by UserID. - * @param {number} [n] The number of objects to return. - * @param {'ascending' | 'descending'} [order] - * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. - * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. - * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. - * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. - * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. - * @param {string} [platform] The platform the asset supports. - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - async searchAvatars(featured?: boolean, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { - const localVarAxiosArgs = await localVarAxiosParamCreator.searchAvatars(featured, sort, user, userId, n, order, offset, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options); - return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); - }, - /** - * Switches into that avatar. - * @summary Select Avatar - * @param {string} avatarId - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - async selectAvatar(avatarId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.selectAvatar(avatarId, options); - return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); - }, - /** - * Switches into that avatar as your fallback avatar. - * @summary Select Fallback Avatar - * @param {string} avatarId - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - async selectFallbackAvatar(avatarId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.selectFallbackAvatar(avatarId, options); - return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); - }, /** - * Update information about a specific avatar. - * @summary Update Avatar - * @param {string} avatarId - * @param {UpdateAvatarRequest} [updateAvatarRequest] + * Creates a Group and returns a Group object. **Requires VRC+ Subscription.** + * @summary Create Group + * @param {CreateGroupRequest} [createGroupRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async updateAvatar(avatarId: string, updateAvatarRequest?: UpdateAvatarRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.updateAvatar(avatarId, updateAvatarRequest, options); - return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); - }, - } -}; + createGroup: async (createGroupRequest?: CreateGroupRequest, options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/groups`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } -/** - * AvatarsApi - factory interface - * @export - */ -export const AvatarsApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { - const localVarFp = AvatarsApiFp(configuration) - return { - /** - * Create an avatar. It\'s possible to optionally specify a ID if you want a custom one. Attempting to create an Avatar with an already claimed ID will result in a DB error. - * @summary Create Avatar - * @param {CreateAvatarRequest} [createAvatarRequest] - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - createAvatar(createAvatarRequest?: CreateAvatarRequest, options?: any): AxiosPromise { - return localVarFp.createAvatar(createAvatarRequest, options).then((request) => request(axios, basePath)); - }, - /** - * Delete an avatar. Notice an avatar is never fully \"deleted\", only its ReleaseStatus is set to \"hidden\" and the linked Files are deleted. The AvatarID is permanently reserved. - * @summary Delete Avatar - * @param {string} avatarId - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - deleteAvatar(avatarId: string, options?: any): AxiosPromise { - return localVarFp.deleteAvatar(avatarId, options).then((request) => request(axios, basePath)); - }, - /** - * Get information about a specific Avatar. - * @summary Get Avatar - * @param {string} avatarId - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - getAvatar(avatarId: string, options?: any): AxiosPromise { - return localVarFp.getAvatar(avatarId, options).then((request) => request(axios, basePath)); - }, - /** - * Search and list favorited avatars by query filters. - * @summary List Favorited Avatars - * @param {boolean} [featured] Filters on featured results. - * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] - * @param {number} [n] The number of objects to return. - * @param {'ascending' | 'descending'} [order] - * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. - * @param {string} [search] Filters by world name. - * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. - * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. - * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. - * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. - * @param {string} [platform] The platform the asset supports. - * @param {string} [userId] Target user to see information on, admin-only. - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - getFavoritedAvatars(featured?: boolean, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any): AxiosPromise> { - return localVarFp.getFavoritedAvatars(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options).then((request) => request(axios, basePath)); - }, - /** - * Get the current avatar for the user. This will return an error for any other user than the one logged in. - * @summary Get Own Avatar - * @param {string} userId - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - getOwnAvatar(userId: string, options?: any): AxiosPromise { - return localVarFp.getOwnAvatar(userId, options).then((request) => request(axios, basePath)); - }, - /** - * Search and list avatars by query filters. You can only search your own or featured avatars. It is not possible as a normal user to search other peoples avatars. - * @summary Search Avatars - * @param {boolean} [featured] Filters on featured results. - * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] - * @param {'me'} [user] Set to `me` for searching own avatars. - * @param {string} [userId] Filter by UserID. - * @param {number} [n] The number of objects to return. - * @param {'ascending' | 'descending'} [order] - * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. - * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. - * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. - * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. - * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. - * @param {string} [platform] The platform the asset supports. - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - searchAvatars(featured?: boolean, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: any): AxiosPromise> { - return localVarFp.searchAvatars(featured, sort, user, userId, n, order, offset, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options).then((request) => request(axios, basePath)); + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(createGroupRequest, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; }, /** - * Switches into that avatar. - * @summary Select Avatar - * @param {string} avatarId + * Creates an Announcement for a Group. + * @summary Create Group Announcement + * @param {string} groupId Must be a valid group ID. + * @param {CreateGroupAnnouncementRequest} [createGroupAnnouncementRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - selectAvatar(avatarId: string, options?: any): AxiosPromise { - return localVarFp.selectAvatar(avatarId, options).then((request) => request(axios, basePath)); + createGroupAnnouncement: async (groupId: string, createGroupAnnouncementRequest?: CreateGroupAnnouncementRequest, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'groupId' is not null or undefined + assertParamExists('createGroupAnnouncement', 'groupId', groupId) + const localVarPath = `/groups/{groupId}/announcement` + .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(createGroupAnnouncementRequest, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; }, /** - * Switches into that avatar as your fallback avatar. - * @summary Select Fallback Avatar - * @param {string} avatarId + * Creates a gallery for a Group. + * @summary Create Group Gallery + * @param {string} groupId Must be a valid group ID. + * @param {CreateGroupGalleryRequest} [createGroupGalleryRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - selectFallbackAvatar(avatarId: string, options?: any): AxiosPromise { - return localVarFp.selectFallbackAvatar(avatarId, options).then((request) => request(axios, basePath)); + createGroupGallery: async (groupId: string, createGroupGalleryRequest?: CreateGroupGalleryRequest, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'groupId' is not null or undefined + assertParamExists('createGroupGallery', 'groupId', groupId) + const localVarPath = `/groups/{groupId}/galleries` + .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(createGroupGalleryRequest, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; }, /** - * Update information about a specific avatar. - * @summary Update Avatar - * @param {string} avatarId - * @param {UpdateAvatarRequest} [updateAvatarRequest] + * Sends an invite to a user to join the group. + * @summary Invite User to Group + * @param {string} groupId Must be a valid group ID. + * @param {CreateGroupInviteRequest} [createGroupInviteRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - updateAvatar(avatarId: string, updateAvatarRequest?: UpdateAvatarRequest, options?: any): AxiosPromise { - return localVarFp.updateAvatar(avatarId, updateAvatarRequest, options).then((request) => request(axios, basePath)); - }, - }; -}; + createGroupInvite: async (groupId: string, createGroupInviteRequest?: CreateGroupInviteRequest, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'groupId' is not null or undefined + assertParamExists('createGroupInvite', 'groupId', groupId) + const localVarPath = `/groups/{groupId}/invites` + .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } -/** - * AvatarsApi - object-oriented interface - * @export - * @class AvatarsApi - * @extends {BaseAPI} - */ -export class AvatarsApi extends BaseAPI { - /** - * Create an avatar. It\'s possible to optionally specify a ID if you want a custom one. Attempting to create an Avatar with an already claimed ID will result in a DB error. - * @summary Create Avatar - * @param {CreateAvatarRequest} [createAvatarRequest] - * @param {*} [options] Override http request option. - * @throws {RequiredError} - * @memberof AvatarsApi - */ - public createAvatar(createAvatarRequest?: CreateAvatarRequest, options?: AxiosRequestConfig) { - return AvatarsApiFp(this.configuration).createAvatar(createAvatarRequest, options).then((request) => request(this.axios, this.basePath)); - } + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; - /** - * Delete an avatar. Notice an avatar is never fully \"deleted\", only its ReleaseStatus is set to \"hidden\" and the linked Files are deleted. The AvatarID is permanently reserved. - * @summary Delete Avatar - * @param {string} avatarId - * @param {*} [options] Override http request option. - * @throws {RequiredError} - * @memberof AvatarsApi - */ - public deleteAvatar(avatarId: string, options?: AxiosRequestConfig) { - return AvatarsApiFp(this.configuration).deleteAvatar(avatarId, options).then((request) => request(this.axios, this.basePath)); - } + // authentication apiKeyCookie required - /** - * Get information about a specific Avatar. - * @summary Get Avatar - * @param {string} avatarId - * @param {*} [options] Override http request option. - * @throws {RequiredError} - * @memberof AvatarsApi - */ - public getAvatar(avatarId: string, options?: AxiosRequestConfig) { - return AvatarsApiFp(this.configuration).getAvatar(avatarId, options).then((request) => request(this.axios, this.basePath)); - } + // authentication authCookie required - /** - * Search and list favorited avatars by query filters. - * @summary List Favorited Avatars - * @param {boolean} [featured] Filters on featured results. - * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] - * @param {number} [n] The number of objects to return. - * @param {'ascending' | 'descending'} [order] - * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. - * @param {string} [search] Filters by world name. - * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. - * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. - * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. - * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. - * @param {string} [platform] The platform the asset supports. - * @param {string} [userId] Target user to see information on, admin-only. - * @param {*} [options] Override http request option. - * @throws {RequiredError} - * @memberof AvatarsApi - */ - public getFavoritedAvatars(featured?: boolean, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: AxiosRequestConfig) { - return AvatarsApiFp(this.configuration).getFavoritedAvatars(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options).then((request) => request(this.axios, this.basePath)); - } - /** - * Get the current avatar for the user. This will return an error for any other user than the one logged in. - * @summary Get Own Avatar - * @param {string} userId - * @param {*} [options] Override http request option. - * @throws {RequiredError} - * @memberof AvatarsApi - */ - public getOwnAvatar(userId: string, options?: AxiosRequestConfig) { - return AvatarsApiFp(this.configuration).getOwnAvatar(userId, options).then((request) => request(this.axios, this.basePath)); - } + + localVarHeaderParameter['Content-Type'] = 'application/json'; - /** - * Search and list avatars by query filters. You can only search your own or featured avatars. It is not possible as a normal user to search other peoples avatars. - * @summary Search Avatars - * @param {boolean} [featured] Filters on featured results. - * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] - * @param {'me'} [user] Set to `me` for searching own avatars. - * @param {string} [userId] Filter by UserID. - * @param {number} [n] The number of objects to return. - * @param {'ascending' | 'descending'} [order] - * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. - * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. - * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. - * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. - * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. - * @param {string} [platform] The platform the asset supports. - * @param {*} [options] Override http request option. - * @throws {RequiredError} - * @memberof AvatarsApi - */ - public searchAvatars(featured?: boolean, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: AxiosRequestConfig) { - return AvatarsApiFp(this.configuration).searchAvatars(featured, sort, user, userId, n, order, offset, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options).then((request) => request(this.axios, this.basePath)); - } + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(createGroupInviteRequest, localVarRequestOptions, configuration) - /** - * Switches into that avatar. - * @summary Select Avatar - * @param {string} avatarId - * @param {*} [options] Override http request option. - * @throws {RequiredError} - * @memberof AvatarsApi - */ - public selectAvatar(avatarId: string, options?: AxiosRequestConfig) { - return AvatarsApiFp(this.configuration).selectAvatar(avatarId, options).then((request) => request(this.axios, this.basePath)); - } + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Create a Group role. + * @summary Create GroupRole + * @param {string} groupId Must be a valid group ID. + * @param {CreateGroupRoleRequest} [createGroupRoleRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + createGroupRole: async (groupId: string, createGroupRoleRequest?: CreateGroupRoleRequest, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'groupId' is not null or undefined + assertParamExists('createGroupRole', 'groupId', groupId) + const localVarPath = `/groups/{groupId}/roles` + .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } - /** - * Switches into that avatar as your fallback avatar. - * @summary Select Fallback Avatar - * @param {string} avatarId - * @param {*} [options] Override http request option. - * @throws {RequiredError} - * @memberof AvatarsApi - */ - public selectFallbackAvatar(avatarId: string, options?: AxiosRequestConfig) { - return AvatarsApiFp(this.configuration).selectFallbackAvatar(avatarId, options).then((request) => request(this.axios, this.basePath)); - } + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; - /** - * Update information about a specific avatar. - * @summary Update Avatar - * @param {string} avatarId - * @param {UpdateAvatarRequest} [updateAvatarRequest] - * @param {*} [options] Override http request option. - * @throws {RequiredError} - * @memberof AvatarsApi - */ - public updateAvatar(avatarId: string, updateAvatarRequest?: UpdateAvatarRequest, options?: AxiosRequestConfig) { - return AvatarsApiFp(this.configuration).updateAvatar(avatarId, updateAvatarRequest, options).then((request) => request(this.axios, this.basePath)); - } -} + // authentication apiKeyCookie required + + // authentication authCookie required -/** - * EconomyApi - axios parameter creator - * @export - */ -export const EconomyApiAxiosParamCreator = function (configuration?: Configuration) { - return { + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(createGroupRoleRequest, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, /** - * Get a list of all current user subscriptions. - * @summary Get Current Subscriptions + * Deletes a Group. + * @summary Delete Group + * @param {string} groupId Must be a valid group ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getCurrentSubscriptions: async (options: AxiosRequestConfig = {}): Promise => { - const localVarPath = `/auth/user/subscription`; + deleteGroup: async (groupId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'groupId' is not null or undefined + assertParamExists('deleteGroup', 'groupId', groupId) + const localVarPath = `/groups/{groupId}` + .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -5652,7 +9618,7 @@ export const EconomyApiAxiosParamCreator = function (configuration?: Configurati baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; @@ -5672,17 +9638,17 @@ export const EconomyApiAxiosParamCreator = function (configuration?: Configurati }; }, /** - * Get a single License Group by given ID. - * @summary Get License Group - * @param {string} licenseGroupId + * Deletes the announcement for a Group. + * @summary Delete Group Announcement + * @param {string} groupId Must be a valid group ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getLicenseGroup: async (licenseGroupId: string, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'licenseGroupId' is not null or undefined - assertParamExists('getLicenseGroup', 'licenseGroupId', licenseGroupId) - const localVarPath = `/licenseGroups/{licenseGroupId}` - .replace(`{${"licenseGroupId"}}`, encodeURIComponent(String(licenseGroupId))); + deleteGroupAnnouncement: async (groupId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'groupId' is not null or undefined + assertParamExists('deleteGroupAnnouncement', 'groupId', groupId) + const localVarPath = `/groups/{groupId}/announcement` + .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -5690,7 +9656,7 @@ export const EconomyApiAxiosParamCreator = function (configuration?: Configurati baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; @@ -5710,18 +9676,21 @@ export const EconomyApiAxiosParamCreator = function (configuration?: Configurati }; }, /** - * Get a single Steam transactions by ID. This returns the exact same information as `getSteamTransactions`, so no point in using this endpoint. - * @summary Get Steam Transaction - * @param {string} transactionId + * Deletes a gallery for a Group. + * @summary Delete Group Gallery + * @param {string} groupId Must be a valid group ID. + * @param {string} groupGalleryId Must be a valid group gallery ID. * @param {*} [options] Override http request option. - * @deprecated * @throws {RequiredError} */ - getSteamTransaction: async (transactionId: string, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'transactionId' is not null or undefined - assertParamExists('getSteamTransaction', 'transactionId', transactionId) - const localVarPath = `/Steam/transactions/{transactionId}` - .replace(`{${"transactionId"}}`, encodeURIComponent(String(transactionId))); + deleteGroupGallery: async (groupId: string, groupGalleryId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'groupId' is not null or undefined + assertParamExists('deleteGroupGallery', 'groupId', groupId) + // verify required parameter 'groupGalleryId' is not null or undefined + assertParamExists('deleteGroupGallery', 'groupGalleryId', groupGalleryId) + const localVarPath = `/groups/{groupId}/galleries/{groupGalleryId}` + .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))) + .replace(`{${"groupGalleryId"}}`, encodeURIComponent(String(groupGalleryId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -5729,7 +9698,7 @@ export const EconomyApiAxiosParamCreator = function (configuration?: Configurati baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; @@ -5749,13 +9718,25 @@ export const EconomyApiAxiosParamCreator = function (configuration?: Configurati }; }, /** - * Get all own Steam transactions. - * @summary List Steam Transactions + * Deletes an image from a Group gallery. + * @summary Delete Group Gallery Image + * @param {string} groupId Must be a valid group ID. + * @param {string} groupGalleryId Must be a valid group gallery ID. + * @param {string} groupGalleryImageId Must be a valid group gallery image ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getSteamTransactions: async (options: AxiosRequestConfig = {}): Promise => { - const localVarPath = `/Steam/transactions`; + deleteGroupGalleryImage: async (groupId: string, groupGalleryId: string, groupGalleryImageId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'groupId' is not null or undefined + assertParamExists('deleteGroupGalleryImage', 'groupId', groupId) + // verify required parameter 'groupGalleryId' is not null or undefined + assertParamExists('deleteGroupGalleryImage', 'groupGalleryId', groupGalleryId) + // verify required parameter 'groupGalleryImageId' is not null or undefined + assertParamExists('deleteGroupGalleryImage', 'groupGalleryImageId', groupGalleryImageId) + const localVarPath = `/groups/{groupId}/galleries/{groupGalleryId}/images/{groupGalleryImageId}` + .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))) + .replace(`{${"groupGalleryId"}}`, encodeURIComponent(String(groupGalleryId))) + .replace(`{${"groupGalleryImageId"}}`, encodeURIComponent(String(groupGalleryImageId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -5763,7 +9744,7 @@ export const EconomyApiAxiosParamCreator = function (configuration?: Configurati baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; @@ -5783,13 +9764,21 @@ export const EconomyApiAxiosParamCreator = function (configuration?: Configurati }; }, /** - * List all existing Subscriptions. For example, \"vrchatplus-monthly\" and \"vrchatplus-yearly\". - * @summary List Subscriptions + * Deletes an Group invite sent to a User + * @summary Delete User Invite + * @param {string} groupId Must be a valid group ID. + * @param {string} userId Must be a valid user ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getSubscriptions: async (options: AxiosRequestConfig = {}): Promise => { - const localVarPath = `/subscriptions`; + deleteGroupInvite: async (groupId: string, userId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'groupId' is not null or undefined + assertParamExists('deleteGroupInvite', 'groupId', groupId) + // verify required parameter 'userId' is not null or undefined + assertParamExists('deleteGroupInvite', 'userId', userId) + const localVarPath = `/groups/{groupId}/invites/{userId}` + .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))) + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -5797,7 +9786,7 @@ export const EconomyApiAxiosParamCreator = function (configuration?: Configurati baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; @@ -5816,212 +9805,22 @@ export const EconomyApiAxiosParamCreator = function (configuration?: Configurati options: localVarRequestOptions, }; }, - } -}; - -/** - * EconomyApi - functional programming interface - * @export - */ -export const EconomyApiFp = function(configuration?: Configuration) { - const localVarAxiosParamCreator = EconomyApiAxiosParamCreator(configuration) - return { - /** - * Get a list of all current user subscriptions. - * @summary Get Current Subscriptions - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - async getCurrentSubscriptions(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getCurrentSubscriptions(options); - return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); - }, - /** - * Get a single License Group by given ID. - * @summary Get License Group - * @param {string} licenseGroupId - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - async getLicenseGroup(licenseGroupId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getLicenseGroup(licenseGroupId, options); - return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); - }, - /** - * Get a single Steam transactions by ID. This returns the exact same information as `getSteamTransactions`, so no point in using this endpoint. - * @summary Get Steam Transaction - * @param {string} transactionId - * @param {*} [options] Override http request option. - * @deprecated - * @throws {RequiredError} - */ - async getSteamTransaction(transactionId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getSteamTransaction(transactionId, options); - return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); - }, - /** - * Get all own Steam transactions. - * @summary List Steam Transactions - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - async getSteamTransactions(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getSteamTransactions(options); - return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); - }, - /** - * List all existing Subscriptions. For example, \"vrchatplus-monthly\" and \"vrchatplus-yearly\". - * @summary List Subscriptions - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - async getSubscriptions(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getSubscriptions(options); - return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); - }, - } -}; - -/** - * EconomyApi - factory interface - * @export - */ -export const EconomyApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { - const localVarFp = EconomyApiFp(configuration) - return { - /** - * Get a list of all current user subscriptions. - * @summary Get Current Subscriptions - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - getCurrentSubscriptions(options?: any): AxiosPromise> { - return localVarFp.getCurrentSubscriptions(options).then((request) => request(axios, basePath)); - }, - /** - * Get a single License Group by given ID. - * @summary Get License Group - * @param {string} licenseGroupId - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - getLicenseGroup(licenseGroupId: string, options?: any): AxiosPromise { - return localVarFp.getLicenseGroup(licenseGroupId, options).then((request) => request(axios, basePath)); - }, - /** - * Get a single Steam transactions by ID. This returns the exact same information as `getSteamTransactions`, so no point in using this endpoint. - * @summary Get Steam Transaction - * @param {string} transactionId - * @param {*} [options] Override http request option. - * @deprecated - * @throws {RequiredError} - */ - getSteamTransaction(transactionId: string, options?: any): AxiosPromise { - return localVarFp.getSteamTransaction(transactionId, options).then((request) => request(axios, basePath)); - }, - /** - * Get all own Steam transactions. - * @summary List Steam Transactions - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - getSteamTransactions(options?: any): AxiosPromise> { - return localVarFp.getSteamTransactions(options).then((request) => request(axios, basePath)); - }, - /** - * List all existing Subscriptions. For example, \"vrchatplus-monthly\" and \"vrchatplus-yearly\". - * @summary List Subscriptions - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - getSubscriptions(options?: any): AxiosPromise> { - return localVarFp.getSubscriptions(options).then((request) => request(axios, basePath)); - }, - }; -}; - -/** - * EconomyApi - object-oriented interface - * @export - * @class EconomyApi - * @extends {BaseAPI} - */ -export class EconomyApi extends BaseAPI { - /** - * Get a list of all current user subscriptions. - * @summary Get Current Subscriptions - * @param {*} [options] Override http request option. - * @throws {RequiredError} - * @memberof EconomyApi - */ - public getCurrentSubscriptions(options?: AxiosRequestConfig) { - return EconomyApiFp(this.configuration).getCurrentSubscriptions(options).then((request) => request(this.axios, this.basePath)); - } - - /** - * Get a single License Group by given ID. - * @summary Get License Group - * @param {string} licenseGroupId - * @param {*} [options] Override http request option. - * @throws {RequiredError} - * @memberof EconomyApi - */ - public getLicenseGroup(licenseGroupId: string, options?: AxiosRequestConfig) { - return EconomyApiFp(this.configuration).getLicenseGroup(licenseGroupId, options).then((request) => request(this.axios, this.basePath)); - } - - /** - * Get a single Steam transactions by ID. This returns the exact same information as `getSteamTransactions`, so no point in using this endpoint. - * @summary Get Steam Transaction - * @param {string} transactionId - * @param {*} [options] Override http request option. - * @deprecated - * @throws {RequiredError} - * @memberof EconomyApi - */ - public getSteamTransaction(transactionId: string, options?: AxiosRequestConfig) { - return EconomyApiFp(this.configuration).getSteamTransaction(transactionId, options).then((request) => request(this.axios, this.basePath)); - } - - /** - * Get all own Steam transactions. - * @summary List Steam Transactions - * @param {*} [options] Override http request option. - * @throws {RequiredError} - * @memberof EconomyApi - */ - public getSteamTransactions(options?: AxiosRequestConfig) { - return EconomyApiFp(this.configuration).getSteamTransactions(options).then((request) => request(this.axios, this.basePath)); - } - - /** - * List all existing Subscriptions. For example, \"vrchatplus-monthly\" and \"vrchatplus-yearly\". - * @summary List Subscriptions - * @param {*} [options] Override http request option. - * @throws {RequiredError} - * @memberof EconomyApi - */ - public getSubscriptions(options?: AxiosRequestConfig) { - return EconomyApiFp(this.configuration).getSubscriptions(options).then((request) => request(this.axios, this.basePath)); - } -} - - -/** - * FavoritesApi - axios parameter creator - * @export - */ -export const FavoritesApiAxiosParamCreator = function (configuration?: Configuration) { - return { /** - * Add a new favorite. Friend groups are named `group_0` through `group_3`. Avatar and World groups are named `avatars1` to `avatars4` and `worlds1` to `worlds4`. You cannot add people whom you are not friends with to your friends list. Destroying a friendship removes the person as favorite on both sides. - * @summary Add Favorite - * @param {AddFavoriteRequest} [addFavoriteRequest] + * Deletes a Group Role by ID and returns the remaining roles. + * @summary Delete Group Role + * @param {string} groupId Must be a valid group ID. + * @param {string} groupRoleId Must be a valid group role ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - addFavorite: async (addFavoriteRequest?: AddFavoriteRequest, options: AxiosRequestConfig = {}): Promise => { - const localVarPath = `/favorites`; + deleteGroupRole: async (groupId: string, groupRoleId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'groupId' is not null or undefined + assertParamExists('deleteGroupRole', 'groupId', groupId) + // verify required parameter 'groupRoleId' is not null or undefined + assertParamExists('deleteGroupRole', 'groupRoleId', groupRoleId) + const localVarPath = `/groups/{groupId}/roles/{groupRoleId}` + .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))) + .replace(`{${"groupRoleId"}}`, encodeURIComponent(String(groupRoleId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -6029,7 +9828,7 @@ export const FavoritesApiAxiosParamCreator = function (configuration?: Configura baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; @@ -6039,38 +9838,28 @@ export const FavoritesApiAxiosParamCreator = function (configuration?: Configura - localVarHeaderParameter['Content-Type'] = 'application/json'; - setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - localVarRequestOptions.data = serializeDataIfNeeded(addFavoriteRequest, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), - options: localVarRequestOptions, - }; - }, - /** - * Clear ALL contents of a specific favorite group. - * @summary Clear Favorite Group - * @param {'world' | 'friend' | 'avatar'} favoriteGroupType The type of group to fetch, must be a valid FavoriteType. - * @param {string} favoriteGroupName - * @param {string} userId - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - clearFavoriteGroup: async (favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'favoriteGroupType' is not null or undefined - assertParamExists('clearFavoriteGroup', 'favoriteGroupType', favoriteGroupType) - // verify required parameter 'favoriteGroupName' is not null or undefined - assertParamExists('clearFavoriteGroup', 'favoriteGroupName', favoriteGroupName) - // verify required parameter 'userId' is not null or undefined - assertParamExists('clearFavoriteGroup', 'userId', userId) - const localVarPath = `/favorite/group/{favoriteGroupType}/{favoriteGroupName}/{userId}` - .replace(`{${"favoriteGroupType"}}`, encodeURIComponent(String(favoriteGroupType))) - .replace(`{${"favoriteGroupName"}}`, encodeURIComponent(String(favoriteGroupName))) - .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); + options: localVarRequestOptions, + }; + }, + /** + * Returns a single Group by ID. + * @summary Get Group by ID + * @param {string} groupId Must be a valid group ID. + * @param {boolean} [includeRoles] Include roles for the Group object. Defaults to false. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getGroup: async (groupId: string, includeRoles?: boolean, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'groupId' is not null or undefined + assertParamExists('getGroup', 'groupId', groupId) + const localVarPath = `/groups/{groupId}` + .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -6078,7 +9867,7 @@ export const FavoritesApiAxiosParamCreator = function (configuration?: Configura baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; @@ -6086,6 +9875,10 @@ export const FavoritesApiAxiosParamCreator = function (configuration?: Configura // authentication authCookie required + if (includeRoles !== undefined) { + localVarQueryParameter['includeRoles'] = includeRoles; + } + setSearchParams(localVarUrlObj, localVarQueryParameter); @@ -6098,17 +9891,17 @@ export const FavoritesApiAxiosParamCreator = function (configuration?: Configura }; }, /** - * Return information about a specific Favorite. - * @summary Show Favorite - * @param {string} favoriteId + * Returns the announcement for a Group. If no announcement has been made, then it returns **empty object**. If an announcement exists, then it will always return all fields except `imageId` and `imageUrl` which may be null. + * @summary Get Group Announcement + * @param {string} groupId Must be a valid group ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFavorite: async (favoriteId: string, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'favoriteId' is not null or undefined - assertParamExists('getFavorite', 'favoriteId', favoriteId) - const localVarPath = `/favorites/{favoriteId}` - .replace(`{${"favoriteId"}}`, encodeURIComponent(String(favoriteId))); + getGroupAnnouncements: async (groupId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'groupId' is not null or undefined + assertParamExists('getGroupAnnouncements', 'groupId', groupId) + const localVarPath = `/groups/{groupId}/announcement` + .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -6136,25 +9929,21 @@ export const FavoritesApiAxiosParamCreator = function (configuration?: Configura }; }, /** - * Fetch information about a specific favorite group. - * @summary Show Favorite Group - * @param {'world' | 'friend' | 'avatar'} favoriteGroupType The type of group to fetch, must be a valid FavoriteType. - * @param {string} favoriteGroupName - * @param {string} userId + * Returns a list of audit logs for a Group. + * @summary Get Group Audit Logs + * @param {string} groupId Must be a valid group ID. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [startDate] The start date of the search range. + * @param {string} [endDate] The end date of the search range. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFavoriteGroup: async (favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'favoriteGroupType' is not null or undefined - assertParamExists('getFavoriteGroup', 'favoriteGroupType', favoriteGroupType) - // verify required parameter 'favoriteGroupName' is not null or undefined - assertParamExists('getFavoriteGroup', 'favoriteGroupName', favoriteGroupName) - // verify required parameter 'userId' is not null or undefined - assertParamExists('getFavoriteGroup', 'userId', userId) - const localVarPath = `/favorite/group/{favoriteGroupType}/{favoriteGroupName}/{userId}` - .replace(`{${"favoriteGroupType"}}`, encodeURIComponent(String(favoriteGroupType))) - .replace(`{${"favoriteGroupName"}}`, encodeURIComponent(String(favoriteGroupName))) - .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); + getGroupAuditLogs: async (groupId: string, n?: number, offset?: number, startDate?: string, endDate?: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'groupId' is not null or undefined + assertParamExists('getGroupAuditLogs', 'groupId', groupId) + const localVarPath = `/groups/{groupId}/auditLogs` + .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -6170,6 +9959,26 @@ export const FavoritesApiAxiosParamCreator = function (configuration?: Configura // authentication authCookie required + if (n !== undefined) { + localVarQueryParameter['n'] = n; + } + + if (offset !== undefined) { + localVarQueryParameter['offset'] = offset; + } + + if (startDate !== undefined) { + localVarQueryParameter['startDate'] = (startDate as any instanceof Date) ? + (startDate as any).toISOString() : + startDate; + } + + if (endDate !== undefined) { + localVarQueryParameter['endDate'] = (endDate as any instanceof Date) ? + (endDate as any).toISOString() : + endDate; + } + setSearchParams(localVarUrlObj, localVarQueryParameter); @@ -6182,16 +9991,19 @@ export const FavoritesApiAxiosParamCreator = function (configuration?: Configura }; }, /** - * Return a list of favorite groups owned by a user. Returns the same information as `getFavoriteGroups`. - * @summary List Favorite Groups + * Returns a list of banned users for a Group. + * @summary Get Group Bans + * @param {string} groupId Must be a valid group ID. * @param {number} [n] The number of objects to return. * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. - * @param {string} [ownerId] The owner of whoms favorite groups to return. Must be a UserID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFavoriteGroups: async (n?: number, offset?: number, ownerId?: string, options: AxiosRequestConfig = {}): Promise => { - const localVarPath = `/favorite/groups`; + getGroupBans: async (groupId: string, n?: number, offset?: number, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'groupId' is not null or undefined + assertParamExists('getGroupBans', 'groupId', groupId) + const localVarPath = `/groups/{groupId}/bans` + .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -6215,10 +10027,6 @@ export const FavoritesApiAxiosParamCreator = function (configuration?: Configura localVarQueryParameter['offset'] = offset; } - if (ownerId !== undefined) { - localVarQueryParameter['ownerId'] = ownerId; - } - setSearchParams(localVarUrlObj, localVarQueryParameter); @@ -6231,17 +10039,24 @@ export const FavoritesApiAxiosParamCreator = function (configuration?: Configura }; }, /** - * Returns a list of favorites. - * @summary List Favorites + * Returns a list of images for a Group gallery. + * @summary Get Group Gallery Images + * @param {string} groupId Must be a valid group ID. + * @param {string} groupGalleryId Must be a valid group gallery ID. * @param {number} [n] The number of objects to return. * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. - * @param {string} [type] The type of favorites to return, FavoriteType. - * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. + * @param {boolean} [approved] If specified, only returns images that have been approved or not approved. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFavorites: async (n?: number, offset?: number, type?: string, tag?: string, options: AxiosRequestConfig = {}): Promise => { - const localVarPath = `/favorites`; + getGroupGalleryImages: async (groupId: string, groupGalleryId: string, n?: number, offset?: number, approved?: boolean, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'groupId' is not null or undefined + assertParamExists('getGroupGalleryImages', 'groupId', groupId) + // verify required parameter 'groupGalleryId' is not null or undefined + assertParamExists('getGroupGalleryImages', 'groupGalleryId', groupGalleryId) + const localVarPath = `/groups/{groupId}/galleries/{groupGalleryId}` + .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))) + .replace(`{${"groupGalleryId"}}`, encodeURIComponent(String(groupGalleryId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -6265,12 +10080,8 @@ export const FavoritesApiAxiosParamCreator = function (configuration?: Configura localVarQueryParameter['offset'] = offset; } - if (type !== undefined) { - localVarQueryParameter['type'] = type; - } - - if (tag !== undefined) { - localVarQueryParameter['tag'] = tag; + if (approved !== undefined) { + localVarQueryParameter['approved'] = approved; } @@ -6285,17 +10096,17 @@ export const FavoritesApiAxiosParamCreator = function (configuration?: Configura }; }, /** - * Remove a favorite from your favorites list. - * @summary Remove Favorite - * @param {string} favoriteId + * Returns a list of members that have been invited to the Group. + * @summary Get Group Invites Sent + * @param {string} groupId Must be a valid group ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - removeFavorite: async (favoriteId: string, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'favoriteId' is not null or undefined - assertParamExists('removeFavorite', 'favoriteId', favoriteId) - const localVarPath = `/favorites/{favoriteId}` - .replace(`{${"favoriteId"}}`, encodeURIComponent(String(favoriteId))); + getGroupInvites: async (groupId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'groupId' is not null or undefined + assertParamExists('getGroupInvites', 'groupId', groupId) + const localVarPath = `/groups/{groupId}/invites` + .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -6303,7 +10114,7 @@ export const FavoritesApiAxiosParamCreator = function (configuration?: Configura baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; @@ -6323,25 +10134,20 @@ export const FavoritesApiAxiosParamCreator = function (configuration?: Configura }; }, /** - * Update information about a specific favorite group. - * @summary Update Favorite Group - * @param {'world' | 'friend' | 'avatar'} favoriteGroupType The type of group to fetch, must be a valid FavoriteType. - * @param {string} favoriteGroupName - * @param {string} userId - * @param {UpdateFavoriteGroupRequest} [updateFavoriteGroupRequest] + * Returns a LimitedGroup Member. + * @summary Get Group Member + * @param {string} groupId Must be a valid group ID. + * @param {string} userId Must be a valid user ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - updateFavoriteGroup: async (favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, updateFavoriteGroupRequest?: UpdateFavoriteGroupRequest, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'favoriteGroupType' is not null or undefined - assertParamExists('updateFavoriteGroup', 'favoriteGroupType', favoriteGroupType) - // verify required parameter 'favoriteGroupName' is not null or undefined - assertParamExists('updateFavoriteGroup', 'favoriteGroupName', favoriteGroupName) + getGroupMember: async (groupId: string, userId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'groupId' is not null or undefined + assertParamExists('getGroupMember', 'groupId', groupId) // verify required parameter 'userId' is not null or undefined - assertParamExists('updateFavoriteGroup', 'userId', userId) - const localVarPath = `/favorite/group/{favoriteGroupType}/{favoriteGroupName}/{userId}` - .replace(`{${"favoriteGroupType"}}`, encodeURIComponent(String(favoriteGroupType))) - .replace(`{${"favoriteGroupName"}}`, encodeURIComponent(String(favoriteGroupName))) + assertParamExists('getGroupMember', 'userId', userId) + const localVarPath = `/groups/{groupId}/members/{userId}` + .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))) .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -6350,7 +10156,7 @@ export const FavoritesApiAxiosParamCreator = function (configuration?: Configura baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; @@ -6360,365 +10166,315 @@ export const FavoritesApiAxiosParamCreator = function (configuration?: Configura - localVarHeaderParameter['Content-Type'] = 'application/json'; - setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - localVarRequestOptions.data = serializeDataIfNeeded(updateFavoriteGroupRequest, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, - } -}; - -/** - * FavoritesApi - functional programming interface - * @export - */ -export const FavoritesApiFp = function(configuration?: Configuration) { - const localVarAxiosParamCreator = FavoritesApiAxiosParamCreator(configuration) - return { - /** - * Add a new favorite. Friend groups are named `group_0` through `group_3`. Avatar and World groups are named `avatars1` to `avatars4` and `worlds1` to `worlds4`. You cannot add people whom you are not friends with to your friends list. Destroying a friendship removes the person as favorite on both sides. - * @summary Add Favorite - * @param {AddFavoriteRequest} [addFavoriteRequest] - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - async addFavorite(addFavoriteRequest?: AddFavoriteRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.addFavorite(addFavoriteRequest, options); - return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); - }, - /** - * Clear ALL contents of a specific favorite group. - * @summary Clear Favorite Group - * @param {'world' | 'friend' | 'avatar'} favoriteGroupType The type of group to fetch, must be a valid FavoriteType. - * @param {string} favoriteGroupName - * @param {string} userId - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - async clearFavoriteGroup(favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.clearFavoriteGroup(favoriteGroupType, favoriteGroupName, userId, options); - return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); - }, - /** - * Return information about a specific Favorite. - * @summary Show Favorite - * @param {string} favoriteId - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - async getFavorite(favoriteId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getFavorite(favoriteId, options); - return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); - }, - /** - * Fetch information about a specific favorite group. - * @summary Show Favorite Group - * @param {'world' | 'friend' | 'avatar'} favoriteGroupType The type of group to fetch, must be a valid FavoriteType. - * @param {string} favoriteGroupName - * @param {string} userId - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - async getFavoriteGroup(favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getFavoriteGroup(favoriteGroupType, favoriteGroupName, userId, options); - return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); - }, - /** - * Return a list of favorite groups owned by a user. Returns the same information as `getFavoriteGroups`. - * @summary List Favorite Groups - * @param {number} [n] The number of objects to return. - * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. - * @param {string} [ownerId] The owner of whoms favorite groups to return. Must be a UserID. - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - async getFavoriteGroups(n?: number, offset?: number, ownerId?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getFavoriteGroups(n, offset, ownerId, options); - return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); - }, /** - * Returns a list of favorites. - * @summary List Favorites + * Returns a List of all **other** Group Members. This endpoint will never return the user calling the endpoint. Information about the user calling the endpoint must be found in the `myMember` field of the Group object. + * @summary List Group Members + * @param {string} groupId Must be a valid group ID. * @param {number} [n] The number of objects to return. * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. - * @param {string} [type] The type of favorites to return, FavoriteType. - * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - async getFavorites(n?: number, offset?: number, type?: string, tag?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getFavorites(n, offset, type, tag, options); - return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); - }, - /** - * Remove a favorite from your favorites list. - * @summary Remove Favorite - * @param {string} favoriteId - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - async removeFavorite(favoriteId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.removeFavorite(favoriteId, options); - return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); - }, - /** - * Update information about a specific favorite group. - * @summary Update Favorite Group - * @param {'world' | 'friend' | 'avatar'} favoriteGroupType The type of group to fetch, must be a valid FavoriteType. - * @param {string} favoriteGroupName - * @param {string} userId - * @param {UpdateFavoriteGroupRequest} [updateFavoriteGroupRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async updateFavoriteGroup(favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, updateFavoriteGroupRequest?: UpdateFavoriteGroupRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.updateFavoriteGroup(favoriteGroupType, favoriteGroupName, userId, updateFavoriteGroupRequest, options); - return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); - }, - } -}; + getGroupMembers: async (groupId: string, n?: number, offset?: number, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'groupId' is not null or undefined + assertParamExists('getGroupMembers', 'groupId', groupId) + const localVarPath = `/groups/{groupId}/members` + .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } -/** - * FavoritesApi - factory interface - * @export - */ -export const FavoritesApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { - const localVarFp = FavoritesApiFp(configuration) - return { - /** - * Add a new favorite. Friend groups are named `group_0` through `group_3`. Avatar and World groups are named `avatars1` to `avatars4` and `worlds1` to `worlds4`. You cannot add people whom you are not friends with to your friends list. Destroying a friendship removes the person as favorite on both sides. - * @summary Add Favorite - * @param {AddFavoriteRequest} [addFavoriteRequest] - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - addFavorite(addFavoriteRequest?: AddFavoriteRequest, options?: any): AxiosPromise { - return localVarFp.addFavorite(addFavoriteRequest, options).then((request) => request(axios, basePath)); - }, - /** - * Clear ALL contents of a specific favorite group. - * @summary Clear Favorite Group - * @param {'world' | 'friend' | 'avatar'} favoriteGroupType The type of group to fetch, must be a valid FavoriteType. - * @param {string} favoriteGroupName - * @param {string} userId - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - clearFavoriteGroup(favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, options?: any): AxiosPromise { - return localVarFp.clearFavoriteGroup(favoriteGroupType, favoriteGroupName, userId, options).then((request) => request(axios, basePath)); - }, - /** - * Return information about a specific Favorite. - * @summary Show Favorite - * @param {string} favoriteId - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - getFavorite(favoriteId: string, options?: any): AxiosPromise { - return localVarFp.getFavorite(favoriteId, options).then((request) => request(axios, basePath)); + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + if (n !== undefined) { + localVarQueryParameter['n'] = n; + } + + if (offset !== undefined) { + localVarQueryParameter['offset'] = offset; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; }, /** - * Fetch information about a specific favorite group. - * @summary Show Favorite Group - * @param {'world' | 'friend' | 'avatar'} favoriteGroupType The type of group to fetch, must be a valid FavoriteType. - * @param {string} favoriteGroupName - * @param {string} userId + * Returns a List of all possible/available permissions for a Group. + * @summary List Group Permissions + * @param {string} groupId Must be a valid group ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFavoriteGroup(favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, options?: any): AxiosPromise { - return localVarFp.getFavoriteGroup(favoriteGroupType, favoriteGroupName, userId, options).then((request) => request(axios, basePath)); + getGroupPermissions: async (groupId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'groupId' is not null or undefined + assertParamExists('getGroupPermissions', 'groupId', groupId) + const localVarPath = `/groups/{groupId}/permissions` + .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; }, /** - * Return a list of favorite groups owned by a user. Returns the same information as `getFavoriteGroups`. - * @summary List Favorite Groups - * @param {number} [n] The number of objects to return. - * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. - * @param {string} [ownerId] The owner of whoms favorite groups to return. Must be a UserID. + * Returns a list of members that have requested to join the Group. + * @summary Get Group Join Requests + * @param {string} groupId Must be a valid group ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFavoriteGroups(n?: number, offset?: number, ownerId?: string, options?: any): AxiosPromise> { - return localVarFp.getFavoriteGroups(n, offset, ownerId, options).then((request) => request(axios, basePath)); + getGroupRequests: async (groupId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'groupId' is not null or undefined + assertParamExists('getGroupRequests', 'groupId', groupId) + const localVarPath = `/groups/{groupId}/requests` + .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; }, /** - * Returns a list of favorites. - * @summary List Favorites - * @param {number} [n] The number of objects to return. - * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. - * @param {string} [type] The type of favorites to return, FavoriteType. - * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. + * Returns a Group Role by ID. + * @summary Get Group Roles + * @param {string} groupId Must be a valid group ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFavorites(n?: number, offset?: number, type?: string, tag?: string, options?: any): AxiosPromise> { - return localVarFp.getFavorites(n, offset, type, tag, options).then((request) => request(axios, basePath)); + getGroupRoles: async (groupId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'groupId' is not null or undefined + assertParamExists('getGroupRoles', 'groupId', groupId) + const localVarPath = `/groups/{groupId}/roles` + .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; }, /** - * Remove a favorite from your favorites list. - * @summary Remove Favorite - * @param {string} favoriteId + * Join a Group by ID and returns the joined Group. + * @summary Join Group + * @param {string} groupId Must be a valid group ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - removeFavorite(favoriteId: string, options?: any): AxiosPromise { - return localVarFp.removeFavorite(favoriteId, options).then((request) => request(axios, basePath)); + joinGroup: async (groupId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'groupId' is not null or undefined + assertParamExists('joinGroup', 'groupId', groupId) + const localVarPath = `/groups/{groupId}/join` + .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; }, /** - * Update information about a specific favorite group. - * @summary Update Favorite Group - * @param {'world' | 'friend' | 'avatar'} favoriteGroupType The type of group to fetch, must be a valid FavoriteType. - * @param {string} favoriteGroupName - * @param {string} userId - * @param {UpdateFavoriteGroupRequest} [updateFavoriteGroupRequest] + * Kicks a Group Member from the Group. The current user must have the \"Remove Group Members\" permission. + * @summary Kick Group Member + * @param {string} groupId Must be a valid group ID. + * @param {string} userId Must be a valid user ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - updateFavoriteGroup(favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, updateFavoriteGroupRequest?: UpdateFavoriteGroupRequest, options?: any): AxiosPromise { - return localVarFp.updateFavoriteGroup(favoriteGroupType, favoriteGroupName, userId, updateFavoriteGroupRequest, options).then((request) => request(axios, basePath)); - }, - }; -}; - -/** - * FavoritesApi - object-oriented interface - * @export - * @class FavoritesApi - * @extends {BaseAPI} - */ -export class FavoritesApi extends BaseAPI { - /** - * Add a new favorite. Friend groups are named `group_0` through `group_3`. Avatar and World groups are named `avatars1` to `avatars4` and `worlds1` to `worlds4`. You cannot add people whom you are not friends with to your friends list. Destroying a friendship removes the person as favorite on both sides. - * @summary Add Favorite - * @param {AddFavoriteRequest} [addFavoriteRequest] - * @param {*} [options] Override http request option. - * @throws {RequiredError} - * @memberof FavoritesApi - */ - public addFavorite(addFavoriteRequest?: AddFavoriteRequest, options?: AxiosRequestConfig) { - return FavoritesApiFp(this.configuration).addFavorite(addFavoriteRequest, options).then((request) => request(this.axios, this.basePath)); - } + kickGroupMember: async (groupId: string, userId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'groupId' is not null or undefined + assertParamExists('kickGroupMember', 'groupId', groupId) + // verify required parameter 'userId' is not null or undefined + assertParamExists('kickGroupMember', 'userId', userId) + const localVarPath = `/groups/{groupId}/members/{userId}` + .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))) + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } - /** - * Clear ALL contents of a specific favorite group. - * @summary Clear Favorite Group - * @param {'world' | 'friend' | 'avatar'} favoriteGroupType The type of group to fetch, must be a valid FavoriteType. - * @param {string} favoriteGroupName - * @param {string} userId - * @param {*} [options] Override http request option. - * @throws {RequiredError} - * @memberof FavoritesApi - */ - public clearFavoriteGroup(favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, options?: AxiosRequestConfig) { - return FavoritesApiFp(this.configuration).clearFavoriteGroup(favoriteGroupType, favoriteGroupName, userId, options).then((request) => request(this.axios, this.basePath)); - } + const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; - /** - * Return information about a specific Favorite. - * @summary Show Favorite - * @param {string} favoriteId - * @param {*} [options] Override http request option. - * @throws {RequiredError} - * @memberof FavoritesApi - */ - public getFavorite(favoriteId: string, options?: AxiosRequestConfig) { - return FavoritesApiFp(this.configuration).getFavorite(favoriteId, options).then((request) => request(this.axios, this.basePath)); - } + // authentication apiKeyCookie required - /** - * Fetch information about a specific favorite group. - * @summary Show Favorite Group - * @param {'world' | 'friend' | 'avatar'} favoriteGroupType The type of group to fetch, must be a valid FavoriteType. - * @param {string} favoriteGroupName - * @param {string} userId - * @param {*} [options] Override http request option. - * @throws {RequiredError} - * @memberof FavoritesApi - */ - public getFavoriteGroup(favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, options?: AxiosRequestConfig) { - return FavoritesApiFp(this.configuration).getFavoriteGroup(favoriteGroupType, favoriteGroupName, userId, options).then((request) => request(this.axios, this.basePath)); - } + // authentication authCookie required - /** - * Return a list of favorite groups owned by a user. Returns the same information as `getFavoriteGroups`. - * @summary List Favorite Groups - * @param {number} [n] The number of objects to return. - * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. - * @param {string} [ownerId] The owner of whoms favorite groups to return. Must be a UserID. - * @param {*} [options] Override http request option. - * @throws {RequiredError} - * @memberof FavoritesApi - */ - public getFavoriteGroups(n?: number, offset?: number, ownerId?: string, options?: AxiosRequestConfig) { - return FavoritesApiFp(this.configuration).getFavoriteGroups(n, offset, ownerId, options).then((request) => request(this.axios, this.basePath)); - } - /** - * Returns a list of favorites. - * @summary List Favorites - * @param {number} [n] The number of objects to return. - * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. - * @param {string} [type] The type of favorites to return, FavoriteType. - * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. - * @param {*} [options] Override http request option. - * @throws {RequiredError} - * @memberof FavoritesApi - */ - public getFavorites(n?: number, offset?: number, type?: string, tag?: string, options?: AxiosRequestConfig) { - return FavoritesApiFp(this.configuration).getFavorites(n, offset, type, tag, options).then((request) => request(this.axios, this.basePath)); - } + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - /** - * Remove a favorite from your favorites list. - * @summary Remove Favorite - * @param {string} favoriteId - * @param {*} [options] Override http request option. - * @throws {RequiredError} - * @memberof FavoritesApi - */ - public removeFavorite(favoriteId: string, options?: AxiosRequestConfig) { - return FavoritesApiFp(this.configuration).removeFavorite(favoriteId, options).then((request) => request(this.axios, this.basePath)); - } + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Leave a group by ID. + * @summary Leave Group + * @param {string} groupId Must be a valid group ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + leaveGroup: async (groupId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'groupId' is not null or undefined + assertParamExists('leaveGroup', 'groupId', groupId) + const localVarPath = `/groups/{groupId}/leave` + .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } - /** - * Update information about a specific favorite group. - * @summary Update Favorite Group - * @param {'world' | 'friend' | 'avatar'} favoriteGroupType The type of group to fetch, must be a valid FavoriteType. - * @param {string} favoriteGroupName - * @param {string} userId - * @param {UpdateFavoriteGroupRequest} [updateFavoriteGroupRequest] - * @param {*} [options] Override http request option. - * @throws {RequiredError} - * @memberof FavoritesApi - */ - public updateFavoriteGroup(favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, updateFavoriteGroupRequest?: UpdateFavoriteGroupRequest, options?: AxiosRequestConfig) { - return FavoritesApiFp(this.configuration).updateFavoriteGroup(favoriteGroupType, favoriteGroupName, userId, updateFavoriteGroupRequest, options).then((request) => request(this.axios, this.basePath)); - } -} + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + // authentication apiKeyCookie required -/** - * FilesApi - axios parameter creator - * @export - */ -export const FilesApiAxiosParamCreator = function (configuration?: Configuration) { - return { + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, /** - * Creates a new File object - * @summary Create File - * @param {CreateFileRequest} [createFileRequest] + * Removes a Role from a Group Member + * @summary Remove Role from GroupMember + * @param {string} groupId Must be a valid group ID. + * @param {string} userId Must be a valid user ID. + * @param {string} groupRoleId Must be a valid group role ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - createFile: async (createFileRequest?: CreateFileRequest, options: AxiosRequestConfig = {}): Promise => { - const localVarPath = `/file`; + removeGroupMemberRole: async (groupId: string, userId: string, groupRoleId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'groupId' is not null or undefined + assertParamExists('removeGroupMemberRole', 'groupId', groupId) + // verify required parameter 'userId' is not null or undefined + assertParamExists('removeGroupMemberRole', 'userId', userId) + // verify required parameter 'groupRoleId' is not null or undefined + assertParamExists('removeGroupMemberRole', 'groupRoleId', groupRoleId) + const localVarPath = `/groups/{groupId}/members/{userId}/roles/{groupRoleId}` + .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))) + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))) + .replace(`{${"groupRoleId"}}`, encodeURIComponent(String(groupRoleId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -6726,7 +10482,7 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; @@ -6736,12 +10492,9 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration - localVarHeaderParameter['Content-Type'] = 'application/json'; - setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - localVarRequestOptions.data = serializeDataIfNeeded(createFileRequest, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), @@ -6749,18 +10502,22 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration }; }, /** - * Creates a new FileVersion. Once a Version has been created, proceed to the `/file/{fileId}/{versionId}/file/start` endpoint to start a file upload. - * @summary Create File Version - * @param {string} fileId - * @param {CreateFileVersionRequest} [createFileVersionRequest] + * Responds to a Group Join Request with Accept/Deny + * @summary Respond Group Join request + * @param {string} groupId Must be a valid group ID. + * @param {string} userId Must be a valid user ID. + * @param {RespondGroupJoinRequest} [respondGroupJoinRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - createFileVersion: async (fileId: string, createFileVersionRequest?: CreateFileVersionRequest, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'fileId' is not null or undefined - assertParamExists('createFileVersion', 'fileId', fileId) - const localVarPath = `/file/{fileId}` - .replace(`{${"fileId"}}`, encodeURIComponent(String(fileId))); + respondGroupJoinRequest: async (groupId: string, userId: string, respondGroupJoinRequest?: RespondGroupJoinRequest, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'groupId' is not null or undefined + assertParamExists('respondGroupJoinRequest', 'groupId', groupId) + // verify required parameter 'userId' is not null or undefined + assertParamExists('respondGroupJoinRequest', 'userId', userId) + const localVarPath = `/groups/{groupId}/requests/{userId}` + .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))) + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -6768,7 +10525,7 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; @@ -6783,7 +10540,7 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - localVarRequestOptions.data = serializeDataIfNeeded(createFileVersionRequest, localVarRequestOptions, configuration) + localVarRequestOptions.data = serializeDataIfNeeded(respondGroupJoinRequest, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), @@ -6791,17 +10548,21 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration }; }, /** - * Deletes a File object. - * @summary Delete File - * @param {string} fileId + * Unbans a user from a Group. + * @summary Unban Group Member + * @param {string} groupId Must be a valid group ID. + * @param {string} userId Must be a valid user ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - deleteFile: async (fileId: string, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'fileId' is not null or undefined - assertParamExists('deleteFile', 'fileId', fileId) - const localVarPath = `/file/{fileId}` - .replace(`{${"fileId"}}`, encodeURIComponent(String(fileId))); + unbanGroupMember: async (groupId: string, userId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'groupId' is not null or undefined + assertParamExists('unbanGroupMember', 'groupId', groupId) + // verify required parameter 'userId' is not null or undefined + assertParamExists('unbanGroupMember', 'userId', userId) + const localVarPath = `/groups/{groupId}/bans/{userId}` + .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))) + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -6829,21 +10590,18 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration }; }, /** - * Delete a specific version of a file. You can only delete the latest version. - * @summary Delete File Version - * @param {string} fileId - * @param {number} versionId + * Updates a Group and returns it. + * @summary Update Group + * @param {string} groupId Must be a valid group ID. + * @param {UpdateGroupRequest} [updateGroupRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - deleteFileVersion: async (fileId: string, versionId: number, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'fileId' is not null or undefined - assertParamExists('deleteFileVersion', 'fileId', fileId) - // verify required parameter 'versionId' is not null or undefined - assertParamExists('deleteFileVersion', 'versionId', versionId) - const localVarPath = `/file/{fileId}/{versionId}` - .replace(`{${"fileId"}}`, encodeURIComponent(String(fileId))) - .replace(`{${"versionId"}}`, encodeURIComponent(String(versionId))); + updateGroup: async (groupId: string, updateGroupRequest?: UpdateGroupRequest, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'groupId' is not null or undefined + assertParamExists('updateGroup', 'groupId', groupId) + const localVarPath = `/groups/{groupId}` + .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -6851,7 +10609,7 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; @@ -6861,9 +10619,12 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration + localVarHeaderParameter['Content-Type'] = 'application/json'; + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(updateGroupRequest, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), @@ -6871,21 +10632,22 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration }; }, /** - * Downloads the file with the provided version number. **Version Note:** Version 0 is always when the file was created. The real data is usually always located in version 1 and up. **Extension Note:** Files are not guaranteed to have a file extensions. UnityPackage files tends to have it, images through this endpoint do not. You are responsible for appending file extension from the `extension` field when neccesary. - * @summary Download File Version - * @param {string} fileId - * @param {number} versionId + * Updates a gallery for a Group. + * @summary Update Group Gallery + * @param {string} groupId Must be a valid group ID. + * @param {string} groupGalleryId Must be a valid group gallery ID. + * @param {UpdateGroupGalleryRequest} [updateGroupGalleryRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - downloadFileVersion: async (fileId: string, versionId: number, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'fileId' is not null or undefined - assertParamExists('downloadFileVersion', 'fileId', fileId) - // verify required parameter 'versionId' is not null or undefined - assertParamExists('downloadFileVersion', 'versionId', versionId) - const localVarPath = `/file/{fileId}/{versionId}` - .replace(`{${"fileId"}}`, encodeURIComponent(String(fileId))) - .replace(`{${"versionId"}}`, encodeURIComponent(String(versionId))); + updateGroupGallery: async (groupId: string, groupGalleryId: string, updateGroupGalleryRequest?: UpdateGroupGalleryRequest, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'groupId' is not null or undefined + assertParamExists('updateGroupGallery', 'groupId', groupId) + // verify required parameter 'groupGalleryId' is not null or undefined + assertParamExists('updateGroupGallery', 'groupGalleryId', groupGalleryId) + const localVarPath = `/groups/{groupId}/galleries/{groupGalleryId}` + .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))) + .replace(`{${"groupGalleryId"}}`, encodeURIComponent(String(groupGalleryId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -6893,7 +10655,7 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; @@ -6903,9 +10665,12 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration + localVarHeaderParameter['Content-Type'] = 'application/json'; + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(updateGroupGalleryRequest, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), @@ -6913,26 +10678,22 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration }; }, /** - * Finish an upload of a FileData. This will mark it as \"complete\". After uploading the `file` for Avatars and Worlds you then have to upload a `signature` file. - * @summary Finish FileData Upload - * @param {string} fileId - * @param {number} versionId - * @param {'file' | 'signature' | 'delta'} fileType - * @param {FinishFileDataUploadRequest} [finishFileDataUploadRequest] Please see documentation on ETag\'s: [https://teppen.io/2018/06/23/aws_s3_etags/](https://teppen.io/2018/06/23/aws_s3_etags/) ETag\'s should NOT be present when uploading a `signature`. + * Updates a Group Member + * @summary Update Group Member + * @param {string} groupId Must be a valid group ID. + * @param {string} userId Must be a valid user ID. + * @param {UpdateGroupMemberRequest} [updateGroupMemberRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - finishFileDataUpload: async (fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', finishFileDataUploadRequest?: FinishFileDataUploadRequest, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'fileId' is not null or undefined - assertParamExists('finishFileDataUpload', 'fileId', fileId) - // verify required parameter 'versionId' is not null or undefined - assertParamExists('finishFileDataUpload', 'versionId', versionId) - // verify required parameter 'fileType' is not null or undefined - assertParamExists('finishFileDataUpload', 'fileType', fileType) - const localVarPath = `/file/{fileId}/{versionId}/{fileType}/finish` - .replace(`{${"fileId"}}`, encodeURIComponent(String(fileId))) - .replace(`{${"versionId"}}`, encodeURIComponent(String(versionId))) - .replace(`{${"fileType"}}`, encodeURIComponent(String(fileType))); + updateGroupMember: async (groupId: string, userId: string, updateGroupMemberRequest?: UpdateGroupMemberRequest, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'groupId' is not null or undefined + assertParamExists('updateGroupMember', 'groupId', groupId) + // verify required parameter 'userId' is not null or undefined + assertParamExists('updateGroupMember', 'userId', userId) + const localVarPath = `/groups/{groupId}/members/{userId}` + .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))) + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -6955,7 +10716,7 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - localVarRequestOptions.data = serializeDataIfNeeded(finishFileDataUploadRequest, localVarRequestOptions, configuration) + localVarRequestOptions.data = serializeDataIfNeeded(updateGroupMemberRequest, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), @@ -6963,17 +10724,22 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration }; }, /** - * Shows general information about the \"File\" object. Each File can have several \"Version\"\'s, and each Version can have multiple real files or \"Data\" blobs. - * @summary Show File - * @param {string} fileId + * Updates a group role by ID. + * @summary Update Group Role + * @param {string} groupId Must be a valid group ID. + * @param {string} groupRoleId Must be a valid group role ID. + * @param {UpdateGroupRoleRequest} [updateGroupRoleRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFile: async (fileId: string, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'fileId' is not null or undefined - assertParamExists('getFile', 'fileId', fileId) - const localVarPath = `/file/{fileId}` - .replace(`{${"fileId"}}`, encodeURIComponent(String(fileId))); + updateGroupRole: async (groupId: string, groupRoleId: string, updateGroupRoleRequest?: UpdateGroupRoleRequest, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'groupId' is not null or undefined + assertParamExists('updateGroupRole', 'groupId', groupId) + // verify required parameter 'groupRoleId' is not null or undefined + assertParamExists('updateGroupRole', 'groupRoleId', groupRoleId) + const localVarPath = `/groups/{groupId}/roles/{groupRoleId}` + .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))) + .replace(`{${"groupRoleId"}}`, encodeURIComponent(String(groupRoleId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -6981,7 +10747,7 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; @@ -6991,976 +10757,1357 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration + localVarHeaderParameter['Content-Type'] = 'application/json'; + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(updateGroupRoleRequest, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, + } +}; + +/** + * GroupsApi - functional programming interface + * @export + */ +export const GroupsApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = GroupsApiAxiosParamCreator(configuration) + return { + /** + * Adds an image to a Group gallery. + * @summary Add Group Gallery Image + * @param {string} groupId Must be a valid group ID. + * @param {string} groupGalleryId Must be a valid group gallery ID. + * @param {AddGroupGalleryImageRequest} [addGroupGalleryImageRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async addGroupGalleryImage(groupId: string, groupGalleryId: string, addGroupGalleryImageRequest?: AddGroupGalleryImageRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.addGroupGalleryImage(groupId, groupGalleryId, addGroupGalleryImageRequest, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Adds a Role to a Group Member + * @summary Add Role to GroupMember + * @param {string} groupId Must be a valid group ID. + * @param {string} userId Must be a valid user ID. + * @param {string} groupRoleId Must be a valid group role ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async addGroupMemberRole(groupId: string, userId: string, groupRoleId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.addGroupMemberRole(groupId, userId, groupRoleId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Bans a user from a Group. + * @summary Ban Group Member + * @param {string} groupId Must be a valid group ID. + * @param {BanGroupMemberRequest} [banGroupMemberRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async banGroupMember(groupId: string, banGroupMemberRequest?: BanGroupMemberRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.banGroupMember(groupId, banGroupMemberRequest, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Cancels a request sent to join the group. + * @summary Cancel Group Join Request + * @param {string} groupId Must be a valid group ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async cancelGroupRequest(groupId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.cancelGroupRequest(groupId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Creates a Group and returns a Group object. **Requires VRC+ Subscription.** + * @summary Create Group + * @param {CreateGroupRequest} [createGroupRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async createGroup(createGroupRequest?: CreateGroupRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.createGroup(createGroupRequest, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Creates an Announcement for a Group. + * @summary Create Group Announcement + * @param {string} groupId Must be a valid group ID. + * @param {CreateGroupAnnouncementRequest} [createGroupAnnouncementRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async createGroupAnnouncement(groupId: string, createGroupAnnouncementRequest?: CreateGroupAnnouncementRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.createGroupAnnouncement(groupId, createGroupAnnouncementRequest, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Creates a gallery for a Group. + * @summary Create Group Gallery + * @param {string} groupId Must be a valid group ID. + * @param {CreateGroupGalleryRequest} [createGroupGalleryRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async createGroupGallery(groupId: string, createGroupGalleryRequest?: CreateGroupGalleryRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.createGroupGallery(groupId, createGroupGalleryRequest, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Sends an invite to a user to join the group. + * @summary Invite User to Group + * @param {string} groupId Must be a valid group ID. + * @param {CreateGroupInviteRequest} [createGroupInviteRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async createGroupInvite(groupId: string, createGroupInviteRequest?: CreateGroupInviteRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.createGroupInvite(groupId, createGroupInviteRequest, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Create a Group role. + * @summary Create GroupRole + * @param {string} groupId Must be a valid group ID. + * @param {CreateGroupRoleRequest} [createGroupRoleRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async createGroupRole(groupId: string, createGroupRoleRequest?: CreateGroupRoleRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.createGroupRole(groupId, createGroupRoleRequest, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Deletes a Group. + * @summary Delete Group + * @param {string} groupId Must be a valid group ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async deleteGroup(groupId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.deleteGroup(groupId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Deletes the announcement for a Group. + * @summary Delete Group Announcement + * @param {string} groupId Must be a valid group ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async deleteGroupAnnouncement(groupId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.deleteGroupAnnouncement(groupId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Deletes a gallery for a Group. + * @summary Delete Group Gallery + * @param {string} groupId Must be a valid group ID. + * @param {string} groupGalleryId Must be a valid group gallery ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async deleteGroupGallery(groupId: string, groupGalleryId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.deleteGroupGallery(groupId, groupGalleryId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Deletes an image from a Group gallery. + * @summary Delete Group Gallery Image + * @param {string} groupId Must be a valid group ID. + * @param {string} groupGalleryId Must be a valid group gallery ID. + * @param {string} groupGalleryImageId Must be a valid group gallery image ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async deleteGroupGalleryImage(groupId: string, groupGalleryId: string, groupGalleryImageId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.deleteGroupGalleryImage(groupId, groupGalleryId, groupGalleryImageId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Deletes an Group invite sent to a User + * @summary Delete User Invite + * @param {string} groupId Must be a valid group ID. + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async deleteGroupInvite(groupId: string, userId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.deleteGroupInvite(groupId, userId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Deletes a Group Role by ID and returns the remaining roles. + * @summary Delete Group Role + * @param {string} groupId Must be a valid group ID. + * @param {string} groupRoleId Must be a valid group role ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async deleteGroupRole(groupId: string, groupRoleId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.deleteGroupRole(groupId, groupRoleId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Returns a single Group by ID. + * @summary Get Group by ID + * @param {string} groupId Must be a valid group ID. + * @param {boolean} [includeRoles] Include roles for the Group object. Defaults to false. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getGroup(groupId: string, includeRoles?: boolean, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getGroup(groupId, includeRoles, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Returns the announcement for a Group. If no announcement has been made, then it returns **empty object**. If an announcement exists, then it will always return all fields except `imageId` and `imageUrl` which may be null. + * @summary Get Group Announcement + * @param {string} groupId Must be a valid group ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getGroupAnnouncements(groupId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getGroupAnnouncements(groupId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Returns a list of audit logs for a Group. + * @summary Get Group Audit Logs + * @param {string} groupId Must be a valid group ID. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [startDate] The start date of the search range. + * @param {string} [endDate] The end date of the search range. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getGroupAuditLogs(groupId: string, n?: number, offset?: number, startDate?: string, endDate?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getGroupAuditLogs(groupId, n, offset, startDate, endDate, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Returns a list of banned users for a Group. + * @summary Get Group Bans + * @param {string} groupId Must be a valid group ID. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getGroupBans(groupId: string, n?: number, offset?: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getGroupBans(groupId, n, offset, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Returns a list of images for a Group gallery. + * @summary Get Group Gallery Images + * @param {string} groupId Must be a valid group ID. + * @param {string} groupGalleryId Must be a valid group gallery ID. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {boolean} [approved] If specified, only returns images that have been approved or not approved. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getGroupGalleryImages(groupId: string, groupGalleryId: string, n?: number, offset?: number, approved?: boolean, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getGroupGalleryImages(groupId, groupGalleryId, n, offset, approved, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** - * Retrieves the upload status for file upload. Can currently only be accessed when `status` is `waiting`. Trying to access it on a file version already uploaded currently times out. - * @summary Check FileData Upload Status - * @param {string} fileId - * @param {number} versionId - * @param {'file' | 'signature' | 'delta'} fileType + * Returns a list of members that have been invited to the Group. + * @summary Get Group Invites Sent + * @param {string} groupId Must be a valid group ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFileDataUploadStatus: async (fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'fileId' is not null or undefined - assertParamExists('getFileDataUploadStatus', 'fileId', fileId) - // verify required parameter 'versionId' is not null or undefined - assertParamExists('getFileDataUploadStatus', 'versionId', versionId) - // verify required parameter 'fileType' is not null or undefined - assertParamExists('getFileDataUploadStatus', 'fileType', fileType) - const localVarPath = `/file/{fileId}/{versionId}/{fileType}/status` - .replace(`{${"fileId"}}`, encodeURIComponent(String(fileId))) - .replace(`{${"versionId"}}`, encodeURIComponent(String(versionId))) - .replace(`{${"fileType"}}`, encodeURIComponent(String(fileType))); - // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); - let baseOptions; - if (configuration) { - baseOptions = configuration.baseOptions; - } - - const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; - const localVarHeaderParameter = {} as any; - const localVarQueryParameter = {} as any; - - // authentication apiKeyCookie required - - // authentication authCookie required - - - - setSearchParams(localVarUrlObj, localVarQueryParameter); - let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; - localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - - return { - url: toPathString(localVarUrlObj), - options: localVarRequestOptions, - }; + async getGroupInvites(groupId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getGroupInvites(groupId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Returns a list of files - * @summary List Files - * @param {string} [tag] Tag, for example \"icon\" or \"gallery\", not included by default. - * @param {string} [userId] UserID, will always generate a 500 permission error. + * Returns a LimitedGroup Member. + * @summary Get Group Member + * @param {string} groupId Must be a valid group ID. + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getGroupMember(groupId: string, userId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getGroupMember(groupId, userId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Returns a List of all **other** Group Members. This endpoint will never return the user calling the endpoint. Information about the user calling the endpoint must be found in the `myMember` field of the Group object. + * @summary List Group Members + * @param {string} groupId Must be a valid group ID. * @param {number} [n] The number of objects to return. * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFiles: async (tag?: string, userId?: string, n?: number, offset?: number, options: AxiosRequestConfig = {}): Promise => { - const localVarPath = `/files`; - // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); - let baseOptions; - if (configuration) { - baseOptions = configuration.baseOptions; - } - - const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; - const localVarHeaderParameter = {} as any; - const localVarQueryParameter = {} as any; - - // authentication apiKeyCookie required - - // authentication authCookie required - - if (tag !== undefined) { - localVarQueryParameter['tag'] = tag; - } - - if (userId !== undefined) { - localVarQueryParameter['userId'] = userId; - } - - if (n !== undefined) { - localVarQueryParameter['n'] = n; - } - - if (offset !== undefined) { - localVarQueryParameter['offset'] = offset; - } - - - - setSearchParams(localVarUrlObj, localVarQueryParameter); - let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; - localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - - return { - url: toPathString(localVarUrlObj), - options: localVarRequestOptions, - }; + async getGroupMembers(groupId: string, n?: number, offset?: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getGroupMembers(groupId, n, offset, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Starts an upload of a specific FilePart. This endpoint will return an AWS URL which you can PUT data to. You need to call this and receive a new AWS API URL for each `partNumber`. Please see AWS\'s REST documentation on \"PUT Object to S3\" on how to upload. Once all parts has been uploaded, proceed to `/finish` endpoint. **Note:** `nextPartNumber` seems like it is always ignored. Despite it returning 0, first partNumber is always 1. - * @summary Start FileData Upload - * @param {string} fileId - * @param {number} versionId - * @param {'file' | 'signature' | 'delta'} fileType - * @param {number} [partNumber] + * Returns a List of all possible/available permissions for a Group. + * @summary List Group Permissions + * @param {string} groupId Must be a valid group ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - startFileDataUpload: async (fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', partNumber?: number, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'fileId' is not null or undefined - assertParamExists('startFileDataUpload', 'fileId', fileId) - // verify required parameter 'versionId' is not null or undefined - assertParamExists('startFileDataUpload', 'versionId', versionId) - // verify required parameter 'fileType' is not null or undefined - assertParamExists('startFileDataUpload', 'fileType', fileType) - const localVarPath = `/file/{fileId}/{versionId}/{fileType}/start` - .replace(`{${"fileId"}}`, encodeURIComponent(String(fileId))) - .replace(`{${"versionId"}}`, encodeURIComponent(String(versionId))) - .replace(`{${"fileType"}}`, encodeURIComponent(String(fileType))); - // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); - let baseOptions; - if (configuration) { - baseOptions = configuration.baseOptions; - } - - const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; - const localVarHeaderParameter = {} as any; - const localVarQueryParameter = {} as any; - - // authentication apiKeyCookie required - - // authentication authCookie required - - if (partNumber !== undefined) { - localVarQueryParameter['partNumber'] = partNumber; - } - - - - setSearchParams(localVarUrlObj, localVarQueryParameter); - let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; - localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - - return { - url: toPathString(localVarUrlObj), - options: localVarRequestOptions, - }; + async getGroupPermissions(groupId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getGroupPermissions(groupId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, - } -}; - -/** - * FilesApi - functional programming interface - * @export - */ -export const FilesApiFp = function(configuration?: Configuration) { - const localVarAxiosParamCreator = FilesApiAxiosParamCreator(configuration) - return { /** - * Creates a new File object - * @summary Create File - * @param {CreateFileRequest} [createFileRequest] + * Returns a list of members that have requested to join the Group. + * @summary Get Group Join Requests + * @param {string} groupId Must be a valid group ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async createFile(createFileRequest?: CreateFileRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.createFile(createFileRequest, options); + async getGroupRequests(groupId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getGroupRequests(groupId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Creates a new FileVersion. Once a Version has been created, proceed to the `/file/{fileId}/{versionId}/file/start` endpoint to start a file upload. - * @summary Create File Version - * @param {string} fileId - * @param {CreateFileVersionRequest} [createFileVersionRequest] + * Returns a Group Role by ID. + * @summary Get Group Roles + * @param {string} groupId Must be a valid group ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async createFileVersion(fileId: string, createFileVersionRequest?: CreateFileVersionRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.createFileVersion(fileId, createFileVersionRequest, options); + async getGroupRoles(groupId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getGroupRoles(groupId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Deletes a File object. - * @summary Delete File - * @param {string} fileId + * Join a Group by ID and returns the joined Group. + * @summary Join Group + * @param {string} groupId Must be a valid group ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async deleteFile(fileId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.deleteFile(fileId, options); + async joinGroup(groupId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.joinGroup(groupId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Delete a specific version of a file. You can only delete the latest version. - * @summary Delete File Version - * @param {string} fileId - * @param {number} versionId + * Kicks a Group Member from the Group. The current user must have the \"Remove Group Members\" permission. + * @summary Kick Group Member + * @param {string} groupId Must be a valid group ID. + * @param {string} userId Must be a valid user ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async deleteFileVersion(fileId: string, versionId: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.deleteFileVersion(fileId, versionId, options); + async kickGroupMember(groupId: string, userId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.kickGroupMember(groupId, userId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Downloads the file with the provided version number. **Version Note:** Version 0 is always when the file was created. The real data is usually always located in version 1 and up. **Extension Note:** Files are not guaranteed to have a file extensions. UnityPackage files tends to have it, images through this endpoint do not. You are responsible for appending file extension from the `extension` field when neccesary. - * @summary Download File Version - * @param {string} fileId - * @param {number} versionId + * Leave a group by ID. + * @summary Leave Group + * @param {string} groupId Must be a valid group ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async downloadFileVersion(fileId: string, versionId: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.downloadFileVersion(fileId, versionId, options); + async leaveGroup(groupId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.leaveGroup(groupId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Finish an upload of a FileData. This will mark it as \"complete\". After uploading the `file` for Avatars and Worlds you then have to upload a `signature` file. - * @summary Finish FileData Upload - * @param {string} fileId - * @param {number} versionId - * @param {'file' | 'signature' | 'delta'} fileType - * @param {FinishFileDataUploadRequest} [finishFileDataUploadRequest] Please see documentation on ETag\'s: [https://teppen.io/2018/06/23/aws_s3_etags/](https://teppen.io/2018/06/23/aws_s3_etags/) ETag\'s should NOT be present when uploading a `signature`. + * Removes a Role from a Group Member + * @summary Remove Role from GroupMember + * @param {string} groupId Must be a valid group ID. + * @param {string} userId Must be a valid user ID. + * @param {string} groupRoleId Must be a valid group role ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async finishFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', finishFileDataUploadRequest?: FinishFileDataUploadRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.finishFileDataUpload(fileId, versionId, fileType, finishFileDataUploadRequest, options); + async removeGroupMemberRole(groupId: string, userId: string, groupRoleId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.removeGroupMemberRole(groupId, userId, groupRoleId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Shows general information about the \"File\" object. Each File can have several \"Version\"\'s, and each Version can have multiple real files or \"Data\" blobs. - * @summary Show File - * @param {string} fileId + * Responds to a Group Join Request with Accept/Deny + * @summary Respond Group Join request + * @param {string} groupId Must be a valid group ID. + * @param {string} userId Must be a valid user ID. + * @param {RespondGroupJoinRequest} [respondGroupJoinRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getFile(fileId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getFile(fileId, options); + async respondGroupJoinRequest(groupId: string, userId: string, respondGroupJoinRequest?: RespondGroupJoinRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.respondGroupJoinRequest(groupId, userId, respondGroupJoinRequest, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Retrieves the upload status for file upload. Can currently only be accessed when `status` is `waiting`. Trying to access it on a file version already uploaded currently times out. - * @summary Check FileData Upload Status - * @param {string} fileId - * @param {number} versionId - * @param {'file' | 'signature' | 'delta'} fileType + * Unbans a user from a Group. + * @summary Unban Group Member + * @param {string} groupId Must be a valid group ID. + * @param {string} userId Must be a valid user ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getFileDataUploadStatus(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getFileDataUploadStatus(fileId, versionId, fileType, options); + async unbanGroupMember(groupId: string, userId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.unbanGroupMember(groupId, userId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Returns a list of files - * @summary List Files - * @param {string} [tag] Tag, for example \"icon\" or \"gallery\", not included by default. - * @param {string} [userId] UserID, will always generate a 500 permission error. - * @param {number} [n] The number of objects to return. - * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * Updates a Group and returns it. + * @summary Update Group + * @param {string} groupId Must be a valid group ID. + * @param {UpdateGroupRequest} [updateGroupRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getFiles(tag?: string, userId?: string, n?: number, offset?: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getFiles(tag, userId, n, offset, options); + async updateGroup(groupId: string, updateGroupRequest?: UpdateGroupRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.updateGroup(groupId, updateGroupRequest, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Starts an upload of a specific FilePart. This endpoint will return an AWS URL which you can PUT data to. You need to call this and receive a new AWS API URL for each `partNumber`. Please see AWS\'s REST documentation on \"PUT Object to S3\" on how to upload. Once all parts has been uploaded, proceed to `/finish` endpoint. **Note:** `nextPartNumber` seems like it is always ignored. Despite it returning 0, first partNumber is always 1. - * @summary Start FileData Upload - * @param {string} fileId - * @param {number} versionId - * @param {'file' | 'signature' | 'delta'} fileType - * @param {number} [partNumber] + * Updates a gallery for a Group. + * @summary Update Group Gallery + * @param {string} groupId Must be a valid group ID. + * @param {string} groupGalleryId Must be a valid group gallery ID. + * @param {UpdateGroupGalleryRequest} [updateGroupGalleryRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async startFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', partNumber?: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.startFileDataUpload(fileId, versionId, fileType, partNumber, options); + async updateGroupGallery(groupId: string, groupGalleryId: string, updateGroupGalleryRequest?: UpdateGroupGalleryRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.updateGroupGallery(groupId, groupGalleryId, updateGroupGalleryRequest, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Updates a Group Member + * @summary Update Group Member + * @param {string} groupId Must be a valid group ID. + * @param {string} userId Must be a valid user ID. + * @param {UpdateGroupMemberRequest} [updateGroupMemberRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async updateGroupMember(groupId: string, userId: string, updateGroupMemberRequest?: UpdateGroupMemberRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.updateGroupMember(groupId, userId, updateGroupMemberRequest, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Updates a group role by ID. + * @summary Update Group Role + * @param {string} groupId Must be a valid group ID. + * @param {string} groupRoleId Must be a valid group role ID. + * @param {UpdateGroupRoleRequest} [updateGroupRoleRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async updateGroupRole(groupId: string, groupRoleId: string, updateGroupRoleRequest?: UpdateGroupRoleRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.updateGroupRole(groupId, groupRoleId, updateGroupRoleRequest, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, } }; /** - * FilesApi - factory interface + * GroupsApi - factory interface * @export */ -export const FilesApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { - const localVarFp = FilesApiFp(configuration) +export const GroupsApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = GroupsApiFp(configuration) return { /** - * Creates a new File object - * @summary Create File - * @param {CreateFileRequest} [createFileRequest] + * Adds an image to a Group gallery. + * @summary Add Group Gallery Image + * @param {string} groupId Must be a valid group ID. + * @param {string} groupGalleryId Must be a valid group gallery ID. + * @param {AddGroupGalleryImageRequest} [addGroupGalleryImageRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + addGroupGalleryImage(groupId: string, groupGalleryId: string, addGroupGalleryImageRequest?: AddGroupGalleryImageRequest, options?: any): AxiosPromise { + return localVarFp.addGroupGalleryImage(groupId, groupGalleryId, addGroupGalleryImageRequest, options).then((request) => request(axios, basePath)); + }, + /** + * Adds a Role to a Group Member + * @summary Add Role to GroupMember + * @param {string} groupId Must be a valid group ID. + * @param {string} userId Must be a valid user ID. + * @param {string} groupRoleId Must be a valid group role ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + addGroupMemberRole(groupId: string, userId: string, groupRoleId: string, options?: any): AxiosPromise> { + return localVarFp.addGroupMemberRole(groupId, userId, groupRoleId, options).then((request) => request(axios, basePath)); + }, + /** + * Bans a user from a Group. + * @summary Ban Group Member + * @param {string} groupId Must be a valid group ID. + * @param {BanGroupMemberRequest} [banGroupMemberRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + banGroupMember(groupId: string, banGroupMemberRequest?: BanGroupMemberRequest, options?: any): AxiosPromise { + return localVarFp.banGroupMember(groupId, banGroupMemberRequest, options).then((request) => request(axios, basePath)); + }, + /** + * Cancels a request sent to join the group. + * @summary Cancel Group Join Request + * @param {string} groupId Must be a valid group ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + cancelGroupRequest(groupId: string, options?: any): AxiosPromise { + return localVarFp.cancelGroupRequest(groupId, options).then((request) => request(axios, basePath)); + }, + /** + * Creates a Group and returns a Group object. **Requires VRC+ Subscription.** + * @summary Create Group + * @param {CreateGroupRequest} [createGroupRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + createGroup(createGroupRequest?: CreateGroupRequest, options?: any): AxiosPromise { + return localVarFp.createGroup(createGroupRequest, options).then((request) => request(axios, basePath)); + }, + /** + * Creates an Announcement for a Group. + * @summary Create Group Announcement + * @param {string} groupId Must be a valid group ID. + * @param {CreateGroupAnnouncementRequest} [createGroupAnnouncementRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + createGroupAnnouncement(groupId: string, createGroupAnnouncementRequest?: CreateGroupAnnouncementRequest, options?: any): AxiosPromise { + return localVarFp.createGroupAnnouncement(groupId, createGroupAnnouncementRequest, options).then((request) => request(axios, basePath)); + }, + /** + * Creates a gallery for a Group. + * @summary Create Group Gallery + * @param {string} groupId Must be a valid group ID. + * @param {CreateGroupGalleryRequest} [createGroupGalleryRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + createGroupGallery(groupId: string, createGroupGalleryRequest?: CreateGroupGalleryRequest, options?: any): AxiosPromise { + return localVarFp.createGroupGallery(groupId, createGroupGalleryRequest, options).then((request) => request(axios, basePath)); + }, + /** + * Sends an invite to a user to join the group. + * @summary Invite User to Group + * @param {string} groupId Must be a valid group ID. + * @param {CreateGroupInviteRequest} [createGroupInviteRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + createGroupInvite(groupId: string, createGroupInviteRequest?: CreateGroupInviteRequest, options?: any): AxiosPromise { + return localVarFp.createGroupInvite(groupId, createGroupInviteRequest, options).then((request) => request(axios, basePath)); + }, + /** + * Create a Group role. + * @summary Create GroupRole + * @param {string} groupId Must be a valid group ID. + * @param {CreateGroupRoleRequest} [createGroupRoleRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + createGroupRole(groupId: string, createGroupRoleRequest?: CreateGroupRoleRequest, options?: any): AxiosPromise { + return localVarFp.createGroupRole(groupId, createGroupRoleRequest, options).then((request) => request(axios, basePath)); + }, + /** + * Deletes a Group. + * @summary Delete Group + * @param {string} groupId Must be a valid group ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - createFile(createFileRequest?: CreateFileRequest, options?: any): AxiosPromise { - return localVarFp.createFile(createFileRequest, options).then((request) => request(axios, basePath)); + deleteGroup(groupId: string, options?: any): AxiosPromise { + return localVarFp.deleteGroup(groupId, options).then((request) => request(axios, basePath)); }, /** - * Creates a new FileVersion. Once a Version has been created, proceed to the `/file/{fileId}/{versionId}/file/start` endpoint to start a file upload. - * @summary Create File Version - * @param {string} fileId - * @param {CreateFileVersionRequest} [createFileVersionRequest] + * Deletes the announcement for a Group. + * @summary Delete Group Announcement + * @param {string} groupId Must be a valid group ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - createFileVersion(fileId: string, createFileVersionRequest?: CreateFileVersionRequest, options?: any): AxiosPromise { - return localVarFp.createFileVersion(fileId, createFileVersionRequest, options).then((request) => request(axios, basePath)); + deleteGroupAnnouncement(groupId: string, options?: any): AxiosPromise { + return localVarFp.deleteGroupAnnouncement(groupId, options).then((request) => request(axios, basePath)); }, /** - * Deletes a File object. - * @summary Delete File - * @param {string} fileId + * Deletes a gallery for a Group. + * @summary Delete Group Gallery + * @param {string} groupId Must be a valid group ID. + * @param {string} groupGalleryId Must be a valid group gallery ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - deleteFile(fileId: string, options?: any): AxiosPromise { - return localVarFp.deleteFile(fileId, options).then((request) => request(axios, basePath)); + deleteGroupGallery(groupId: string, groupGalleryId: string, options?: any): AxiosPromise { + return localVarFp.deleteGroupGallery(groupId, groupGalleryId, options).then((request) => request(axios, basePath)); }, /** - * Delete a specific version of a file. You can only delete the latest version. - * @summary Delete File Version - * @param {string} fileId - * @param {number} versionId + * Deletes an image from a Group gallery. + * @summary Delete Group Gallery Image + * @param {string} groupId Must be a valid group ID. + * @param {string} groupGalleryId Must be a valid group gallery ID. + * @param {string} groupGalleryImageId Must be a valid group gallery image ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - deleteFileVersion(fileId: string, versionId: number, options?: any): AxiosPromise { - return localVarFp.deleteFileVersion(fileId, versionId, options).then((request) => request(axios, basePath)); + deleteGroupGalleryImage(groupId: string, groupGalleryId: string, groupGalleryImageId: string, options?: any): AxiosPromise { + return localVarFp.deleteGroupGalleryImage(groupId, groupGalleryId, groupGalleryImageId, options).then((request) => request(axios, basePath)); }, /** - * Downloads the file with the provided version number. **Version Note:** Version 0 is always when the file was created. The real data is usually always located in version 1 and up. **Extension Note:** Files are not guaranteed to have a file extensions. UnityPackage files tends to have it, images through this endpoint do not. You are responsible for appending file extension from the `extension` field when neccesary. - * @summary Download File Version - * @param {string} fileId - * @param {number} versionId + * Deletes an Group invite sent to a User + * @summary Delete User Invite + * @param {string} groupId Must be a valid group ID. + * @param {string} userId Must be a valid user ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - downloadFileVersion(fileId: string, versionId: number, options?: any): AxiosPromise { - return localVarFp.downloadFileVersion(fileId, versionId, options).then((request) => request(axios, basePath)); + deleteGroupInvite(groupId: string, userId: string, options?: any): AxiosPromise { + return localVarFp.deleteGroupInvite(groupId, userId, options).then((request) => request(axios, basePath)); }, /** - * Finish an upload of a FileData. This will mark it as \"complete\". After uploading the `file` for Avatars and Worlds you then have to upload a `signature` file. - * @summary Finish FileData Upload - * @param {string} fileId - * @param {number} versionId - * @param {'file' | 'signature' | 'delta'} fileType - * @param {FinishFileDataUploadRequest} [finishFileDataUploadRequest] Please see documentation on ETag\'s: [https://teppen.io/2018/06/23/aws_s3_etags/](https://teppen.io/2018/06/23/aws_s3_etags/) ETag\'s should NOT be present when uploading a `signature`. + * Deletes a Group Role by ID and returns the remaining roles. + * @summary Delete Group Role + * @param {string} groupId Must be a valid group ID. + * @param {string} groupRoleId Must be a valid group role ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - finishFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', finishFileDataUploadRequest?: FinishFileDataUploadRequest, options?: any): AxiosPromise { - return localVarFp.finishFileDataUpload(fileId, versionId, fileType, finishFileDataUploadRequest, options).then((request) => request(axios, basePath)); + deleteGroupRole(groupId: string, groupRoleId: string, options?: any): AxiosPromise> { + return localVarFp.deleteGroupRole(groupId, groupRoleId, options).then((request) => request(axios, basePath)); }, /** - * Shows general information about the \"File\" object. Each File can have several \"Version\"\'s, and each Version can have multiple real files or \"Data\" blobs. - * @summary Show File - * @param {string} fileId + * Returns a single Group by ID. + * @summary Get Group by ID + * @param {string} groupId Must be a valid group ID. + * @param {boolean} [includeRoles] Include roles for the Group object. Defaults to false. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFile(fileId: string, options?: any): AxiosPromise { - return localVarFp.getFile(fileId, options).then((request) => request(axios, basePath)); + getGroup(groupId: string, includeRoles?: boolean, options?: any): AxiosPromise { + return localVarFp.getGroup(groupId, includeRoles, options).then((request) => request(axios, basePath)); }, /** - * Retrieves the upload status for file upload. Can currently only be accessed when `status` is `waiting`. Trying to access it on a file version already uploaded currently times out. - * @summary Check FileData Upload Status - * @param {string} fileId - * @param {number} versionId - * @param {'file' | 'signature' | 'delta'} fileType + * Returns the announcement for a Group. If no announcement has been made, then it returns **empty object**. If an announcement exists, then it will always return all fields except `imageId` and `imageUrl` which may be null. + * @summary Get Group Announcement + * @param {string} groupId Must be a valid group ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFileDataUploadStatus(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', options?: any): AxiosPromise { - return localVarFp.getFileDataUploadStatus(fileId, versionId, fileType, options).then((request) => request(axios, basePath)); + getGroupAnnouncements(groupId: string, options?: any): AxiosPromise { + return localVarFp.getGroupAnnouncements(groupId, options).then((request) => request(axios, basePath)); }, /** - * Returns a list of files - * @summary List Files - * @param {string} [tag] Tag, for example \"icon\" or \"gallery\", not included by default. - * @param {string} [userId] UserID, will always generate a 500 permission error. + * Returns a list of audit logs for a Group. + * @summary Get Group Audit Logs + * @param {string} groupId Must be a valid group ID. * @param {number} [n] The number of objects to return. * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [startDate] The start date of the search range. + * @param {string} [endDate] The end date of the search range. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFiles(tag?: string, userId?: string, n?: number, offset?: number, options?: any): AxiosPromise> { - return localVarFp.getFiles(tag, userId, n, offset, options).then((request) => request(axios, basePath)); + getGroupAuditLogs(groupId: string, n?: number, offset?: number, startDate?: string, endDate?: string, options?: any): AxiosPromise { + return localVarFp.getGroupAuditLogs(groupId, n, offset, startDate, endDate, options).then((request) => request(axios, basePath)); }, /** - * Starts an upload of a specific FilePart. This endpoint will return an AWS URL which you can PUT data to. You need to call this and receive a new AWS API URL for each `partNumber`. Please see AWS\'s REST documentation on \"PUT Object to S3\" on how to upload. Once all parts has been uploaded, proceed to `/finish` endpoint. **Note:** `nextPartNumber` seems like it is always ignored. Despite it returning 0, first partNumber is always 1. - * @summary Start FileData Upload - * @param {string} fileId - * @param {number} versionId - * @param {'file' | 'signature' | 'delta'} fileType - * @param {number} [partNumber] + * Returns a list of banned users for a Group. + * @summary Get Group Bans + * @param {string} groupId Must be a valid group ID. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - startFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', partNumber?: number, options?: any): AxiosPromise { - return localVarFp.startFileDataUpload(fileId, versionId, fileType, partNumber, options).then((request) => request(axios, basePath)); + getGroupBans(groupId: string, n?: number, offset?: number, options?: any): AxiosPromise> { + return localVarFp.getGroupBans(groupId, n, offset, options).then((request) => request(axios, basePath)); }, - }; -}; - -/** - * FilesApi - object-oriented interface - * @export - * @class FilesApi - * @extends {BaseAPI} - */ -export class FilesApi extends BaseAPI { - /** - * Creates a new File object - * @summary Create File - * @param {CreateFileRequest} [createFileRequest] - * @param {*} [options] Override http request option. - * @throws {RequiredError} - * @memberof FilesApi - */ - public createFile(createFileRequest?: CreateFileRequest, options?: AxiosRequestConfig) { - return FilesApiFp(this.configuration).createFile(createFileRequest, options).then((request) => request(this.axios, this.basePath)); - } - - /** - * Creates a new FileVersion. Once a Version has been created, proceed to the `/file/{fileId}/{versionId}/file/start` endpoint to start a file upload. - * @summary Create File Version - * @param {string} fileId - * @param {CreateFileVersionRequest} [createFileVersionRequest] - * @param {*} [options] Override http request option. - * @throws {RequiredError} - * @memberof FilesApi - */ - public createFileVersion(fileId: string, createFileVersionRequest?: CreateFileVersionRequest, options?: AxiosRequestConfig) { - return FilesApiFp(this.configuration).createFileVersion(fileId, createFileVersionRequest, options).then((request) => request(this.axios, this.basePath)); - } - - /** - * Deletes a File object. - * @summary Delete File - * @param {string} fileId - * @param {*} [options] Override http request option. - * @throws {RequiredError} - * @memberof FilesApi - */ - public deleteFile(fileId: string, options?: AxiosRequestConfig) { - return FilesApiFp(this.configuration).deleteFile(fileId, options).then((request) => request(this.axios, this.basePath)); - } - - /** - * Delete a specific version of a file. You can only delete the latest version. - * @summary Delete File Version - * @param {string} fileId - * @param {number} versionId - * @param {*} [options] Override http request option. - * @throws {RequiredError} - * @memberof FilesApi - */ - public deleteFileVersion(fileId: string, versionId: number, options?: AxiosRequestConfig) { - return FilesApiFp(this.configuration).deleteFileVersion(fileId, versionId, options).then((request) => request(this.axios, this.basePath)); - } - - /** - * Downloads the file with the provided version number. **Version Note:** Version 0 is always when the file was created. The real data is usually always located in version 1 and up. **Extension Note:** Files are not guaranteed to have a file extensions. UnityPackage files tends to have it, images through this endpoint do not. You are responsible for appending file extension from the `extension` field when neccesary. - * @summary Download File Version - * @param {string} fileId - * @param {number} versionId - * @param {*} [options] Override http request option. - * @throws {RequiredError} - * @memberof FilesApi - */ - public downloadFileVersion(fileId: string, versionId: number, options?: AxiosRequestConfig) { - return FilesApiFp(this.configuration).downloadFileVersion(fileId, versionId, options).then((request) => request(this.axios, this.basePath)); - } - - /** - * Finish an upload of a FileData. This will mark it as \"complete\". After uploading the `file` for Avatars and Worlds you then have to upload a `signature` file. - * @summary Finish FileData Upload - * @param {string} fileId - * @param {number} versionId - * @param {'file' | 'signature' | 'delta'} fileType - * @param {FinishFileDataUploadRequest} [finishFileDataUploadRequest] Please see documentation on ETag\'s: [https://teppen.io/2018/06/23/aws_s3_etags/](https://teppen.io/2018/06/23/aws_s3_etags/) ETag\'s should NOT be present when uploading a `signature`. - * @param {*} [options] Override http request option. - * @throws {RequiredError} - * @memberof FilesApi - */ - public finishFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', finishFileDataUploadRequest?: FinishFileDataUploadRequest, options?: AxiosRequestConfig) { - return FilesApiFp(this.configuration).finishFileDataUpload(fileId, versionId, fileType, finishFileDataUploadRequest, options).then((request) => request(this.axios, this.basePath)); - } - - /** - * Shows general information about the \"File\" object. Each File can have several \"Version\"\'s, and each Version can have multiple real files or \"Data\" blobs. - * @summary Show File - * @param {string} fileId - * @param {*} [options] Override http request option. - * @throws {RequiredError} - * @memberof FilesApi - */ - public getFile(fileId: string, options?: AxiosRequestConfig) { - return FilesApiFp(this.configuration).getFile(fileId, options).then((request) => request(this.axios, this.basePath)); - } - - /** - * Retrieves the upload status for file upload. Can currently only be accessed when `status` is `waiting`. Trying to access it on a file version already uploaded currently times out. - * @summary Check FileData Upload Status - * @param {string} fileId - * @param {number} versionId - * @param {'file' | 'signature' | 'delta'} fileType - * @param {*} [options] Override http request option. - * @throws {RequiredError} - * @memberof FilesApi - */ - public getFileDataUploadStatus(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', options?: AxiosRequestConfig) { - return FilesApiFp(this.configuration).getFileDataUploadStatus(fileId, versionId, fileType, options).then((request) => request(this.axios, this.basePath)); - } - - /** - * Returns a list of files - * @summary List Files - * @param {string} [tag] Tag, for example \"icon\" or \"gallery\", not included by default. - * @param {string} [userId] UserID, will always generate a 500 permission error. - * @param {number} [n] The number of objects to return. - * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. - * @param {*} [options] Override http request option. - * @throws {RequiredError} - * @memberof FilesApi - */ - public getFiles(tag?: string, userId?: string, n?: number, offset?: number, options?: AxiosRequestConfig) { - return FilesApiFp(this.configuration).getFiles(tag, userId, n, offset, options).then((request) => request(this.axios, this.basePath)); - } - - /** - * Starts an upload of a specific FilePart. This endpoint will return an AWS URL which you can PUT data to. You need to call this and receive a new AWS API URL for each `partNumber`. Please see AWS\'s REST documentation on \"PUT Object to S3\" on how to upload. Once all parts has been uploaded, proceed to `/finish` endpoint. **Note:** `nextPartNumber` seems like it is always ignored. Despite it returning 0, first partNumber is always 1. - * @summary Start FileData Upload - * @param {string} fileId - * @param {number} versionId - * @param {'file' | 'signature' | 'delta'} fileType - * @param {number} [partNumber] - * @param {*} [options] Override http request option. - * @throws {RequiredError} - * @memberof FilesApi - */ - public startFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', partNumber?: number, options?: AxiosRequestConfig) { - return FilesApiFp(this.configuration).startFileDataUpload(fileId, versionId, fileType, partNumber, options).then((request) => request(this.axios, this.basePath)); - } -} - - -/** - * FriendsApi - axios parameter creator - * @export - */ -export const FriendsApiAxiosParamCreator = function (configuration?: Configuration) { - return { /** - * Deletes an outgoing pending friend request to another user. To delete an incoming friend request, use the `deleteNotification` endpoint instead. - * @summary Delete Friend Request - * @param {string} userId + * Returns a list of images for a Group gallery. + * @summary Get Group Gallery Images + * @param {string} groupId Must be a valid group ID. + * @param {string} groupGalleryId Must be a valid group gallery ID. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {boolean} [approved] If specified, only returns images that have been approved or not approved. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - deleteFriendRequest: async (userId: string, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'userId' is not null or undefined - assertParamExists('deleteFriendRequest', 'userId', userId) - const localVarPath = `/user/{userId}/friendRequest` - .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); - // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); - let baseOptions; - if (configuration) { - baseOptions = configuration.baseOptions; - } - - const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; - const localVarHeaderParameter = {} as any; - const localVarQueryParameter = {} as any; - - // authentication apiKeyCookie required - - // authentication authCookie required - - - - setSearchParams(localVarUrlObj, localVarQueryParameter); - let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; - localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - - return { - url: toPathString(localVarUrlObj), - options: localVarRequestOptions, - }; + getGroupGalleryImages(groupId: string, groupGalleryId: string, n?: number, offset?: number, approved?: boolean, options?: any): AxiosPromise> { + return localVarFp.getGroupGalleryImages(groupId, groupGalleryId, n, offset, approved, options).then((request) => request(axios, basePath)); }, /** - * Send a friend request to another user. - * @summary Send Friend Request - * @param {string} userId + * Returns a list of members that have been invited to the Group. + * @summary Get Group Invites Sent + * @param {string} groupId Must be a valid group ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - friend: async (userId: string, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'userId' is not null or undefined - assertParamExists('friend', 'userId', userId) - const localVarPath = `/user/{userId}/friendRequest` - .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); - // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); - let baseOptions; - if (configuration) { - baseOptions = configuration.baseOptions; - } - - const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; - const localVarHeaderParameter = {} as any; - const localVarQueryParameter = {} as any; - - // authentication apiKeyCookie required - - // authentication authCookie required - - - - setSearchParams(localVarUrlObj, localVarQueryParameter); - let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; - localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - - return { - url: toPathString(localVarUrlObj), - options: localVarRequestOptions, - }; + getGroupInvites(groupId: string, options?: any): AxiosPromise> { + return localVarFp.getGroupInvites(groupId, options).then((request) => request(axios, basePath)); + }, + /** + * Returns a LimitedGroup Member. + * @summary Get Group Member + * @param {string} groupId Must be a valid group ID. + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getGroupMember(groupId: string, userId: string, options?: any): AxiosPromise { + return localVarFp.getGroupMember(groupId, userId, options).then((request) => request(axios, basePath)); + }, + /** + * Returns a List of all **other** Group Members. This endpoint will never return the user calling the endpoint. Information about the user calling the endpoint must be found in the `myMember` field of the Group object. + * @summary List Group Members + * @param {string} groupId Must be a valid group ID. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getGroupMembers(groupId: string, n?: number, offset?: number, options?: any): AxiosPromise> { + return localVarFp.getGroupMembers(groupId, n, offset, options).then((request) => request(axios, basePath)); }, /** - * Retrieve if the user is currently a friend with a given user, if they have an outgoing friend request, and if they have an incoming friend request. The proper way to receive and accept friend request is by checking if the user has an incoming `Notification` of type `friendRequest`, and then accepting that notification. - * @summary Check Friend Status - * @param {string} userId + * Returns a List of all possible/available permissions for a Group. + * @summary List Group Permissions + * @param {string} groupId Must be a valid group ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFriendStatus: async (userId: string, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'userId' is not null or undefined - assertParamExists('getFriendStatus', 'userId', userId) - const localVarPath = `/user/{userId}/friendStatus` - .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); - // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); - let baseOptions; - if (configuration) { - baseOptions = configuration.baseOptions; - } - - const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; - const localVarHeaderParameter = {} as any; - const localVarQueryParameter = {} as any; - - // authentication apiKeyCookie required - - // authentication authCookie required - - - - setSearchParams(localVarUrlObj, localVarQueryParameter); - let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; - localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - - return { - url: toPathString(localVarUrlObj), - options: localVarRequestOptions, - }; + getGroupPermissions(groupId: string, options?: any): AxiosPromise> { + return localVarFp.getGroupPermissions(groupId, options).then((request) => request(axios, basePath)); }, /** - * List information about friends. - * @summary List Friends - * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. - * @param {number} [n] The number of objects to return. - * @param {boolean} [offline] Returns *only* offline users if true, returns only online and active users if false + * Returns a list of members that have requested to join the Group. + * @summary Get Group Join Requests + * @param {string} groupId Must be a valid group ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFriends: async (offset?: number, n?: number, offline?: boolean, options: AxiosRequestConfig = {}): Promise => { - const localVarPath = `/auth/user/friends`; - // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); - let baseOptions; - if (configuration) { - baseOptions = configuration.baseOptions; - } - - const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; - const localVarHeaderParameter = {} as any; - const localVarQueryParameter = {} as any; - - // authentication apiKeyCookie required - - // authentication authCookie required - - if (offset !== undefined) { - localVarQueryParameter['offset'] = offset; - } - - if (n !== undefined) { - localVarQueryParameter['n'] = n; - } - - if (offline !== undefined) { - localVarQueryParameter['offline'] = offline; - } - - - - setSearchParams(localVarUrlObj, localVarQueryParameter); - let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; - localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - - return { - url: toPathString(localVarUrlObj), - options: localVarRequestOptions, - }; + getGroupRequests(groupId: string, options?: any): AxiosPromise> { + return localVarFp.getGroupRequests(groupId, options).then((request) => request(axios, basePath)); }, /** - * Unfriend a user by ID. - * @summary Unfriend - * @param {string} userId + * Returns a Group Role by ID. + * @summary Get Group Roles + * @param {string} groupId Must be a valid group ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - unfriend: async (userId: string, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'userId' is not null or undefined - assertParamExists('unfriend', 'userId', userId) - const localVarPath = `/auth/user/friends/{userId}` - .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); - // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); - let baseOptions; - if (configuration) { - baseOptions = configuration.baseOptions; - } - - const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; - const localVarHeaderParameter = {} as any; - const localVarQueryParameter = {} as any; - - // authentication apiKeyCookie required - - // authentication authCookie required - - - - setSearchParams(localVarUrlObj, localVarQueryParameter); - let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; - localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - - return { - url: toPathString(localVarUrlObj), - options: localVarRequestOptions, - }; + getGroupRoles(groupId: string, options?: any): AxiosPromise> { + return localVarFp.getGroupRoles(groupId, options).then((request) => request(axios, basePath)); }, - } -}; - -/** - * FriendsApi - functional programming interface - * @export - */ -export const FriendsApiFp = function(configuration?: Configuration) { - const localVarAxiosParamCreator = FriendsApiAxiosParamCreator(configuration) - return { /** - * Deletes an outgoing pending friend request to another user. To delete an incoming friend request, use the `deleteNotification` endpoint instead. - * @summary Delete Friend Request - * @param {string} userId + * Join a Group by ID and returns the joined Group. + * @summary Join Group + * @param {string} groupId Must be a valid group ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async deleteFriendRequest(userId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.deleteFriendRequest(userId, options); - return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + joinGroup(groupId: string, options?: any): AxiosPromise { + return localVarFp.joinGroup(groupId, options).then((request) => request(axios, basePath)); }, /** - * Send a friend request to another user. - * @summary Send Friend Request - * @param {string} userId + * Kicks a Group Member from the Group. The current user must have the \"Remove Group Members\" permission. + * @summary Kick Group Member + * @param {string} groupId Must be a valid group ID. + * @param {string} userId Must be a valid user ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async friend(userId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.friend(userId, options); - return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + kickGroupMember(groupId: string, userId: string, options?: any): AxiosPromise { + return localVarFp.kickGroupMember(groupId, userId, options).then((request) => request(axios, basePath)); }, /** - * Retrieve if the user is currently a friend with a given user, if they have an outgoing friend request, and if they have an incoming friend request. The proper way to receive and accept friend request is by checking if the user has an incoming `Notification` of type `friendRequest`, and then accepting that notification. - * @summary Check Friend Status - * @param {string} userId + * Leave a group by ID. + * @summary Leave Group + * @param {string} groupId Must be a valid group ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getFriendStatus(userId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getFriendStatus(userId, options); - return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + leaveGroup(groupId: string, options?: any): AxiosPromise { + return localVarFp.leaveGroup(groupId, options).then((request) => request(axios, basePath)); }, /** - * List information about friends. - * @summary List Friends - * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. - * @param {number} [n] The number of objects to return. - * @param {boolean} [offline] Returns *only* offline users if true, returns only online and active users if false + * Removes a Role from a Group Member + * @summary Remove Role from GroupMember + * @param {string} groupId Must be a valid group ID. + * @param {string} userId Must be a valid user ID. + * @param {string} groupRoleId Must be a valid group role ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getFriends(offset?: number, n?: number, offline?: boolean, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getFriends(offset, n, offline, options); - return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + removeGroupMemberRole(groupId: string, userId: string, groupRoleId: string, options?: any): AxiosPromise> { + return localVarFp.removeGroupMemberRole(groupId, userId, groupRoleId, options).then((request) => request(axios, basePath)); }, /** - * Unfriend a user by ID. - * @summary Unfriend - * @param {string} userId + * Responds to a Group Join Request with Accept/Deny + * @summary Respond Group Join request + * @param {string} groupId Must be a valid group ID. + * @param {string} userId Must be a valid user ID. + * @param {RespondGroupJoinRequest} [respondGroupJoinRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async unfriend(userId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.unfriend(userId, options); - return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + respondGroupJoinRequest(groupId: string, userId: string, respondGroupJoinRequest?: RespondGroupJoinRequest, options?: any): AxiosPromise { + return localVarFp.respondGroupJoinRequest(groupId, userId, respondGroupJoinRequest, options).then((request) => request(axios, basePath)); }, - } -}; - -/** - * FriendsApi - factory interface - * @export - */ -export const FriendsApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { - const localVarFp = FriendsApiFp(configuration) - return { /** - * Deletes an outgoing pending friend request to another user. To delete an incoming friend request, use the `deleteNotification` endpoint instead. - * @summary Delete Friend Request - * @param {string} userId + * Unbans a user from a Group. + * @summary Unban Group Member + * @param {string} groupId Must be a valid group ID. + * @param {string} userId Must be a valid user ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - deleteFriendRequest(userId: string, options?: any): AxiosPromise { - return localVarFp.deleteFriendRequest(userId, options).then((request) => request(axios, basePath)); + unbanGroupMember(groupId: string, userId: string, options?: any): AxiosPromise { + return localVarFp.unbanGroupMember(groupId, userId, options).then((request) => request(axios, basePath)); }, /** - * Send a friend request to another user. - * @summary Send Friend Request - * @param {string} userId + * Updates a Group and returns it. + * @summary Update Group + * @param {string} groupId Must be a valid group ID. + * @param {UpdateGroupRequest} [updateGroupRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - friend(userId: string, options?: any): AxiosPromise { - return localVarFp.friend(userId, options).then((request) => request(axios, basePath)); + updateGroup(groupId: string, updateGroupRequest?: UpdateGroupRequest, options?: any): AxiosPromise { + return localVarFp.updateGroup(groupId, updateGroupRequest, options).then((request) => request(axios, basePath)); }, /** - * Retrieve if the user is currently a friend with a given user, if they have an outgoing friend request, and if they have an incoming friend request. The proper way to receive and accept friend request is by checking if the user has an incoming `Notification` of type `friendRequest`, and then accepting that notification. - * @summary Check Friend Status - * @param {string} userId + * Updates a gallery for a Group. + * @summary Update Group Gallery + * @param {string} groupId Must be a valid group ID. + * @param {string} groupGalleryId Must be a valid group gallery ID. + * @param {UpdateGroupGalleryRequest} [updateGroupGalleryRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFriendStatus(userId: string, options?: any): AxiosPromise { - return localVarFp.getFriendStatus(userId, options).then((request) => request(axios, basePath)); + updateGroupGallery(groupId: string, groupGalleryId: string, updateGroupGalleryRequest?: UpdateGroupGalleryRequest, options?: any): AxiosPromise { + return localVarFp.updateGroupGallery(groupId, groupGalleryId, updateGroupGalleryRequest, options).then((request) => request(axios, basePath)); }, /** - * List information about friends. - * @summary List Friends - * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. - * @param {number} [n] The number of objects to return. - * @param {boolean} [offline] Returns *only* offline users if true, returns only online and active users if false + * Updates a Group Member + * @summary Update Group Member + * @param {string} groupId Must be a valid group ID. + * @param {string} userId Must be a valid user ID. + * @param {UpdateGroupMemberRequest} [updateGroupMemberRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFriends(offset?: number, n?: number, offline?: boolean, options?: any): AxiosPromise> { - return localVarFp.getFriends(offset, n, offline, options).then((request) => request(axios, basePath)); + updateGroupMember(groupId: string, userId: string, updateGroupMemberRequest?: UpdateGroupMemberRequest, options?: any): AxiosPromise { + return localVarFp.updateGroupMember(groupId, userId, updateGroupMemberRequest, options).then((request) => request(axios, basePath)); }, /** - * Unfriend a user by ID. - * @summary Unfriend - * @param {string} userId + * Updates a group role by ID. + * @summary Update Group Role + * @param {string} groupId Must be a valid group ID. + * @param {string} groupRoleId Must be a valid group role ID. + * @param {UpdateGroupRoleRequest} [updateGroupRoleRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - unfriend(userId: string, options?: any): AxiosPromise { - return localVarFp.unfriend(userId, options).then((request) => request(axios, basePath)); + updateGroupRole(groupId: string, groupRoleId: string, updateGroupRoleRequest?: UpdateGroupRoleRequest, options?: any): AxiosPromise> { + return localVarFp.updateGroupRole(groupId, groupRoleId, updateGroupRoleRequest, options).then((request) => request(axios, basePath)); }, }; }; -/** - * FriendsApi - object-oriented interface - * @export - * @class FriendsApi - * @extends {BaseAPI} - */ -export class FriendsApi extends BaseAPI { +/** + * GroupsApi - object-oriented interface + * @export + * @class GroupsApi + * @extends {BaseAPI} + */ +export class GroupsApi extends BaseAPI { + /** + * Adds an image to a Group gallery. + * @summary Add Group Gallery Image + * @param {string} groupId Must be a valid group ID. + * @param {string} groupGalleryId Must be a valid group gallery ID. + * @param {AddGroupGalleryImageRequest} [addGroupGalleryImageRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof GroupsApi + */ + public addGroupGalleryImage(groupId: string, groupGalleryId: string, addGroupGalleryImageRequest?: AddGroupGalleryImageRequest, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).addGroupGalleryImage(groupId, groupGalleryId, addGroupGalleryImageRequest, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Adds a Role to a Group Member + * @summary Add Role to GroupMember + * @param {string} groupId Must be a valid group ID. + * @param {string} userId Must be a valid user ID. + * @param {string} groupRoleId Must be a valid group role ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof GroupsApi + */ + public addGroupMemberRole(groupId: string, userId: string, groupRoleId: string, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).addGroupMemberRole(groupId, userId, groupRoleId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Bans a user from a Group. + * @summary Ban Group Member + * @param {string} groupId Must be a valid group ID. + * @param {BanGroupMemberRequest} [banGroupMemberRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof GroupsApi + */ + public banGroupMember(groupId: string, banGroupMemberRequest?: BanGroupMemberRequest, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).banGroupMember(groupId, banGroupMemberRequest, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Cancels a request sent to join the group. + * @summary Cancel Group Join Request + * @param {string} groupId Must be a valid group ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof GroupsApi + */ + public cancelGroupRequest(groupId: string, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).cancelGroupRequest(groupId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Creates a Group and returns a Group object. **Requires VRC+ Subscription.** + * @summary Create Group + * @param {CreateGroupRequest} [createGroupRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof GroupsApi + */ + public createGroup(createGroupRequest?: CreateGroupRequest, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).createGroup(createGroupRequest, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Creates an Announcement for a Group. + * @summary Create Group Announcement + * @param {string} groupId Must be a valid group ID. + * @param {CreateGroupAnnouncementRequest} [createGroupAnnouncementRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof GroupsApi + */ + public createGroupAnnouncement(groupId: string, createGroupAnnouncementRequest?: CreateGroupAnnouncementRequest, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).createGroupAnnouncement(groupId, createGroupAnnouncementRequest, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Creates a gallery for a Group. + * @summary Create Group Gallery + * @param {string} groupId Must be a valid group ID. + * @param {CreateGroupGalleryRequest} [createGroupGalleryRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof GroupsApi + */ + public createGroupGallery(groupId: string, createGroupGalleryRequest?: CreateGroupGalleryRequest, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).createGroupGallery(groupId, createGroupGalleryRequest, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Sends an invite to a user to join the group. + * @summary Invite User to Group + * @param {string} groupId Must be a valid group ID. + * @param {CreateGroupInviteRequest} [createGroupInviteRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof GroupsApi + */ + public createGroupInvite(groupId: string, createGroupInviteRequest?: CreateGroupInviteRequest, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).createGroupInvite(groupId, createGroupInviteRequest, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Create a Group role. + * @summary Create GroupRole + * @param {string} groupId Must be a valid group ID. + * @param {CreateGroupRoleRequest} [createGroupRoleRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof GroupsApi + */ + public createGroupRole(groupId: string, createGroupRoleRequest?: CreateGroupRoleRequest, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).createGroupRole(groupId, createGroupRoleRequest, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Deletes a Group. + * @summary Delete Group + * @param {string} groupId Must be a valid group ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof GroupsApi + */ + public deleteGroup(groupId: string, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).deleteGroup(groupId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Deletes the announcement for a Group. + * @summary Delete Group Announcement + * @param {string} groupId Must be a valid group ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof GroupsApi + */ + public deleteGroupAnnouncement(groupId: string, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).deleteGroupAnnouncement(groupId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Deletes a gallery for a Group. + * @summary Delete Group Gallery + * @param {string} groupId Must be a valid group ID. + * @param {string} groupGalleryId Must be a valid group gallery ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof GroupsApi + */ + public deleteGroupGallery(groupId: string, groupGalleryId: string, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).deleteGroupGallery(groupId, groupGalleryId, options).then((request) => request(this.axios, this.basePath)); + } + /** - * Deletes an outgoing pending friend request to another user. To delete an incoming friend request, use the `deleteNotification` endpoint instead. - * @summary Delete Friend Request - * @param {string} userId + * Deletes an image from a Group gallery. + * @summary Delete Group Gallery Image + * @param {string} groupId Must be a valid group ID. + * @param {string} groupGalleryId Must be a valid group gallery ID. + * @param {string} groupGalleryImageId Must be a valid group gallery image ID. * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof FriendsApi + * @memberof GroupsApi */ - public deleteFriendRequest(userId: string, options?: AxiosRequestConfig) { - return FriendsApiFp(this.configuration).deleteFriendRequest(userId, options).then((request) => request(this.axios, this.basePath)); + public deleteGroupGalleryImage(groupId: string, groupGalleryId: string, groupGalleryImageId: string, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).deleteGroupGalleryImage(groupId, groupGalleryId, groupGalleryImageId, options).then((request) => request(this.axios, this.basePath)); } /** - * Send a friend request to another user. - * @summary Send Friend Request - * @param {string} userId + * Deletes an Group invite sent to a User + * @summary Delete User Invite + * @param {string} groupId Must be a valid group ID. + * @param {string} userId Must be a valid user ID. * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof FriendsApi + * @memberof GroupsApi */ - public friend(userId: string, options?: AxiosRequestConfig) { - return FriendsApiFp(this.configuration).friend(userId, options).then((request) => request(this.axios, this.basePath)); + public deleteGroupInvite(groupId: string, userId: string, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).deleteGroupInvite(groupId, userId, options).then((request) => request(this.axios, this.basePath)); } /** - * Retrieve if the user is currently a friend with a given user, if they have an outgoing friend request, and if they have an incoming friend request. The proper way to receive and accept friend request is by checking if the user has an incoming `Notification` of type `friendRequest`, and then accepting that notification. - * @summary Check Friend Status - * @param {string} userId + * Deletes a Group Role by ID and returns the remaining roles. + * @summary Delete Group Role + * @param {string} groupId Must be a valid group ID. + * @param {string} groupRoleId Must be a valid group role ID. * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof FriendsApi + * @memberof GroupsApi */ - public getFriendStatus(userId: string, options?: AxiosRequestConfig) { - return FriendsApiFp(this.configuration).getFriendStatus(userId, options).then((request) => request(this.axios, this.basePath)); + public deleteGroupRole(groupId: string, groupRoleId: string, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).deleteGroupRole(groupId, groupRoleId, options).then((request) => request(this.axios, this.basePath)); } /** - * List information about friends. - * @summary List Friends + * Returns a single Group by ID. + * @summary Get Group by ID + * @param {string} groupId Must be a valid group ID. + * @param {boolean} [includeRoles] Include roles for the Group object. Defaults to false. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof GroupsApi + */ + public getGroup(groupId: string, includeRoles?: boolean, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).getGroup(groupId, includeRoles, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Returns the announcement for a Group. If no announcement has been made, then it returns **empty object**. If an announcement exists, then it will always return all fields except `imageId` and `imageUrl` which may be null. + * @summary Get Group Announcement + * @param {string} groupId Must be a valid group ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof GroupsApi + */ + public getGroupAnnouncements(groupId: string, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).getGroupAnnouncements(groupId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Returns a list of audit logs for a Group. + * @summary Get Group Audit Logs + * @param {string} groupId Must be a valid group ID. + * @param {number} [n] The number of objects to return. * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [startDate] The start date of the search range. + * @param {string} [endDate] The end date of the search range. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof GroupsApi + */ + public getGroupAuditLogs(groupId: string, n?: number, offset?: number, startDate?: string, endDate?: string, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).getGroupAuditLogs(groupId, n, offset, startDate, endDate, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Returns a list of banned users for a Group. + * @summary Get Group Bans + * @param {string} groupId Must be a valid group ID. * @param {number} [n] The number of objects to return. - * @param {boolean} [offline] Returns *only* offline users if true, returns only online and active users if false + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof FriendsApi + * @memberof GroupsApi */ - public getFriends(offset?: number, n?: number, offline?: boolean, options?: AxiosRequestConfig) { - return FriendsApiFp(this.configuration).getFriends(offset, n, offline, options).then((request) => request(this.axios, this.basePath)); + public getGroupBans(groupId: string, n?: number, offset?: number, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).getGroupBans(groupId, n, offset, options).then((request) => request(this.axios, this.basePath)); } /** - * Unfriend a user by ID. - * @summary Unfriend - * @param {string} userId + * Returns a list of images for a Group gallery. + * @summary Get Group Gallery Images + * @param {string} groupId Must be a valid group ID. + * @param {string} groupGalleryId Must be a valid group gallery ID. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {boolean} [approved] If specified, only returns images that have been approved or not approved. * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof FriendsApi + * @memberof GroupsApi */ - public unfriend(userId: string, options?: AxiosRequestConfig) { - return FriendsApiFp(this.configuration).unfriend(userId, options).then((request) => request(this.axios, this.basePath)); + public getGroupGalleryImages(groupId: string, groupGalleryId: string, n?: number, offset?: number, approved?: boolean, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).getGroupGalleryImages(groupId, groupGalleryId, n, offset, approved, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Returns a list of members that have been invited to the Group. + * @summary Get Group Invites Sent + * @param {string} groupId Must be a valid group ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof GroupsApi + */ + public getGroupInvites(groupId: string, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).getGroupInvites(groupId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Returns a LimitedGroup Member. + * @summary Get Group Member + * @param {string} groupId Must be a valid group ID. + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof GroupsApi + */ + public getGroupMember(groupId: string, userId: string, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).getGroupMember(groupId, userId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Returns a List of all **other** Group Members. This endpoint will never return the user calling the endpoint. Information about the user calling the endpoint must be found in the `myMember` field of the Group object. + * @summary List Group Members + * @param {string} groupId Must be a valid group ID. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof GroupsApi + */ + public getGroupMembers(groupId: string, n?: number, offset?: number, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).getGroupMembers(groupId, n, offset, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Returns a List of all possible/available permissions for a Group. + * @summary List Group Permissions + * @param {string} groupId Must be a valid group ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof GroupsApi + */ + public getGroupPermissions(groupId: string, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).getGroupPermissions(groupId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Returns a list of members that have requested to join the Group. + * @summary Get Group Join Requests + * @param {string} groupId Must be a valid group ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof GroupsApi + */ + public getGroupRequests(groupId: string, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).getGroupRequests(groupId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Returns a Group Role by ID. + * @summary Get Group Roles + * @param {string} groupId Must be a valid group ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof GroupsApi + */ + public getGroupRoles(groupId: string, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).getGroupRoles(groupId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Join a Group by ID and returns the joined Group. + * @summary Join Group + * @param {string} groupId Must be a valid group ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof GroupsApi + */ + public joinGroup(groupId: string, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).joinGroup(groupId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Kicks a Group Member from the Group. The current user must have the \"Remove Group Members\" permission. + * @summary Kick Group Member + * @param {string} groupId Must be a valid group ID. + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof GroupsApi + */ + public kickGroupMember(groupId: string, userId: string, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).kickGroupMember(groupId, userId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Leave a group by ID. + * @summary Leave Group + * @param {string} groupId Must be a valid group ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof GroupsApi + */ + public leaveGroup(groupId: string, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).leaveGroup(groupId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Removes a Role from a Group Member + * @summary Remove Role from GroupMember + * @param {string} groupId Must be a valid group ID. + * @param {string} userId Must be a valid user ID. + * @param {string} groupRoleId Must be a valid group role ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof GroupsApi + */ + public removeGroupMemberRole(groupId: string, userId: string, groupRoleId: string, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).removeGroupMemberRole(groupId, userId, groupRoleId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Responds to a Group Join Request with Accept/Deny + * @summary Respond Group Join request + * @param {string} groupId Must be a valid group ID. + * @param {string} userId Must be a valid user ID. + * @param {RespondGroupJoinRequest} [respondGroupJoinRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof GroupsApi + */ + public respondGroupJoinRequest(groupId: string, userId: string, respondGroupJoinRequest?: RespondGroupJoinRequest, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).respondGroupJoinRequest(groupId, userId, respondGroupJoinRequest, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Unbans a user from a Group. + * @summary Unban Group Member + * @param {string} groupId Must be a valid group ID. + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof GroupsApi + */ + public unbanGroupMember(groupId: string, userId: string, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).unbanGroupMember(groupId, userId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Updates a Group and returns it. + * @summary Update Group + * @param {string} groupId Must be a valid group ID. + * @param {UpdateGroupRequest} [updateGroupRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof GroupsApi + */ + public updateGroup(groupId: string, updateGroupRequest?: UpdateGroupRequest, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).updateGroup(groupId, updateGroupRequest, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Updates a gallery for a Group. + * @summary Update Group Gallery + * @param {string} groupId Must be a valid group ID. + * @param {string} groupGalleryId Must be a valid group gallery ID. + * @param {UpdateGroupGalleryRequest} [updateGroupGalleryRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof GroupsApi + */ + public updateGroupGallery(groupId: string, groupGalleryId: string, updateGroupGalleryRequest?: UpdateGroupGalleryRequest, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).updateGroupGallery(groupId, groupGalleryId, updateGroupGalleryRequest, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Updates a Group Member + * @summary Update Group Member + * @param {string} groupId Must be a valid group ID. + * @param {string} userId Must be a valid user ID. + * @param {UpdateGroupMemberRequest} [updateGroupMemberRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof GroupsApi + */ + public updateGroupMember(groupId: string, userId: string, updateGroupMemberRequest?: UpdateGroupMemberRequest, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).updateGroupMember(groupId, userId, updateGroupMemberRequest, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Updates a group role by ID. + * @summary Update Group Role + * @param {string} groupId Must be a valid group ID. + * @param {string} groupRoleId Must be a valid group role ID. + * @param {UpdateGroupRoleRequest} [updateGroupRoleRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof GroupsApi + */ + public updateGroupRole(groupId: string, groupRoleId: string, updateGroupRoleRequest?: UpdateGroupRoleRequest, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).updateGroupRole(groupId, groupRoleId, updateGroupRoleRequest, options).then((request) => request(this.axios, this.basePath)); } } @@ -7974,8 +12121,8 @@ export const InstancesApiAxiosParamCreator = function (configuration?: Configura /** * Returns an instance. Please read [Instances Tutorial](https://vrchatapi.github.io/tutorials/instances/) for more information on Instances. If an invalid instanceId is provided, this endpoint will simply return \"null\"! * @summary Get Instance - * @param {string} worldId - * @param {string} instanceId + * @param {string} worldId Must be a valid world ID. + * @param {string} instanceId Must be a valid instance ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -8016,7 +12163,7 @@ export const InstancesApiAxiosParamCreator = function (configuration?: Configura /** * Returns an instance. Please read [Instances Tutorial](https://vrchatapi.github.io/tutorials/instances/) for more information on Instances. * @summary Get Instance By Short Name - * @param {string} shortName + * @param {string} shortName Must be a valid instance short name. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -8054,8 +12201,8 @@ export const InstancesApiAxiosParamCreator = function (configuration?: Configura /** * Returns an instance short name. * @summary Get Instance Short Name - * @param {string} worldId - * @param {string} instanceId + * @param {string} worldId Must be a valid world ID. + * @param {string} instanceId Must be a valid instance ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -8096,8 +12243,8 @@ export const InstancesApiAxiosParamCreator = function (configuration?: Configura /** * Sends an invite to the instance to yourself. * @summary Send Self Invite - * @param {string} worldId - * @param {string} instanceId + * @param {string} worldId Must be a valid world ID. + * @param {string} instanceId Must be a valid instance ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -8148,8 +12295,8 @@ export const InstancesApiFp = function(configuration?: Configuration) { /** * Returns an instance. Please read [Instances Tutorial](https://vrchatapi.github.io/tutorials/instances/) for more information on Instances. If an invalid instanceId is provided, this endpoint will simply return \"null\"! * @summary Get Instance - * @param {string} worldId - * @param {string} instanceId + * @param {string} worldId Must be a valid world ID. + * @param {string} instanceId Must be a valid instance ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -8160,7 +12307,7 @@ export const InstancesApiFp = function(configuration?: Configuration) { /** * Returns an instance. Please read [Instances Tutorial](https://vrchatapi.github.io/tutorials/instances/) for more information on Instances. * @summary Get Instance By Short Name - * @param {string} shortName + * @param {string} shortName Must be a valid instance short name. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -8171,8 +12318,8 @@ export const InstancesApiFp = function(configuration?: Configuration) { /** * Returns an instance short name. * @summary Get Instance Short Name - * @param {string} worldId - * @param {string} instanceId + * @param {string} worldId Must be a valid world ID. + * @param {string} instanceId Must be a valid instance ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -8183,8 +12330,8 @@ export const InstancesApiFp = function(configuration?: Configuration) { /** * Sends an invite to the instance to yourself. * @summary Send Self Invite - * @param {string} worldId - * @param {string} instanceId + * @param {string} worldId Must be a valid world ID. + * @param {string} instanceId Must be a valid instance ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -8205,8 +12352,8 @@ export const InstancesApiFactory = function (configuration?: Configuration, base /** * Returns an instance. Please read [Instances Tutorial](https://vrchatapi.github.io/tutorials/instances/) for more information on Instances. If an invalid instanceId is provided, this endpoint will simply return \"null\"! * @summary Get Instance - * @param {string} worldId - * @param {string} instanceId + * @param {string} worldId Must be a valid world ID. + * @param {string} instanceId Must be a valid instance ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -8216,7 +12363,7 @@ export const InstancesApiFactory = function (configuration?: Configuration, base /** * Returns an instance. Please read [Instances Tutorial](https://vrchatapi.github.io/tutorials/instances/) for more information on Instances. * @summary Get Instance By Short Name - * @param {string} shortName + * @param {string} shortName Must be a valid instance short name. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -8226,8 +12373,8 @@ export const InstancesApiFactory = function (configuration?: Configuration, base /** * Returns an instance short name. * @summary Get Instance Short Name - * @param {string} worldId - * @param {string} instanceId + * @param {string} worldId Must be a valid world ID. + * @param {string} instanceId Must be a valid instance ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -8237,8 +12384,8 @@ export const InstancesApiFactory = function (configuration?: Configuration, base /** * Sends an invite to the instance to yourself. * @summary Send Self Invite - * @param {string} worldId - * @param {string} instanceId + * @param {string} worldId Must be a valid world ID. + * @param {string} instanceId Must be a valid instance ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -8258,8 +12405,8 @@ export class InstancesApi extends BaseAPI { /** * Returns an instance. Please read [Instances Tutorial](https://vrchatapi.github.io/tutorials/instances/) for more information on Instances. If an invalid instanceId is provided, this endpoint will simply return \"null\"! * @summary Get Instance - * @param {string} worldId - * @param {string} instanceId + * @param {string} worldId Must be a valid world ID. + * @param {string} instanceId Must be a valid instance ID. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof InstancesApi @@ -8271,7 +12418,7 @@ export class InstancesApi extends BaseAPI { /** * Returns an instance. Please read [Instances Tutorial](https://vrchatapi.github.io/tutorials/instances/) for more information on Instances. * @summary Get Instance By Short Name - * @param {string} shortName + * @param {string} shortName Must be a valid instance short name. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof InstancesApi @@ -8283,8 +12430,8 @@ export class InstancesApi extends BaseAPI { /** * Returns an instance short name. * @summary Get Instance Short Name - * @param {string} worldId - * @param {string} instanceId + * @param {string} worldId Must be a valid world ID. + * @param {string} instanceId Must be a valid instance ID. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof InstancesApi @@ -8296,8 +12443,8 @@ export class InstancesApi extends BaseAPI { /** * Sends an invite to the instance to yourself. * @summary Send Self Invite - * @param {string} worldId - * @param {string} instanceId + * @param {string} worldId Must be a valid world ID. + * @param {string} instanceId Must be a valid instance ID. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof InstancesApi @@ -8317,13 +12464,13 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio /** * Returns a single Invite Message. This returns the exact same information but less than `getInviteMessages`. Admin Credentials are required to view messages of other users! Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite * @summary Get Invite Message - * @param {string} userId - * @param {'message' | 'response' | 'request' | 'requestResponse'} messageType - * @param {number} slot + * @param {string} userId Must be a valid user ID. + * @param {InviteMessageType} messageType The type of message to fetch, must be a valid InviteMessageType. + * @param {number} slot The message slot to fetch of a given message type. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getInviteMessage: async (userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', slot: number, options: AxiosRequestConfig = {}): Promise => { + getInviteMessage: async (userId: string, messageType: InviteMessageType, slot: number, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'userId' is not null or undefined assertParamExists('getInviteMessage', 'userId', userId) // verify required parameter 'messageType' is not null or undefined @@ -8363,12 +12510,12 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio /** * Returns a list of all the users Invite Messages. Admin Credentials are required to view messages of other users! Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite * @summary List Invite Messages - * @param {string} userId - * @param {'message' | 'response' | 'request' | 'requestResponse'} messageType + * @param {string} userId Must be a valid user ID. + * @param {InviteMessageType} messageType The type of message to fetch, must be a valid InviteMessageType. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getInviteMessages: async (userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', options: AxiosRequestConfig = {}): Promise => { + getInviteMessages: async (userId: string, messageType: InviteMessageType, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'userId' is not null or undefined assertParamExists('getInviteMessages', 'userId', userId) // verify required parameter 'messageType' is not null or undefined @@ -8405,8 +12552,8 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio /** * Sends self an invite to an instance * @summary Invite Myself To Instance - * @param {string} worldId - * @param {string} instanceId + * @param {string} worldId Must be a valid world ID. + * @param {string} instanceId Must be a valid instance ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -8447,7 +12594,7 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio /** * Sends an invite to a user. Returns the Notification of type `invite` that was sent. * @summary Invite User - * @param {string} userId + * @param {string} userId Must be a valid user ID. * @param {InviteRequest} [inviteRequest] Slot number of the Invite Message to use when inviting a user. * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -8489,7 +12636,7 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio /** * Requests an invite from a user. Returns the Notification of type `requestInvite` that was sent. * @summary Request Invite - * @param {string} userId + * @param {string} userId Must be a valid user ID. * @param {RequestInviteRequest} [requestInviteRequest] Slot number of the Request Message to use when request an invite. * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -8531,13 +12678,13 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio /** * Resets a single Invite Message back to its original message, and then returns a list of all of them. Admin Credentials are required to update messages of other users! Resetting a message respects the rate-limit, so it is not possible to reset within the 60 minutes countdown. Resetting it does however not set the rate-limit to 60 like when editing it. It is possible to edit it right after resetting it. Trying to edit a message before the cooldown timer expires results in a 429 \"Too Fast Error\". Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite The DELETE endpoint does not have/require any request body. * @summary Reset Invite Message - * @param {string} userId - * @param {'message' | 'response' | 'request' | 'requestResponse'} messageType - * @param {number} slot + * @param {string} userId Must be a valid user ID. + * @param {InviteMessageType} messageType The type of message to fetch, must be a valid InviteMessageType. + * @param {number} slot The message slot to fetch of a given message type. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - resetInviteMessage: async (userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', slot: number, options: AxiosRequestConfig = {}): Promise => { + resetInviteMessage: async (userId: string, messageType: InviteMessageType, slot: number, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'userId' is not null or undefined assertParamExists('resetInviteMessage', 'userId', userId) // verify required parameter 'messageType' is not null or undefined @@ -8577,7 +12724,7 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio /** * Respond to an invite request by sending a world invite to the requesting user. `:notificationId` is the ID of the requesting notification. * @summary Respond Invite - * @param {string} notificationId + * @param {string} notificationId Must be a valid notification ID. * @param {InviteResponse} [inviteResponse] Slot number of the Response Message to use when responding to a user. * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -8619,14 +12766,14 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio /** * Updates a single Invite Message and then returns a list of all of them. Admin Credentials are required to update messages of other users! Updating a message automatically sets the cooldown timer to 60 minutes. Trying to edit a message before the cooldown timer expires results in a 429 \"Too Fast Error\". Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite * @summary Update Invite Message - * @param {string} userId - * @param {'message' | 'response' | 'request' | 'requestResponse'} messageType - * @param {number} slot + * @param {string} userId Must be a valid user ID. + * @param {InviteMessageType} messageType The type of message to fetch, must be a valid InviteMessageType. + * @param {number} slot The message slot to fetch of a given message type. * @param {UpdateInviteMessageRequest} [updateInviteMessageRequest] Message of what to set the invite message to. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - updateInviteMessage: async (userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', slot: number, updateInviteMessageRequest?: UpdateInviteMessageRequest, options: AxiosRequestConfig = {}): Promise => { + updateInviteMessage: async (userId: string, messageType: InviteMessageType, slot: number, updateInviteMessageRequest?: UpdateInviteMessageRequest, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'userId' is not null or undefined assertParamExists('updateInviteMessage', 'userId', userId) // verify required parameter 'messageType' is not null or undefined @@ -8679,33 +12826,33 @@ export const InviteApiFp = function(configuration?: Configuration) { /** * Returns a single Invite Message. This returns the exact same information but less than `getInviteMessages`. Admin Credentials are required to view messages of other users! Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite * @summary Get Invite Message - * @param {string} userId - * @param {'message' | 'response' | 'request' | 'requestResponse'} messageType - * @param {number} slot + * @param {string} userId Must be a valid user ID. + * @param {InviteMessageType} messageType The type of message to fetch, must be a valid InviteMessageType. + * @param {number} slot The message slot to fetch of a given message type. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getInviteMessage(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', slot: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async getInviteMessage(userId: string, messageType: InviteMessageType, slot: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getInviteMessage(userId, messageType, slot, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * Returns a list of all the users Invite Messages. Admin Credentials are required to view messages of other users! Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite * @summary List Invite Messages - * @param {string} userId - * @param {'message' | 'response' | 'request' | 'requestResponse'} messageType + * @param {string} userId Must be a valid user ID. + * @param {InviteMessageType} messageType The type of message to fetch, must be a valid InviteMessageType. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getInviteMessages(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + async getInviteMessages(userId: string, messageType: InviteMessageType, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.getInviteMessages(userId, messageType, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * Sends self an invite to an instance * @summary Invite Myself To Instance - * @param {string} worldId - * @param {string} instanceId + * @param {string} worldId Must be a valid world ID. + * @param {string} instanceId Must be a valid instance ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -8716,7 +12863,7 @@ export const InviteApiFp = function(configuration?: Configuration) { /** * Sends an invite to a user. Returns the Notification of type `invite` that was sent. * @summary Invite User - * @param {string} userId + * @param {string} userId Must be a valid user ID. * @param {InviteRequest} [inviteRequest] Slot number of the Invite Message to use when inviting a user. * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -8728,7 +12875,7 @@ export const InviteApiFp = function(configuration?: Configuration) { /** * Requests an invite from a user. Returns the Notification of type `requestInvite` that was sent. * @summary Request Invite - * @param {string} userId + * @param {string} userId Must be a valid user ID. * @param {RequestInviteRequest} [requestInviteRequest] Slot number of the Request Message to use when request an invite. * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -8740,20 +12887,20 @@ export const InviteApiFp = function(configuration?: Configuration) { /** * Resets a single Invite Message back to its original message, and then returns a list of all of them. Admin Credentials are required to update messages of other users! Resetting a message respects the rate-limit, so it is not possible to reset within the 60 minutes countdown. Resetting it does however not set the rate-limit to 60 like when editing it. It is possible to edit it right after resetting it. Trying to edit a message before the cooldown timer expires results in a 429 \"Too Fast Error\". Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite The DELETE endpoint does not have/require any request body. * @summary Reset Invite Message - * @param {string} userId - * @param {'message' | 'response' | 'request' | 'requestResponse'} messageType - * @param {number} slot + * @param {string} userId Must be a valid user ID. + * @param {InviteMessageType} messageType The type of message to fetch, must be a valid InviteMessageType. + * @param {number} slot The message slot to fetch of a given message type. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async resetInviteMessage(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', slot: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + async resetInviteMessage(userId: string, messageType: InviteMessageType, slot: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.resetInviteMessage(userId, messageType, slot, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * Respond to an invite request by sending a world invite to the requesting user. `:notificationId` is the ID of the requesting notification. * @summary Respond Invite - * @param {string} notificationId + * @param {string} notificationId Must be a valid notification ID. * @param {InviteResponse} [inviteResponse] Slot number of the Response Message to use when responding to a user. * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -8765,14 +12912,14 @@ export const InviteApiFp = function(configuration?: Configuration) { /** * Updates a single Invite Message and then returns a list of all of them. Admin Credentials are required to update messages of other users! Updating a message automatically sets the cooldown timer to 60 minutes. Trying to edit a message before the cooldown timer expires results in a 429 \"Too Fast Error\". Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite * @summary Update Invite Message - * @param {string} userId - * @param {'message' | 'response' | 'request' | 'requestResponse'} messageType - * @param {number} slot + * @param {string} userId Must be a valid user ID. + * @param {InviteMessageType} messageType The type of message to fetch, must be a valid InviteMessageType. + * @param {number} slot The message slot to fetch of a given message type. * @param {UpdateInviteMessageRequest} [updateInviteMessageRequest] Message of what to set the invite message to. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async updateInviteMessage(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', slot: number, updateInviteMessageRequest?: UpdateInviteMessageRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + async updateInviteMessage(userId: string, messageType: InviteMessageType, slot: number, updateInviteMessageRequest?: UpdateInviteMessageRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.updateInviteMessage(userId, messageType, slot, updateInviteMessageRequest, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -8789,31 +12936,31 @@ export const InviteApiFactory = function (configuration?: Configuration, basePat /** * Returns a single Invite Message. This returns the exact same information but less than `getInviteMessages`. Admin Credentials are required to view messages of other users! Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite * @summary Get Invite Message - * @param {string} userId - * @param {'message' | 'response' | 'request' | 'requestResponse'} messageType - * @param {number} slot + * @param {string} userId Must be a valid user ID. + * @param {InviteMessageType} messageType The type of message to fetch, must be a valid InviteMessageType. + * @param {number} slot The message slot to fetch of a given message type. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getInviteMessage(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', slot: number, options?: any): AxiosPromise { + getInviteMessage(userId: string, messageType: InviteMessageType, slot: number, options?: any): AxiosPromise { return localVarFp.getInviteMessage(userId, messageType, slot, options).then((request) => request(axios, basePath)); }, /** * Returns a list of all the users Invite Messages. Admin Credentials are required to view messages of other users! Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite * @summary List Invite Messages - * @param {string} userId - * @param {'message' | 'response' | 'request' | 'requestResponse'} messageType + * @param {string} userId Must be a valid user ID. + * @param {InviteMessageType} messageType The type of message to fetch, must be a valid InviteMessageType. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getInviteMessages(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', options?: any): AxiosPromise> { + getInviteMessages(userId: string, messageType: InviteMessageType, options?: any): AxiosPromise> { return localVarFp.getInviteMessages(userId, messageType, options).then((request) => request(axios, basePath)); }, /** * Sends self an invite to an instance * @summary Invite Myself To Instance - * @param {string} worldId - * @param {string} instanceId + * @param {string} worldId Must be a valid world ID. + * @param {string} instanceId Must be a valid instance ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -8823,7 +12970,7 @@ export const InviteApiFactory = function (configuration?: Configuration, basePat /** * Sends an invite to a user. Returns the Notification of type `invite` that was sent. * @summary Invite User - * @param {string} userId + * @param {string} userId Must be a valid user ID. * @param {InviteRequest} [inviteRequest] Slot number of the Invite Message to use when inviting a user. * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -8834,7 +12981,7 @@ export const InviteApiFactory = function (configuration?: Configuration, basePat /** * Requests an invite from a user. Returns the Notification of type `requestInvite` that was sent. * @summary Request Invite - * @param {string} userId + * @param {string} userId Must be a valid user ID. * @param {RequestInviteRequest} [requestInviteRequest] Slot number of the Request Message to use when request an invite. * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -8845,19 +12992,19 @@ export const InviteApiFactory = function (configuration?: Configuration, basePat /** * Resets a single Invite Message back to its original message, and then returns a list of all of them. Admin Credentials are required to update messages of other users! Resetting a message respects the rate-limit, so it is not possible to reset within the 60 minutes countdown. Resetting it does however not set the rate-limit to 60 like when editing it. It is possible to edit it right after resetting it. Trying to edit a message before the cooldown timer expires results in a 429 \"Too Fast Error\". Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite The DELETE endpoint does not have/require any request body. * @summary Reset Invite Message - * @param {string} userId - * @param {'message' | 'response' | 'request' | 'requestResponse'} messageType - * @param {number} slot + * @param {string} userId Must be a valid user ID. + * @param {InviteMessageType} messageType The type of message to fetch, must be a valid InviteMessageType. + * @param {number} slot The message slot to fetch of a given message type. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - resetInviteMessage(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', slot: number, options?: any): AxiosPromise> { + resetInviteMessage(userId: string, messageType: InviteMessageType, slot: number, options?: any): AxiosPromise> { return localVarFp.resetInviteMessage(userId, messageType, slot, options).then((request) => request(axios, basePath)); }, /** * Respond to an invite request by sending a world invite to the requesting user. `:notificationId` is the ID of the requesting notification. * @summary Respond Invite - * @param {string} notificationId + * @param {string} notificationId Must be a valid notification ID. * @param {InviteResponse} [inviteResponse] Slot number of the Response Message to use when responding to a user. * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -8868,14 +13015,14 @@ export const InviteApiFactory = function (configuration?: Configuration, basePat /** * Updates a single Invite Message and then returns a list of all of them. Admin Credentials are required to update messages of other users! Updating a message automatically sets the cooldown timer to 60 minutes. Trying to edit a message before the cooldown timer expires results in a 429 \"Too Fast Error\". Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite * @summary Update Invite Message - * @param {string} userId - * @param {'message' | 'response' | 'request' | 'requestResponse'} messageType - * @param {number} slot + * @param {string} userId Must be a valid user ID. + * @param {InviteMessageType} messageType The type of message to fetch, must be a valid InviteMessageType. + * @param {number} slot The message slot to fetch of a given message type. * @param {UpdateInviteMessageRequest} [updateInviteMessageRequest] Message of what to set the invite message to. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - updateInviteMessage(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', slot: number, updateInviteMessageRequest?: UpdateInviteMessageRequest, options?: any): AxiosPromise> { + updateInviteMessage(userId: string, messageType: InviteMessageType, slot: number, updateInviteMessageRequest?: UpdateInviteMessageRequest, options?: any): AxiosPromise> { return localVarFp.updateInviteMessage(userId, messageType, slot, updateInviteMessageRequest, options).then((request) => request(axios, basePath)); }, }; @@ -8891,35 +13038,35 @@ export class InviteApi extends BaseAPI { /** * Returns a single Invite Message. This returns the exact same information but less than `getInviteMessages`. Admin Credentials are required to view messages of other users! Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite * @summary Get Invite Message - * @param {string} userId - * @param {'message' | 'response' | 'request' | 'requestResponse'} messageType - * @param {number} slot + * @param {string} userId Must be a valid user ID. + * @param {InviteMessageType} messageType The type of message to fetch, must be a valid InviteMessageType. + * @param {number} slot The message slot to fetch of a given message type. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof InviteApi */ - public getInviteMessage(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', slot: number, options?: AxiosRequestConfig) { + public getInviteMessage(userId: string, messageType: InviteMessageType, slot: number, options?: AxiosRequestConfig) { return InviteApiFp(this.configuration).getInviteMessage(userId, messageType, slot, options).then((request) => request(this.axios, this.basePath)); } /** * Returns a list of all the users Invite Messages. Admin Credentials are required to view messages of other users! Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite * @summary List Invite Messages - * @param {string} userId - * @param {'message' | 'response' | 'request' | 'requestResponse'} messageType + * @param {string} userId Must be a valid user ID. + * @param {InviteMessageType} messageType The type of message to fetch, must be a valid InviteMessageType. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof InviteApi */ - public getInviteMessages(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', options?: AxiosRequestConfig) { + public getInviteMessages(userId: string, messageType: InviteMessageType, options?: AxiosRequestConfig) { return InviteApiFp(this.configuration).getInviteMessages(userId, messageType, options).then((request) => request(this.axios, this.basePath)); } /** * Sends self an invite to an instance * @summary Invite Myself To Instance - * @param {string} worldId - * @param {string} instanceId + * @param {string} worldId Must be a valid world ID. + * @param {string} instanceId Must be a valid instance ID. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof InviteApi @@ -8931,7 +13078,7 @@ export class InviteApi extends BaseAPI { /** * Sends an invite to a user. Returns the Notification of type `invite` that was sent. * @summary Invite User - * @param {string} userId + * @param {string} userId Must be a valid user ID. * @param {InviteRequest} [inviteRequest] Slot number of the Invite Message to use when inviting a user. * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -8944,7 +13091,7 @@ export class InviteApi extends BaseAPI { /** * Requests an invite from a user. Returns the Notification of type `requestInvite` that was sent. * @summary Request Invite - * @param {string} userId + * @param {string} userId Must be a valid user ID. * @param {RequestInviteRequest} [requestInviteRequest] Slot number of the Request Message to use when request an invite. * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -8957,21 +13104,21 @@ export class InviteApi extends BaseAPI { /** * Resets a single Invite Message back to its original message, and then returns a list of all of them. Admin Credentials are required to update messages of other users! Resetting a message respects the rate-limit, so it is not possible to reset within the 60 minutes countdown. Resetting it does however not set the rate-limit to 60 like when editing it. It is possible to edit it right after resetting it. Trying to edit a message before the cooldown timer expires results in a 429 \"Too Fast Error\". Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite The DELETE endpoint does not have/require any request body. * @summary Reset Invite Message - * @param {string} userId - * @param {'message' | 'response' | 'request' | 'requestResponse'} messageType - * @param {number} slot + * @param {string} userId Must be a valid user ID. + * @param {InviteMessageType} messageType The type of message to fetch, must be a valid InviteMessageType. + * @param {number} slot The message slot to fetch of a given message type. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof InviteApi */ - public resetInviteMessage(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', slot: number, options?: AxiosRequestConfig) { + public resetInviteMessage(userId: string, messageType: InviteMessageType, slot: number, options?: AxiosRequestConfig) { return InviteApiFp(this.configuration).resetInviteMessage(userId, messageType, slot, options).then((request) => request(this.axios, this.basePath)); } /** * Respond to an invite request by sending a world invite to the requesting user. `:notificationId` is the ID of the requesting notification. * @summary Respond Invite - * @param {string} notificationId + * @param {string} notificationId Must be a valid notification ID. * @param {InviteResponse} [inviteResponse] Slot number of the Response Message to use when responding to a user. * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -8984,15 +13131,15 @@ export class InviteApi extends BaseAPI { /** * Updates a single Invite Message and then returns a list of all of them. Admin Credentials are required to update messages of other users! Updating a message automatically sets the cooldown timer to 60 minutes. Trying to edit a message before the cooldown timer expires results in a 429 \"Too Fast Error\". Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite * @summary Update Invite Message - * @param {string} userId - * @param {'message' | 'response' | 'request' | 'requestResponse'} messageType - * @param {number} slot + * @param {string} userId Must be a valid user ID. + * @param {InviteMessageType} messageType The type of message to fetch, must be a valid InviteMessageType. + * @param {number} slot The message slot to fetch of a given message type. * @param {UpdateInviteMessageRequest} [updateInviteMessageRequest] Message of what to set the invite message to. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof InviteApi */ - public updateInviteMessage(userId: string, messageType: 'message' | 'response' | 'request' | 'requestResponse', slot: number, updateInviteMessageRequest?: UpdateInviteMessageRequest, options?: AxiosRequestConfig) { + public updateInviteMessage(userId: string, messageType: InviteMessageType, slot: number, updateInviteMessageRequest?: UpdateInviteMessageRequest, options?: AxiosRequestConfig) { return InviteApiFp(this.configuration).updateInviteMessage(userId, messageType, slot, updateInviteMessageRequest, options).then((request) => request(this.axios, this.basePath)); } } @@ -9007,7 +13154,7 @@ export const NotificationsApiAxiosParamCreator = function (configuration?: Confi /** * Accept a friend request by notification `frq_` ID. Friend requests can be found using the NotificationsAPI `getNotifications` by filtering of type `friendRequest`. * @summary Accept Friend Request - * @param {string} notificationId + * @param {string} notificationId Must be a valid notification ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -9079,7 +13226,7 @@ export const NotificationsApiAxiosParamCreator = function (configuration?: Confi /** * Delete a notification. * @summary Delete Notification - * @param {string} notificationId + * @param {string} notificationId Must be a valid notification ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -9181,7 +13328,7 @@ export const NotificationsApiAxiosParamCreator = function (configuration?: Confi /** * Mark a notification as seen. * @summary Mark Notification As Read - * @param {string} notificationId + * @param {string} notificationId Must be a valid notification ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -9229,7 +13376,7 @@ export const NotificationsApiFp = function(configuration?: Configuration) { /** * Accept a friend request by notification `frq_` ID. Friend requests can be found using the NotificationsAPI `getNotifications` by filtering of type `friendRequest`. * @summary Accept Friend Request - * @param {string} notificationId + * @param {string} notificationId Must be a valid notification ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -9250,7 +13397,7 @@ export const NotificationsApiFp = function(configuration?: Configuration) { /** * Delete a notification. * @summary Delete Notification - * @param {string} notificationId + * @param {string} notificationId Must be a valid notification ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -9277,7 +13424,7 @@ export const NotificationsApiFp = function(configuration?: Configuration) { /** * Mark a notification as seen. * @summary Mark Notification As Read - * @param {string} notificationId + * @param {string} notificationId Must be a valid notification ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -9298,7 +13445,7 @@ export const NotificationsApiFactory = function (configuration?: Configuration, /** * Accept a friend request by notification `frq_` ID. Friend requests can be found using the NotificationsAPI `getNotifications` by filtering of type `friendRequest`. * @summary Accept Friend Request - * @param {string} notificationId + * @param {string} notificationId Must be a valid notification ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -9317,7 +13464,7 @@ export const NotificationsApiFactory = function (configuration?: Configuration, /** * Delete a notification. * @summary Delete Notification - * @param {string} notificationId + * @param {string} notificationId Must be a valid notification ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -9342,7 +13489,7 @@ export const NotificationsApiFactory = function (configuration?: Configuration, /** * Mark a notification as seen. * @summary Mark Notification As Read - * @param {string} notificationId + * @param {string} notificationId Must be a valid notification ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -9362,7 +13509,7 @@ export class NotificationsApi extends BaseAPI { /** * Accept a friend request by notification `frq_` ID. Friend requests can be found using the NotificationsAPI `getNotifications` by filtering of type `friendRequest`. * @summary Accept Friend Request - * @param {string} notificationId + * @param {string} notificationId Must be a valid notification ID. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof NotificationsApi @@ -9385,7 +13532,7 @@ export class NotificationsApi extends BaseAPI { /** * Delete a notification. * @summary Delete Notification - * @param {string} notificationId + * @param {string} notificationId Must be a valid notification ID. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof NotificationsApi @@ -9414,7 +13561,7 @@ export class NotificationsApi extends BaseAPI { /** * Mark a notification as seen. * @summary Mark Notification As Read - * @param {string} notificationId + * @param {string} notificationId Must be a valid notification ID. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof NotificationsApi @@ -9468,7 +13615,7 @@ export const PermissionsApiAxiosParamCreator = function (configuration?: Configu /** * Returns a single permission. This endpoint is pretty useless, as it returns the exact same information as `/auth/permissions`. * @summary Get Permission - * @param {string} permissionId + * @param {string} permissionId Must be a valid permission ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -9526,7 +13673,7 @@ export const PermissionsApiFp = function(configuration?: Configuration) { /** * Returns a single permission. This endpoint is pretty useless, as it returns the exact same information as `/auth/permissions`. * @summary Get Permission - * @param {string} permissionId + * @param {string} permissionId Must be a valid permission ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -9556,7 +13703,7 @@ export const PermissionsApiFactory = function (configuration?: Configuration, ba /** * Returns a single permission. This endpoint is pretty useless, as it returns the exact same information as `/auth/permissions`. * @summary Get Permission - * @param {string} permissionId + * @param {string} permissionId Must be a valid permission ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -9587,7 +13734,7 @@ export class PermissionsApi extends BaseAPI { /** * Returns a single permission. This endpoint is pretty useless, as it returns the exact same information as `/auth/permissions`. * @summary Get Permission - * @param {string} permissionId + * @param {string} permissionId Must be a valid permission ID. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof PermissionsApi @@ -9641,7 +13788,7 @@ export const PlayermoderationApiAxiosParamCreator = function (configuration?: Co /** * Deletes a specific player moderation based on it\'s `pmod_` ID. The website uses `unmoderateUser` instead. You can delete the same player moderation multiple times successfully. * @summary Delete Player Moderation - * @param {string} playerModerationId + * @param {string} playerModerationId Must be a valid `pmod_` ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -9679,7 +13826,7 @@ export const PlayermoderationApiAxiosParamCreator = function (configuration?: Co /** * Returns a single Player Moderation. This returns the exact same amount of information as the more generalised `getPlayerModerations`. * @summary Get Player Moderation - * @param {string} playerModerationId + * @param {string} playerModerationId Must be a valid `pmod_` ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -9857,7 +14004,7 @@ export const PlayermoderationApiFp = function(configuration?: Configuration) { /** * Deletes a specific player moderation based on it\'s `pmod_` ID. The website uses `unmoderateUser` instead. You can delete the same player moderation multiple times successfully. * @summary Delete Player Moderation - * @param {string} playerModerationId + * @param {string} playerModerationId Must be a valid `pmod_` ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -9868,7 +14015,7 @@ export const PlayermoderationApiFp = function(configuration?: Configuration) { /** * Returns a single Player Moderation. This returns the exact same amount of information as the more generalised `getPlayerModerations`. * @summary Get Player Moderation - * @param {string} playerModerationId + * @param {string} playerModerationId Must be a valid `pmod_` ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -9932,7 +14079,7 @@ export const PlayermoderationApiFactory = function (configuration?: Configuratio /** * Deletes a specific player moderation based on it\'s `pmod_` ID. The website uses `unmoderateUser` instead. You can delete the same player moderation multiple times successfully. * @summary Delete Player Moderation - * @param {string} playerModerationId + * @param {string} playerModerationId Must be a valid `pmod_` ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -9942,7 +14089,7 @@ export const PlayermoderationApiFactory = function (configuration?: Configuratio /** * Returns a single Player Moderation. This returns the exact same amount of information as the more generalised `getPlayerModerations`. * @summary Get Player Moderation - * @param {string} playerModerationId + * @param {string} playerModerationId Must be a valid `pmod_` ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -10004,7 +14151,7 @@ export class PlayermoderationApi extends BaseAPI { /** * Deletes a specific player moderation based on it\'s `pmod_` ID. The website uses `unmoderateUser` instead. You can delete the same player moderation multiple times successfully. * @summary Delete Player Moderation - * @param {string} playerModerationId + * @param {string} playerModerationId Must be a valid `pmod_` ID. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof PlayermoderationApi @@ -10016,7 +14163,7 @@ export class PlayermoderationApi extends BaseAPI { /** * Returns a single Player Moderation. This returns the exact same amount of information as the more generalised `getPlayerModerations`. * @summary Get Player Moderation - * @param {string} playerModerationId + * @param {string} playerModerationId Must be a valid `pmod_` ID. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof PlayermoderationApi @@ -10583,7 +14730,7 @@ export const UsersApiAxiosParamCreator = function (configuration?: Configuration /** * Get public user information about a specific user using their ID. * @summary Get User by ID - * @param {string} userId + * @param {string} userId Must be a valid user ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -10621,7 +14768,7 @@ export const UsersApiAxiosParamCreator = function (configuration?: Configuration /** * ~~Get public user information about a specific user using their name.~~ **DEPRECATED:** VRChat API no longer return usernames of other users. [See issue by Tupper for more information](https://github.com/pypy-vrc/VRCX/issues/429). This endpoint now require Admin Credentials. * @summary Get User by Username - * @param {string} username + * @param {string} username Username of the user * @param {*} [options] Override http request option. * @deprecated * @throws {RequiredError} @@ -10648,6 +14795,82 @@ export const UsersApiAxiosParamCreator = function (configuration?: Configuration + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Returns a list of Groups the user has requested to be invited into. + * @summary Get User Group Requests + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getUserGroupRequests: async (userId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'userId' is not null or undefined + assertParamExists('getUserGroupRequests', 'userId', userId) + const localVarPath = `/users/{userId}/groups/requested` + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get user\'s public groups + * @summary Get User Groups + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getUserGroups: async (userId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'userId' is not null or undefined + assertParamExists('getUserGroups', 'userId', userId) + const localVarPath = `/users/{userId}/groups` + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication apiKeyCookie required + + // authentication authCookie required + + + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -10714,7 +14937,7 @@ export const UsersApiAxiosParamCreator = function (configuration?: Configuration /** * Update a users information such as the email and birthday. * @summary Update User Info - * @param {string} userId + * @param {string} userId Must be a valid user ID. * @param {UpdateUserRequest} [updateUserRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -10766,7 +14989,7 @@ export const UsersApiFp = function(configuration?: Configuration) { /** * Get public user information about a specific user using their ID. * @summary Get User by ID - * @param {string} userId + * @param {string} userId Must be a valid user ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -10777,7 +15000,7 @@ export const UsersApiFp = function(configuration?: Configuration) { /** * ~~Get public user information about a specific user using their name.~~ **DEPRECATED:** VRChat API no longer return usernames of other users. [See issue by Tupper for more information](https://github.com/pypy-vrc/VRCX/issues/429). This endpoint now require Admin Credentials. * @summary Get User by Username - * @param {string} username + * @param {string} username Username of the user * @param {*} [options] Override http request option. * @deprecated * @throws {RequiredError} @@ -10786,6 +15009,28 @@ export const UsersApiFp = function(configuration?: Configuration) { const localVarAxiosArgs = await localVarAxiosParamCreator.getUserByName(username, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, + /** + * Returns a list of Groups the user has requested to be invited into. + * @summary Get User Group Requests + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getUserGroupRequests(userId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getUserGroupRequests(userId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Get user\'s public groups + * @summary Get User Groups + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getUserGroups(userId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getUserGroups(userId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** * Search and list any users by text query * @summary Search All Users @@ -10803,7 +15048,7 @@ export const UsersApiFp = function(configuration?: Configuration) { /** * Update a users information such as the email and birthday. * @summary Update User Info - * @param {string} userId + * @param {string} userId Must be a valid user ID. * @param {UpdateUserRequest} [updateUserRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -10825,7 +15070,7 @@ export const UsersApiFactory = function (configuration?: Configuration, basePath /** * Get public user information about a specific user using their ID. * @summary Get User by ID - * @param {string} userId + * @param {string} userId Must be a valid user ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -10835,7 +15080,7 @@ export const UsersApiFactory = function (configuration?: Configuration, basePath /** * ~~Get public user information about a specific user using their name.~~ **DEPRECATED:** VRChat API no longer return usernames of other users. [See issue by Tupper for more information](https://github.com/pypy-vrc/VRCX/issues/429). This endpoint now require Admin Credentials. * @summary Get User by Username - * @param {string} username + * @param {string} username Username of the user * @param {*} [options] Override http request option. * @deprecated * @throws {RequiredError} @@ -10843,6 +15088,26 @@ export const UsersApiFactory = function (configuration?: Configuration, basePath getUserByName(username: string, options?: any): AxiosPromise { return localVarFp.getUserByName(username, options).then((request) => request(axios, basePath)); }, + /** + * Returns a list of Groups the user has requested to be invited into. + * @summary Get User Group Requests + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getUserGroupRequests(userId: string, options?: any): AxiosPromise> { + return localVarFp.getUserGroupRequests(userId, options).then((request) => request(axios, basePath)); + }, + /** + * Get user\'s public groups + * @summary Get User Groups + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getUserGroups(userId: string, options?: any): AxiosPromise> { + return localVarFp.getUserGroups(userId, options).then((request) => request(axios, basePath)); + }, /** * Search and list any users by text query * @summary Search All Users @@ -10859,7 +15124,7 @@ export const UsersApiFactory = function (configuration?: Configuration, basePath /** * Update a users information such as the email and birthday. * @summary Update User Info - * @param {string} userId + * @param {string} userId Must be a valid user ID. * @param {UpdateUserRequest} [updateUserRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -10880,7 +15145,7 @@ export class UsersApi extends BaseAPI { /** * Get public user information about a specific user using their ID. * @summary Get User by ID - * @param {string} userId + * @param {string} userId Must be a valid user ID. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof UsersApi @@ -10892,7 +15157,7 @@ export class UsersApi extends BaseAPI { /** * ~~Get public user information about a specific user using their name.~~ **DEPRECATED:** VRChat API no longer return usernames of other users. [See issue by Tupper for more information](https://github.com/pypy-vrc/VRCX/issues/429). This endpoint now require Admin Credentials. * @summary Get User by Username - * @param {string} username + * @param {string} username Username of the user * @param {*} [options] Override http request option. * @deprecated * @throws {RequiredError} @@ -10902,6 +15167,30 @@ export class UsersApi extends BaseAPI { return UsersApiFp(this.configuration).getUserByName(username, options).then((request) => request(this.axios, this.basePath)); } + /** + * Returns a list of Groups the user has requested to be invited into. + * @summary Get User Group Requests + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof UsersApi + */ + public getUserGroupRequests(userId: string, options?: AxiosRequestConfig) { + return UsersApiFp(this.configuration).getUserGroupRequests(userId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Get user\'s public groups + * @summary Get User Groups + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof UsersApi + */ + public getUserGroups(userId: string, options?: AxiosRequestConfig) { + return UsersApiFp(this.configuration).getUserGroups(userId, options).then((request) => request(this.axios, this.basePath)); + } + /** * Search and list any users by text query * @summary Search All Users @@ -10920,7 +15209,7 @@ export class UsersApi extends BaseAPI { /** * Update a users information such as the email and birthday. * @summary Update User Info - * @param {string} userId + * @param {string} userId Must be a valid user ID. * @param {UpdateUserRequest} [updateUserRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -10975,7 +15264,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio /** * Delete a world. Notice a world is never fully \"deleted\", only its ReleaseStatus is set to \"hidden\" and the linked Files are deleted. The WorldID is permanently reserved. * @summary Delete World - * @param {string} worldId + * @param {string} worldId Must be a valid world ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -11014,21 +15303,21 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio * Search and list currently Active worlds by query filters. * @summary List Active Worlds * @param {boolean} [featured] Filters on featured results. - * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] + * @param {SortOption} [sort] The sort order of the results. * @param {number} [n] The number of objects to return. - * @param {'ascending' | 'descending'} [order] + * @param {OrderOption} [order] Result ordering * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {string} [search] Filters by world name. * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. + * @param {ReleaseStatus} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. * @param {string} [platform] The platform the asset supports. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getActiveWorlds: async (featured?: boolean, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options: AxiosRequestConfig = {}): Promise => { + getActiveWorlds: async (featured?: boolean, sort?: SortOption, n?: number, order?: OrderOption, offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: ReleaseStatus, maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/worlds/active`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -11108,14 +15397,14 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio * Search and list favorited worlds by query filters. * @summary List Favorited Worlds * @param {boolean} [featured] Filters on featured results. - * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] + * @param {SortOption} [sort] The sort order of the results. * @param {number} [n] The number of objects to return. - * @param {'ascending' | 'descending'} [order] + * @param {OrderOption} [order] Result ordering * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {string} [search] Filters by world name. * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. + * @param {ReleaseStatus} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. * @param {string} [platform] The platform the asset supports. @@ -11123,7 +15412,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFavoritedWorlds: async (featured?: boolean, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options: AxiosRequestConfig = {}): Promise => { + getFavoritedWorlds: async (featured?: boolean, sort?: SortOption, n?: number, order?: OrderOption, offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: ReleaseStatus, maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/worlds/favorites`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -11207,14 +15496,14 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio * Search and list recently visited worlds by query filters. * @summary List Recent Worlds * @param {boolean} [featured] Filters on featured results. - * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] + * @param {SortOption} [sort] The sort order of the results. * @param {number} [n] The number of objects to return. - * @param {'ascending' | 'descending'} [order] + * @param {OrderOption} [order] Result ordering * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {string} [search] Filters by world name. * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. + * @param {ReleaseStatus} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. * @param {string} [platform] The platform the asset supports. @@ -11222,7 +15511,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getRecentWorlds: async (featured?: boolean, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options: AxiosRequestConfig = {}): Promise => { + getRecentWorlds: async (featured?: boolean, sort?: SortOption, n?: number, order?: OrderOption, offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: ReleaseStatus, maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/worlds/recent`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -11305,7 +15594,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio /** * Get information about a specific World. Works unauthenticated but when so will always return `0` for certain fields. * @summary Get World by ID - * @param {string} worldId + * @param {string} worldId Must be a valid world ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -11341,8 +15630,8 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio /** * Returns a worlds instance. * @summary Get World Instance - * @param {string} worldId - * @param {string} instanceId + * @param {string} worldId Must be a valid world ID. + * @param {string} instanceId Must be a valid instance ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -11383,7 +15672,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio /** * Return a worlds custom metadata. This is currently believed to be unused. Metadata can be set with `updateWorld` and can be any arbitrary object. * @summary Get World Metadata - * @param {string} worldId + * @param {string} worldId Must be a valid world ID. * @param {*} [options] Override http request option. * @deprecated * @throws {RequiredError} @@ -11422,7 +15711,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio /** * Returns a worlds publish status. * @summary Get World Publish Status - * @param {string} worldId + * @param {string} worldId Must be a valid world ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -11460,7 +15749,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio /** * Publish a world. You can only publish one world per week. * @summary Publish World - * @param {string} worldId + * @param {string} worldId Must be a valid world ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -11499,23 +15788,23 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio * Search and list any worlds by query filters. * @summary Search All Worlds * @param {boolean} [featured] Filters on featured results. - * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] + * @param {SortOption} [sort] The sort order of the results. * @param {'me'} [user] Set to `me` for searching own worlds. * @param {string} [userId] Filter by UserID. * @param {number} [n] The number of objects to return. - * @param {'ascending' | 'descending'} [order] + * @param {OrderOption} [order] Result ordering * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {string} [search] Filters by world name. * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. + * @param {ReleaseStatus} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. * @param {string} [platform] The platform the asset supports. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - searchWorlds: async (featured?: boolean, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options: AxiosRequestConfig = {}): Promise => { + searchWorlds: async (featured?: boolean, sort?: SortOption, user?: 'me', userId?: string, n?: number, order?: OrderOption, offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: ReleaseStatus, maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/worlds`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -11602,7 +15891,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio /** * Unpublish a world. * @summary Unpublish World - * @param {string} worldId + * @param {string} worldId Must be a valid world ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -11640,7 +15929,7 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio /** * Update information about a specific World. * @summary Update World - * @param {string} worldId + * @param {string} worldId Must be a valid world ID. * @param {UpdateWorldRequest} [updateWorldRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -11703,7 +15992,7 @@ export const WorldsApiFp = function(configuration?: Configuration) { /** * Delete a world. Notice a world is never fully \"deleted\", only its ReleaseStatus is set to \"hidden\" and the linked Files are deleted. The WorldID is permanently reserved. * @summary Delete World - * @param {string} worldId + * @param {string} worldId Must be a valid world ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -11715,21 +16004,21 @@ export const WorldsApiFp = function(configuration?: Configuration) { * Search and list currently Active worlds by query filters. * @summary List Active Worlds * @param {boolean} [featured] Filters on featured results. - * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] + * @param {SortOption} [sort] The sort order of the results. * @param {number} [n] The number of objects to return. - * @param {'ascending' | 'descending'} [order] + * @param {OrderOption} [order] Result ordering * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {string} [search] Filters by world name. * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. + * @param {ReleaseStatus} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. * @param {string} [platform] The platform the asset supports. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getActiveWorlds(featured?: boolean, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + async getActiveWorlds(featured?: boolean, sort?: SortOption, n?: number, order?: OrderOption, offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: ReleaseStatus, maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.getActiveWorlds(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -11737,14 +16026,14 @@ export const WorldsApiFp = function(configuration?: Configuration) { * Search and list favorited worlds by query filters. * @summary List Favorited Worlds * @param {boolean} [featured] Filters on featured results. - * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] + * @param {SortOption} [sort] The sort order of the results. * @param {number} [n] The number of objects to return. - * @param {'ascending' | 'descending'} [order] + * @param {OrderOption} [order] Result ordering * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {string} [search] Filters by world name. * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. + * @param {ReleaseStatus} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. * @param {string} [platform] The platform the asset supports. @@ -11752,7 +16041,7 @@ export const WorldsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getFavoritedWorlds(featured?: boolean, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + async getFavoritedWorlds(featured?: boolean, sort?: SortOption, n?: number, order?: OrderOption, offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: ReleaseStatus, maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.getFavoritedWorlds(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -11760,14 +16049,14 @@ export const WorldsApiFp = function(configuration?: Configuration) { * Search and list recently visited worlds by query filters. * @summary List Recent Worlds * @param {boolean} [featured] Filters on featured results. - * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] + * @param {SortOption} [sort] The sort order of the results. * @param {number} [n] The number of objects to return. - * @param {'ascending' | 'descending'} [order] + * @param {OrderOption} [order] Result ordering * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {string} [search] Filters by world name. * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. + * @param {ReleaseStatus} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. * @param {string} [platform] The platform the asset supports. @@ -11775,14 +16064,14 @@ export const WorldsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getRecentWorlds(featured?: boolean, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + async getRecentWorlds(featured?: boolean, sort?: SortOption, n?: number, order?: OrderOption, offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: ReleaseStatus, maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.getRecentWorlds(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * Get information about a specific World. Works unauthenticated but when so will always return `0` for certain fields. * @summary Get World by ID - * @param {string} worldId + * @param {string} worldId Must be a valid world ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -11793,8 +16082,8 @@ export const WorldsApiFp = function(configuration?: Configuration) { /** * Returns a worlds instance. * @summary Get World Instance - * @param {string} worldId - * @param {string} instanceId + * @param {string} worldId Must be a valid world ID. + * @param {string} instanceId Must be a valid instance ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -11805,7 +16094,7 @@ export const WorldsApiFp = function(configuration?: Configuration) { /** * Return a worlds custom metadata. This is currently believed to be unused. Metadata can be set with `updateWorld` and can be any arbitrary object. * @summary Get World Metadata - * @param {string} worldId + * @param {string} worldId Must be a valid world ID. * @param {*} [options] Override http request option. * @deprecated * @throws {RequiredError} @@ -11817,7 +16106,7 @@ export const WorldsApiFp = function(configuration?: Configuration) { /** * Returns a worlds publish status. * @summary Get World Publish Status - * @param {string} worldId + * @param {string} worldId Must be a valid world ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -11828,7 +16117,7 @@ export const WorldsApiFp = function(configuration?: Configuration) { /** * Publish a world. You can only publish one world per week. * @summary Publish World - * @param {string} worldId + * @param {string} worldId Must be a valid world ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -11840,30 +16129,30 @@ export const WorldsApiFp = function(configuration?: Configuration) { * Search and list any worlds by query filters. * @summary Search All Worlds * @param {boolean} [featured] Filters on featured results. - * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] + * @param {SortOption} [sort] The sort order of the results. * @param {'me'} [user] Set to `me` for searching own worlds. * @param {string} [userId] Filter by UserID. * @param {number} [n] The number of objects to return. - * @param {'ascending' | 'descending'} [order] + * @param {OrderOption} [order] Result ordering * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {string} [search] Filters by world name. * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. + * @param {ReleaseStatus} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. * @param {string} [platform] The platform the asset supports. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async searchWorlds(featured?: boolean, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + async searchWorlds(featured?: boolean, sort?: SortOption, user?: 'me', userId?: string, n?: number, order?: OrderOption, offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: ReleaseStatus, maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.searchWorlds(featured, sort, user, userId, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * Unpublish a world. * @summary Unpublish World - * @param {string} worldId + * @param {string} worldId Must be a valid world ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -11874,7 +16163,7 @@ export const WorldsApiFp = function(configuration?: Configuration) { /** * Update information about a specific World. * @summary Update World - * @param {string} worldId + * @param {string} worldId Must be a valid world ID. * @param {UpdateWorldRequest} [updateWorldRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -11906,7 +16195,7 @@ export const WorldsApiFactory = function (configuration?: Configuration, basePat /** * Delete a world. Notice a world is never fully \"deleted\", only its ReleaseStatus is set to \"hidden\" and the linked Files are deleted. The WorldID is permanently reserved. * @summary Delete World - * @param {string} worldId + * @param {string} worldId Must be a valid world ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -11917,35 +16206,35 @@ export const WorldsApiFactory = function (configuration?: Configuration, basePat * Search and list currently Active worlds by query filters. * @summary List Active Worlds * @param {boolean} [featured] Filters on featured results. - * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] + * @param {SortOption} [sort] The sort order of the results. * @param {number} [n] The number of objects to return. - * @param {'ascending' | 'descending'} [order] + * @param {OrderOption} [order] Result ordering * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {string} [search] Filters by world name. * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. + * @param {ReleaseStatus} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. * @param {string} [platform] The platform the asset supports. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getActiveWorlds(featured?: boolean, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: any): AxiosPromise> { + getActiveWorlds(featured?: boolean, sort?: SortOption, n?: number, order?: OrderOption, offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: ReleaseStatus, maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: any): AxiosPromise> { return localVarFp.getActiveWorlds(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options).then((request) => request(axios, basePath)); }, /** * Search and list favorited worlds by query filters. * @summary List Favorited Worlds * @param {boolean} [featured] Filters on featured results. - * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] + * @param {SortOption} [sort] The sort order of the results. * @param {number} [n] The number of objects to return. - * @param {'ascending' | 'descending'} [order] + * @param {OrderOption} [order] Result ordering * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {string} [search] Filters by world name. * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. + * @param {ReleaseStatus} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. * @param {string} [platform] The platform the asset supports. @@ -11953,21 +16242,21 @@ export const WorldsApiFactory = function (configuration?: Configuration, basePat * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFavoritedWorlds(featured?: boolean, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any): AxiosPromise> { + getFavoritedWorlds(featured?: boolean, sort?: SortOption, n?: number, order?: OrderOption, offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: ReleaseStatus, maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any): AxiosPromise> { return localVarFp.getFavoritedWorlds(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options).then((request) => request(axios, basePath)); }, /** * Search and list recently visited worlds by query filters. * @summary List Recent Worlds * @param {boolean} [featured] Filters on featured results. - * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] + * @param {SortOption} [sort] The sort order of the results. * @param {number} [n] The number of objects to return. - * @param {'ascending' | 'descending'} [order] + * @param {OrderOption} [order] Result ordering * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {string} [search] Filters by world name. * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. + * @param {ReleaseStatus} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. * @param {string} [platform] The platform the asset supports. @@ -11975,13 +16264,13 @@ export const WorldsApiFactory = function (configuration?: Configuration, basePat * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getRecentWorlds(featured?: boolean, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any): AxiosPromise> { + getRecentWorlds(featured?: boolean, sort?: SortOption, n?: number, order?: OrderOption, offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: ReleaseStatus, maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any): AxiosPromise> { return localVarFp.getRecentWorlds(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options).then((request) => request(axios, basePath)); }, /** * Get information about a specific World. Works unauthenticated but when so will always return `0` for certain fields. * @summary Get World by ID - * @param {string} worldId + * @param {string} worldId Must be a valid world ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -11991,8 +16280,8 @@ export const WorldsApiFactory = function (configuration?: Configuration, basePat /** * Returns a worlds instance. * @summary Get World Instance - * @param {string} worldId - * @param {string} instanceId + * @param {string} worldId Must be a valid world ID. + * @param {string} instanceId Must be a valid instance ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -12002,7 +16291,7 @@ export const WorldsApiFactory = function (configuration?: Configuration, basePat /** * Return a worlds custom metadata. This is currently believed to be unused. Metadata can be set with `updateWorld` and can be any arbitrary object. * @summary Get World Metadata - * @param {string} worldId + * @param {string} worldId Must be a valid world ID. * @param {*} [options] Override http request option. * @deprecated * @throws {RequiredError} @@ -12013,7 +16302,7 @@ export const WorldsApiFactory = function (configuration?: Configuration, basePat /** * Returns a worlds publish status. * @summary Get World Publish Status - * @param {string} worldId + * @param {string} worldId Must be a valid world ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -12023,7 +16312,7 @@ export const WorldsApiFactory = function (configuration?: Configuration, basePat /** * Publish a world. You can only publish one world per week. * @summary Publish World - * @param {string} worldId + * @param {string} worldId Must be a valid world ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -12034,29 +16323,29 @@ export const WorldsApiFactory = function (configuration?: Configuration, basePat * Search and list any worlds by query filters. * @summary Search All Worlds * @param {boolean} [featured] Filters on featured results. - * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] + * @param {SortOption} [sort] The sort order of the results. * @param {'me'} [user] Set to `me` for searching own worlds. * @param {string} [userId] Filter by UserID. * @param {number} [n] The number of objects to return. - * @param {'ascending' | 'descending'} [order] + * @param {OrderOption} [order] Result ordering * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {string} [search] Filters by world name. * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. + * @param {ReleaseStatus} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. * @param {string} [platform] The platform the asset supports. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - searchWorlds(featured?: boolean, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: any): AxiosPromise> { + searchWorlds(featured?: boolean, sort?: SortOption, user?: 'me', userId?: string, n?: number, order?: OrderOption, offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: ReleaseStatus, maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: any): AxiosPromise> { return localVarFp.searchWorlds(featured, sort, user, userId, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options).then((request) => request(axios, basePath)); }, /** * Unpublish a world. * @summary Unpublish World - * @param {string} worldId + * @param {string} worldId Must be a valid world ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -12066,7 +16355,7 @@ export const WorldsApiFactory = function (configuration?: Configuration, basePat /** * Update information about a specific World. * @summary Update World - * @param {string} worldId + * @param {string} worldId Must be a valid world ID. * @param {UpdateWorldRequest} [updateWorldRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -12099,7 +16388,7 @@ export class WorldsApi extends BaseAPI { /** * Delete a world. Notice a world is never fully \"deleted\", only its ReleaseStatus is set to \"hidden\" and the linked Files are deleted. The WorldID is permanently reserved. * @summary Delete World - * @param {string} worldId + * @param {string} worldId Must be a valid world ID. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof WorldsApi @@ -12112,14 +16401,14 @@ export class WorldsApi extends BaseAPI { * Search and list currently Active worlds by query filters. * @summary List Active Worlds * @param {boolean} [featured] Filters on featured results. - * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] + * @param {SortOption} [sort] The sort order of the results. * @param {number} [n] The number of objects to return. - * @param {'ascending' | 'descending'} [order] + * @param {OrderOption} [order] Result ordering * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {string} [search] Filters by world name. * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. + * @param {ReleaseStatus} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. * @param {string} [platform] The platform the asset supports. @@ -12127,7 +16416,7 @@ export class WorldsApi extends BaseAPI { * @throws {RequiredError} * @memberof WorldsApi */ - public getActiveWorlds(featured?: boolean, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: AxiosRequestConfig) { + public getActiveWorlds(featured?: boolean, sort?: SortOption, n?: number, order?: OrderOption, offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: ReleaseStatus, maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: AxiosRequestConfig) { return WorldsApiFp(this.configuration).getActiveWorlds(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options).then((request) => request(this.axios, this.basePath)); } @@ -12135,14 +16424,14 @@ export class WorldsApi extends BaseAPI { * Search and list favorited worlds by query filters. * @summary List Favorited Worlds * @param {boolean} [featured] Filters on featured results. - * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] + * @param {SortOption} [sort] The sort order of the results. * @param {number} [n] The number of objects to return. - * @param {'ascending' | 'descending'} [order] + * @param {OrderOption} [order] Result ordering * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {string} [search] Filters by world name. * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. + * @param {ReleaseStatus} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. * @param {string} [platform] The platform the asset supports. @@ -12151,7 +16440,7 @@ export class WorldsApi extends BaseAPI { * @throws {RequiredError} * @memberof WorldsApi */ - public getFavoritedWorlds(featured?: boolean, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: AxiosRequestConfig) { + public getFavoritedWorlds(featured?: boolean, sort?: SortOption, n?: number, order?: OrderOption, offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: ReleaseStatus, maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: AxiosRequestConfig) { return WorldsApiFp(this.configuration).getFavoritedWorlds(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options).then((request) => request(this.axios, this.basePath)); } @@ -12159,14 +16448,14 @@ export class WorldsApi extends BaseAPI { * Search and list recently visited worlds by query filters. * @summary List Recent Worlds * @param {boolean} [featured] Filters on featured results. - * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] + * @param {SortOption} [sort] The sort order of the results. * @param {number} [n] The number of objects to return. - * @param {'ascending' | 'descending'} [order] + * @param {OrderOption} [order] Result ordering * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {string} [search] Filters by world name. * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. + * @param {ReleaseStatus} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. * @param {string} [platform] The platform the asset supports. @@ -12175,14 +16464,14 @@ export class WorldsApi extends BaseAPI { * @throws {RequiredError} * @memberof WorldsApi */ - public getRecentWorlds(featured?: boolean, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: AxiosRequestConfig) { + public getRecentWorlds(featured?: boolean, sort?: SortOption, n?: number, order?: OrderOption, offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: ReleaseStatus, maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: AxiosRequestConfig) { return WorldsApiFp(this.configuration).getRecentWorlds(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options).then((request) => request(this.axios, this.basePath)); } /** * Get information about a specific World. Works unauthenticated but when so will always return `0` for certain fields. * @summary Get World by ID - * @param {string} worldId + * @param {string} worldId Must be a valid world ID. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof WorldsApi @@ -12194,8 +16483,8 @@ export class WorldsApi extends BaseAPI { /** * Returns a worlds instance. * @summary Get World Instance - * @param {string} worldId - * @param {string} instanceId + * @param {string} worldId Must be a valid world ID. + * @param {string} instanceId Must be a valid instance ID. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof WorldsApi @@ -12207,7 +16496,7 @@ export class WorldsApi extends BaseAPI { /** * Return a worlds custom metadata. This is currently believed to be unused. Metadata can be set with `updateWorld` and can be any arbitrary object. * @summary Get World Metadata - * @param {string} worldId + * @param {string} worldId Must be a valid world ID. * @param {*} [options] Override http request option. * @deprecated * @throws {RequiredError} @@ -12220,7 +16509,7 @@ export class WorldsApi extends BaseAPI { /** * Returns a worlds publish status. * @summary Get World Publish Status - * @param {string} worldId + * @param {string} worldId Must be a valid world ID. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof WorldsApi @@ -12232,7 +16521,7 @@ export class WorldsApi extends BaseAPI { /** * Publish a world. You can only publish one world per week. * @summary Publish World - * @param {string} worldId + * @param {string} worldId Must be a valid world ID. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof WorldsApi @@ -12245,16 +16534,16 @@ export class WorldsApi extends BaseAPI { * Search and list any worlds by query filters. * @summary Search All Worlds * @param {boolean} [featured] Filters on featured results. - * @param {'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name'} [sort] + * @param {SortOption} [sort] The sort order of the results. * @param {'me'} [user] Set to `me` for searching own worlds. * @param {string} [userId] Filter by UserID. * @param {number} [n] The number of objects to return. - * @param {'ascending' | 'descending'} [order] + * @param {OrderOption} [order] Result ordering * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {string} [search] Filters by world name. * @param {string} [tag] Tags to include (comma-separated). Any of the tags needs to be present. * @param {string} [notag] Tags to exclude (comma-separated). - * @param {'public' | 'private' | 'hidden' | 'all'} [releaseStatus] Filter by ReleaseStatus. + * @param {ReleaseStatus} [releaseStatus] Filter by ReleaseStatus. * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. * @param {string} [platform] The platform the asset supports. @@ -12262,14 +16551,14 @@ export class WorldsApi extends BaseAPI { * @throws {RequiredError} * @memberof WorldsApi */ - public searchWorlds(featured?: boolean, sort?: 'popularity' | 'heat' | 'trust' | 'shuffle' | 'random' | 'favorites' | 'reportScore' | 'reportCount' | 'publicationDate' | 'labsPublicationDate' | 'created' | '_created_at' | 'updated' | '_updated_at' | 'order' | 'relevance' | 'magic' | 'name', user?: 'me', userId?: string, n?: number, order?: 'ascending' | 'descending', offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: 'public' | 'private' | 'hidden' | 'all', maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: AxiosRequestConfig) { + public searchWorlds(featured?: boolean, sort?: SortOption, user?: 'me', userId?: string, n?: number, order?: OrderOption, offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: ReleaseStatus, maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: AxiosRequestConfig) { return WorldsApiFp(this.configuration).searchWorlds(featured, sort, user, userId, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options).then((request) => request(this.axios, this.basePath)); } /** * Unpublish a world. * @summary Unpublish World - * @param {string} worldId + * @param {string} worldId Must be a valid world ID. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof WorldsApi @@ -12281,7 +16570,7 @@ export class WorldsApi extends BaseAPI { /** * Update information about a specific World. * @summary Update World - * @param {string} worldId + * @param {string} worldId Must be a valid world ID. * @param {UpdateWorldRequest} [updateWorldRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} diff --git a/common.ts b/common.ts index 4bad3da..5815fb1 100644 --- a/common.ts +++ b/common.ts @@ -82,34 +82,24 @@ export const setOAuthToObject = async function (object: any, name: string, scope } } -function setFlattenedQueryParams(urlSearchParams: URLSearchParams, parameter: any, key: string = ""): void { - if (typeof parameter === "object") { - if (Array.isArray(parameter)) { - (parameter as any[]).forEach(item => setFlattenedQueryParams(urlSearchParams, item, key)); - } - else { - Object.keys(parameter).forEach(currentKey => - setFlattenedQueryParams(urlSearchParams, parameter[currentKey], `${key}${key !== '' ? '.' : ''}${currentKey}`) - ); - } - } - else { - if (urlSearchParams.has(key)) { - urlSearchParams.append(key, parameter); - } - else { - urlSearchParams.set(key, parameter); - } - } -} - /** * * @export */ export const setSearchParams = function (url: URL, ...objects: any[]) { const searchParams = new URLSearchParams(url.search); - setFlattenedQueryParams(searchParams, objects); + for (const object of objects) { + for (const key in object) { + if (Array.isArray(object[key])) { + searchParams.delete(key); + for (const item of object[key]) { + searchParams.append(key, item); + } + } else { + searchParams.set(key, object[key]); + } + } + } url.search = searchParams.toString(); } diff --git a/openapitools.json b/openapitools.json index f5f966a..3b40e47 100644 --- a/openapitools.json +++ b/openapitools.json @@ -2,6 +2,6 @@ "$schema": "node_modules/@openapitools/openapi-generator-cli/config.schema.json", "spaces": 2, "generator-cli": { - "version": "6.2.1" + "version": "5.3.0" } } diff --git a/package-lock.json b/package-lock.json index 55690a5..08ec5cd 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10,13 +10,13 @@ "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", - "axios": "^0.26.1", + "axios": "^0.21.4", "axios-cookiejar-support": "^1.0.1", "tough-cookie": "^4.0.0" }, "devDependencies": { "@types/node": "^12.11.5", - "typescript": "^4.0" + "typescript": "^3.6.4" } }, "node_modules/@types/node": { @@ -31,11 +31,11 @@ "integrity": "sha512-Y0K95ThC3esLEYD6ZuqNek29lNX2EM1qxV8y2FTLUB0ff5wWrk7az+mLrnNFUnaXcgKye22+sFBRXOgpPILZNg==" }, "node_modules/axios": { - "version": "0.26.1", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.26.1.tgz", - "integrity": "sha512-fPwcX4EvnSHuInCMItEhAGnaSEXRBjtzh9fOtsE6E1G6p7vl7edEeZe11QHf18+6+9gR5PbKV/sGKNaD8YaMeA==", + "version": "0.21.4", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz", + "integrity": "sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==", "dependencies": { - "follow-redirects": "^1.14.8" + "follow-redirects": "^1.14.0" } }, "node_modules/axios-cookiejar-support": { @@ -120,9 +120,9 @@ } }, "node_modules/typescript": { - "version": "4.9.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.3.tgz", - "integrity": "sha512-CIfGzTelbKNEnLpLdGFgdyKhG23CKdKgQPOBc+OUNrkJ2vr+KSzsSV5kq5iWhEQbok+quxgGzrAtGWCyU7tHnA==", + "version": "3.9.10", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz", + "integrity": "sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==", "dev": true, "bin": { "tsc": "bin/tsc", @@ -154,11 +154,11 @@ "integrity": "sha512-Y0K95ThC3esLEYD6ZuqNek29lNX2EM1qxV8y2FTLUB0ff5wWrk7az+mLrnNFUnaXcgKye22+sFBRXOgpPILZNg==" }, "axios": { - "version": "0.26.1", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.26.1.tgz", - "integrity": "sha512-fPwcX4EvnSHuInCMItEhAGnaSEXRBjtzh9fOtsE6E1G6p7vl7edEeZe11QHf18+6+9gR5PbKV/sGKNaD8YaMeA==", + "version": "0.21.4", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz", + "integrity": "sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==", "requires": { - "follow-redirects": "^1.14.8" + "follow-redirects": "^1.14.0" } }, "axios-cookiejar-support": { @@ -206,9 +206,9 @@ } }, "typescript": { - "version": "4.9.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.3.tgz", - "integrity": "sha512-CIfGzTelbKNEnLpLdGFgdyKhG23CKdKgQPOBc+OUNrkJ2vr+KSzsSV5kq5iWhEQbok+quxgGzrAtGWCyU7tHnA==", + "version": "3.9.10", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz", + "integrity": "sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==", "dev": true }, "universalify": { diff --git a/package.json b/package.json index eb0945a..975e461 100644 --- a/package.json +++ b/package.json @@ -3,10 +3,6 @@ "version": "1.9.1", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", - "repository": { - "type": "git", - "url": "https://github.com/vrchatapi/vrchatapi-javascript.git" - }, "keywords": [ "axios", "typescript", @@ -18,17 +14,17 @@ "main": "./dist/index.js", "typings": "./dist/index.d.ts", "scripts": { - "build": "tsc ", - "prepare": "npm run build" + "build": "tsc --outDir dist/", + "prepublishOnly": "npm run build" }, "dependencies": { "tough-cookie": "^4.0.0", "axios-cookiejar-support": "^1.0.1", "@types/tough-cookie": "^4.0.1", - "axios": "^0.26.1" + "axios": "^0.21.4" }, "devDependencies": { "@types/node": "^12.11.5", - "typescript": "^4.0" + "typescript": "^3.6.4" } } diff --git a/tsconfig.json b/tsconfig.json index d953a37..2f27acb 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,7 +1,7 @@ { "compilerOptions": { "declaration": true, - "target": "ES5", + "target": "es5", "module": "commonjs", "noImplicitAny": true, "outDir": "dist", From 23b649dc68e34eae9a13dbfb707678eaa4a704ae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Foorack=20/=20Max=20Fax=C3=A4lv?= Date: Mon, 5 Dec 2022 00:47:33 +0100 Subject: [PATCH 084/130] Set OpenAPI version back to 6.2.1 and fix GitLab CI --- .github/workflows/ci.yaml | 2 +- .openapi-generator/VERSION | 2 +- api.ts | 517 +++++++++++++++++++++---------------- common.ts | 34 ++- openapitools.json | 2 +- package-lock.json | 32 +-- package.json | 12 +- tsconfig.json | 2 +- 8 files changed, 344 insertions(+), 259 deletions(-) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 0c740f9..555d301 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -24,7 +24,7 @@ jobs: - name: Install OpenAPI Generator CLI run: npm install @openapitools/openapi-generator-cli - name: Set OpenAPI Generator version - run: ./node_modules/\@openapitools/openapi-generator-cli/main.js version-manager set 5.3.0 + run: ./node_modules/\@openapitools/openapi-generator-cli/main.js version-manager set 6.3.1 - name: Generate SDK Client run: bash ./generate.sh - name: Check version number diff --git a/.openapi-generator/VERSION b/.openapi-generator/VERSION index e230c83..0df17dd 100644 --- a/.openapi-generator/VERSION +++ b/.openapi-generator/VERSION @@ -1 +1 @@ -5.3.0 \ No newline at end of file +6.2.1 \ No newline at end of file diff --git a/api.ts b/api.ts index 7dd05a4..09543a0 100644 --- a/api.ts +++ b/api.ts @@ -769,7 +769,7 @@ export interface Avatar { */ 'releaseStatus': ReleaseStatus; /** - * + * * @type {Array} * @memberof Avatar */ @@ -869,7 +869,7 @@ export interface CreateAvatarRequest { */ 'description'?: string; /** - * + * * @type {Array} * @memberof CreateAvatarRequest */ @@ -924,7 +924,7 @@ export interface CreateFileRequest { */ 'extension': string; /** - * + * * @type {Array} * @memberof CreateFileRequest */ @@ -1017,25 +1017,25 @@ export interface CreateGroupGalleryRequest { */ 'membersOnly'?: boolean; /** - * + * * @type {Array} * @memberof CreateGroupGalleryRequest */ 'roleIdsToView'?: Array | null; /** - * + * * @type {Array} * @memberof CreateGroupGalleryRequest */ 'roleIdsToSubmit'?: Array | null; /** - * + * * @type {Array} * @memberof CreateGroupGalleryRequest */ 'roleIdsToAutoApprove'?: Array | null; /** - * + * * @type {Array} * @memberof CreateGroupGalleryRequest */ @@ -1225,7 +1225,7 @@ export interface CreateWorldRequest { */ 'releaseStatus'?: ReleaseStatus; /** - * + * * @type {Array} * @memberof CreateWorldRequest */ @@ -1443,7 +1443,7 @@ export interface CurrentUser { */ 'onlineFriends'?: Array; /** - * + * * @type {Array} * @memberof CurrentUser */ @@ -1540,12 +1540,15 @@ export interface CurrentUser { * @enum {string} */ -export enum DeploymentGroup { - Blue = 'blue', - Green = 'green', - Grape = 'grape', - Cherry = 'cherry' -} +export const DeploymentGroup = { + Blue: 'blue', + Green: 'green', + Grape: 'grape', + Cherry: 'cherry' +} as const; + +export type DeploymentGroup = typeof DeploymentGroup[keyof typeof DeploymentGroup]; + /** * \"none\" User is a normal user \"trusted\" Unknown \"internal\" Is a VRChat Developer \"moderator\" Is a VRChat Moderator Staff can hide their developerType at will. @@ -1553,12 +1556,15 @@ export enum DeploymentGroup { * @enum {string} */ -export enum DeveloperType { - None = 'none', - Trusted = 'trusted', - Internal = 'internal', - Moderator = 'moderator' -} +export const DeveloperType = { + None: 'none', + Trusted: 'trusted', + Internal: 'internal', + Moderator: 'moderator' +} as const; + +export type DeveloperType = typeof DeveloperType[keyof typeof DeveloperType]; + /** * @@ -1634,7 +1640,7 @@ export interface Favorite { */ 'id': string; /** - * + * * @type {Array} * @memberof Favorite */ @@ -1683,7 +1689,7 @@ export interface FavoriteGroup { */ 'ownerId': string; /** - * + * * @type {Array} * @memberof FavoriteGroup */ @@ -1707,11 +1713,14 @@ export interface FavoriteGroup { * @enum {string} */ -export enum FavoriteGroupVisibility { - Private = 'private', - Friends = 'friends', - Public = 'public' -} +export const FavoriteGroupVisibility = { + Private: 'private', + Friends: 'friends', + Public: 'public' +} as const; + +export type FavoriteGroupVisibility = typeof FavoriteGroupVisibility[keyof typeof FavoriteGroupVisibility]; + /** * @@ -1719,11 +1728,14 @@ export enum FavoriteGroupVisibility { * @enum {string} */ -export enum FavoriteType { - World = 'world', - Friend = 'friend', - Avatar = 'avatar' -} +export const FavoriteType = { + World: 'world', + Friend: 'friend', + Avatar: 'avatar' +} as const; + +export type FavoriteType = typeof FavoriteType[keyof typeof FavoriteType]; + /** * @@ -1775,15 +1787,13 @@ export interface FileData { 'url': string; } -/** - * @export - * @enum {string} - */ -export enum FileDataCategoryEnum { - Multipart = 'multipart', - Queued = 'queued', - Simple = 'simple' -} +export const FileDataCategoryEnum = { + Multipart: 'multipart', + Queued: 'queued', + Simple: 'simple' +} as const; + +export type FileDataCategoryEnum = typeof FileDataCategoryEnum[keyof typeof FileDataCategoryEnum]; /** * @@ -1791,12 +1801,15 @@ export enum FileDataCategoryEnum { * @enum {string} */ -export enum FileStatus { - Waiting = 'waiting', - Complete = 'complete', - None = 'none', - Queued = 'queued' -} +export const FileStatus = { + Waiting: 'waiting', + Complete: 'complete', + None: 'none', + Queued: 'queued' +} as const; + +export type FileStatus = typeof FileStatus[keyof typeof FileStatus]; + /** * @@ -2070,13 +2083,13 @@ export interface Group { */ 'joinState'?: GroupJoinState; /** - * + * * @type {Array} * @memberof Group */ 'tags'?: Array; /** - * + * * @type {Array} * @memberof Group */ @@ -2265,25 +2278,25 @@ export interface GroupGallery { */ 'membersOnly'?: boolean; /** - * + * * @type {Array} * @memberof GroupGallery */ 'roleIdsToView'?: Array | null; /** - * + * * @type {Array} * @memberof GroupGallery */ 'roleIdsToSubmit'?: Array | null; /** - * + * * @type {Array} * @memberof GroupGallery */ 'roleIdsToAutoApprove'?: Array | null; /** - * + * * @type {Array} * @memberof GroupGallery */ @@ -2374,12 +2387,15 @@ export interface GroupGalleryImage { * @enum {string} */ -export enum GroupJoinState { - Closed = 'closed', - Invite = 'invite', - Request = 'request', - Open = 'open' -} +export const GroupJoinState = { + Closed: 'closed', + Invite: 'invite', + Request: 'request', + Open: 'open' +} as const; + +export type GroupJoinState = typeof GroupJoinState[keyof typeof GroupJoinState]; + /** * @@ -2534,12 +2550,15 @@ export interface GroupMemberLimitedUser { * @enum {string} */ -export enum GroupMemberStatus { - Inactive = 'inactive', - Member = 'member', - Requested = 'requested', - Invited = 'invited' -} +export const GroupMemberStatus = { + Inactive: 'inactive', + Member: 'member', + Requested: 'requested', + Invited: 'invited' +} as const; + +export type GroupMemberStatus = typeof GroupMemberStatus[keyof typeof GroupMemberStatus]; + /** * @@ -2669,10 +2688,13 @@ export interface GroupPermission { * @enum {string} */ -export enum GroupPrivacy { - Default = 'default', - Private = 'private' -} +export const GroupPrivacy = { + Default: 'default', + Private: 'private' +} as const; + +export type GroupPrivacy = typeof GroupPrivacy[keyof typeof GroupPrivacy]; + /** * @@ -2759,12 +2781,15 @@ export interface GroupRole { * @enum {string} */ -export enum GroupRoleTemplate { - Default = 'default', - ManagedFree = 'managedFree', - ManagedInvite = 'managedInvite', - ManagedRequest = 'managedRequest' -} +export const GroupRoleTemplate = { + Default: 'default', + ManagedFree: 'managedFree', + ManagedInvite: 'managedInvite', + ManagedRequest: 'managedRequest' +} as const; + +export type GroupRoleTemplate = typeof GroupRoleTemplate[keyof typeof GroupRoleTemplate]; + /** * @@ -2772,11 +2797,14 @@ export enum GroupRoleTemplate { * @enum {string} */ -export enum GroupUserVisibility { - Visible = 'visible', - Hidden = 'hidden', - Friends = 'friends' -} +export const GroupUserVisibility = { + Visible: 'visible', + Hidden: 'hidden', + Friends: 'friends' +} as const; + +export type GroupUserVisibility = typeof GroupUserVisibility[keyof typeof GroupUserVisibility]; + /** * @@ -2809,7 +2837,7 @@ export interface InfoPush { */ 'priority': number; /** - * + * * @type {Array} * @memberof InfoPush */ @@ -2964,16 +2992,14 @@ export interface InfoPushDataClickable { 'parameters'?: Array; } -/** - * @export - * @enum {string} - */ -export enum InfoPushDataClickableCommandEnum { - OpenUrl = 'OpenURL', - OpenVrcPlusMenu = 'OpenVRCPlusMenu', - OpenSafetyMenu = 'OpenSafetyMenu', - CannedWorldSearch = 'CannedWorldSearch' -} +export const InfoPushDataClickableCommandEnum = { + OpenUrl: 'OpenURL', + OpenVrcPlusMenu: 'OpenVRCPlusMenu', + OpenSafetyMenu: 'OpenSafetyMenu', + CannedWorldSearch: 'CannedWorldSearch' +} as const; + +export type InfoPushDataClickableCommandEnum = typeof InfoPushDataClickableCommandEnum[keyof typeof InfoPushDataClickableCommandEnum]; /** * * `hidden` field is only present if InstanceType is `hidden` aka \"Friends+\", and is instance creator. * `friends` field is only present if InstanceType is `friends` aka \"Friends\", and is instance creator. * `private` field is only present if InstanceType is `private` aka \"Invite\" or \"Invite+\", and is instance creator. @@ -3165,12 +3191,15 @@ export interface InstanceShortNameResponse { * @enum {string} */ -export enum InstanceType { - Public = 'public', - Hidden = 'hidden', - Friends = 'friends', - Private = 'private' -} +export const InstanceType = { + Public: 'public', + Hidden: 'hidden', + Friends: 'friends', + Private: 'private' +} as const; + +export type InstanceType = typeof InstanceType[keyof typeof InstanceType]; + /** * @@ -3227,12 +3256,15 @@ export interface InviteMessage { * @enum {string} */ -export enum InviteMessageType { - Message = 'message', - Response = 'response', - Request = 'request', - RequestResponse = 'requestResponse' -} +export const InviteMessageType = { + Message: 'message', + Response: 'response', + Request: 'request', + RequestResponse: 'requestResponse' +} as const; + +export type InviteMessageType = typeof InviteMessageType[keyof typeof InviteMessageType]; + /** * @@ -3303,10 +3335,13 @@ export interface License { * @enum {string} */ -export enum LicenseAction { - Wear = 'wear', - Have = 'have' -} +export const LicenseAction = { + Wear: 'wear', + Have: 'have' +} as const; + +export type LicenseAction = typeof LicenseAction[keyof typeof LicenseAction]; + /** * @@ -3345,12 +3380,15 @@ export interface LicenseGroup { * @enum {string} */ -export enum LicenseType { - Avatar = 'avatar', - LicenseGroup = 'licenseGroup', - Permission = 'permission', - Product = 'product' -} +export const LicenseType = { + Avatar: 'avatar', + LicenseGroup: 'licenseGroup', + Permission: 'permission', + Product: 'product' +} as const; + +export type LicenseType = typeof LicenseType[keyof typeof LicenseType]; + /** * @@ -3578,7 +3616,7 @@ export interface LimitedWorld { */ 'releaseStatus': ReleaseStatus; /** - * + * * @type {Array} * @memberof LimitedWorld */ @@ -3590,7 +3628,7 @@ export interface LimitedWorld { */ 'thumbnailImageUrl': string; /** - * + * * @type {Array} * @memberof LimitedWorld */ @@ -3608,22 +3646,25 @@ export interface LimitedWorld { * @enum {string} */ -export enum MIMEType { - ImageJpeg = 'image/jpeg', - ImageJpg = 'image/jpg', - ImagePng = 'image/png', - ImageWebp = 'image/webp', - ImageGif = 'image/gif', - ImageBmp = 'image/bmp', - ImageSvgxml = 'image/svg+xml', - ImageTiff = 'image/tiff', - ApplicationXAvatar = 'application/x-avatar', - ApplicationXWorld = 'application/x-world', - ApplicationGzip = 'application/gzip', - ApplicationXRsyncSignature = 'application/x-rsync-signature', - ApplicationXRsyncDelta = 'application/x-rsync-delta', - ApplicationOctetStream = 'application/octet-stream' -} +export const MIMEType = { + ImageJpeg: 'image/jpeg', + ImageJpg: 'image/jpg', + ImagePng: 'image/png', + ImageWebp: 'image/webp', + ImageGif: 'image/gif', + ImageBmp: 'image/bmp', + ImageSvgxml: 'image/svg+xml', + ImageTiff: 'image/tiff', + ApplicationXAvatar: 'application/x-avatar', + ApplicationXWorld: 'application/x-world', + ApplicationGzip: 'application/gzip', + ApplicationXRsyncSignature: 'application/x-rsync-signature', + ApplicationXRsyncDelta: 'application/x-rsync-delta', + ApplicationOctetStream: 'application/octet-stream' +} as const; + +export type MIMEType = typeof MIMEType[keyof typeof MIMEType]; + /** * @@ -3675,13 +3716,13 @@ export interface ModelFile { */ 'ownerId': string; /** - * + * * @type {Array} * @memberof ModelFile */ 'tags': Array; /** - * + * * @type {Set} * @memberof ModelFile */ @@ -3774,14 +3815,17 @@ export interface Notification { * @enum {string} */ -export enum NotificationType { - FriendRequest = 'friendRequest', - Invite = 'invite', - InviteResponse = 'inviteResponse', - RequestInvite = 'requestInvite', - RequestInviteResponse = 'requestInviteResponse', - Votetokick = 'votetokick' -} +export const NotificationType = { + FriendRequest: 'friendRequest', + Invite: 'invite', + InviteResponse: 'inviteResponse', + RequestInvite: 'requestInvite', + RequestInviteResponse: 'requestInviteResponse', + Votetokick: 'votetokick' +} as const; + +export type NotificationType = typeof NotificationType[keyof typeof NotificationType]; + /** * @@ -3789,10 +3833,13 @@ export enum NotificationType { * @enum {string} */ -export enum OrderOption { - Ascending = 'ascending', - Descending = 'descending' -} +export const OrderOption = { + Ascending: 'ascending', + Descending: 'descending' +} as const; + +export type OrderOption = typeof OrderOption[keyof typeof OrderOption]; + /** * @@ -3801,7 +3848,7 @@ export enum OrderOption { */ export interface PaginatedGroupAuditLogEntryList { /** - * + * * @type {Array} * @memberof PaginatedGroupAuditLogEntryList */ @@ -3924,14 +3971,17 @@ export interface PlayerModeration { * @enum {string} */ -export enum PlayerModerationType { - Mute = 'mute', - Unmute = 'unmute', - Block = 'block', - Unblock = 'unblock', - InteractOn = 'interactOn', - InteractOff = 'interactOff' -} +export const PlayerModerationType = { + Mute: 'mute', + Unmute: 'unmute', + Block: 'block', + Unblock: 'unblock', + InteractOn: 'interactOn', + InteractOff: 'interactOff' +} as const; + +export type PlayerModerationType = typeof PlayerModerationType[keyof typeof PlayerModerationType]; + /** * API/Photon region. @@ -3939,14 +3989,17 @@ export enum PlayerModerationType { * @enum {string} */ -export enum Region { - Us = 'us', - Use = 'use', - Usw = 'usw', - Eu = 'eu', - Jp = 'jp', - Unknown = 'unknown' -} +export const Region = { + Us: 'us', + Use: 'use', + Usw: 'usw', + Eu: 'eu', + Jp: 'jp', + Unknown: 'unknown' +} as const; + +export type Region = typeof Region[keyof typeof Region]; + /** * @@ -3954,11 +4007,14 @@ export enum Region { * @enum {string} */ -export enum ReleaseStatus { - Public = 'public', - Private = 'private', - Hidden = 'hidden' -} +export const ReleaseStatus = { + Public: 'public', + Private: 'private', + Hidden: 'hidden' +} as const; + +export type ReleaseStatus = typeof ReleaseStatus[keyof typeof ReleaseStatus]; + /** * @@ -4067,26 +4123,29 @@ export interface SentNotification { * @enum {string} */ -export enum SortOption { - Popularity = 'popularity', - Heat = 'heat', - Trust = 'trust', - Shuffle = 'shuffle', - Random = 'random', - Favorites = 'favorites', - ReportScore = 'reportScore', - ReportCount = 'reportCount', - PublicationDate = 'publicationDate', - LabsPublicationDate = 'labsPublicationDate', - Created = 'created', - CreatedAt = '_created_at', - Updated = 'updated', - UpdatedAt = '_updated_at', - Order = 'order', - Relevance = 'relevance', - Magic = 'magic', - Name = 'name' -} +export const SortOption = { + Popularity: 'popularity', + Heat: 'heat', + Trust: 'trust', + Shuffle: 'shuffle', + Random: 'random', + Favorites: 'favorites', + ReportScore: 'reportScore', + ReportCount: 'reportCount', + PublicationDate: 'publicationDate', + LabsPublicationDate: 'labsPublicationDate', + Created: 'created', + CreatedAt: '_created_at', + Updated: 'updated', + UpdatedAt: '_updated_at', + Order: 'order', + Relevance: 'relevance', + Magic: 'magic', + Name: 'name' +} as const; + +export type SortOption = typeof SortOption[keyof typeof SortOption]; + /** * @@ -4137,13 +4196,16 @@ export interface Subscription { * @enum {string} */ -export enum SubscriptionPeriod { - Hour = 'hour', - Day = 'day', - Week = 'week', - Month = 'month', - Year = 'year' -} +export const SubscriptionPeriod = { + Hour: 'hour', + Day: 'day', + Week: 'week', + Month: 'month', + Year: 'year' +} as const; + +export type SubscriptionPeriod = typeof SubscriptionPeriod[keyof typeof SubscriptionPeriod]; + /** * @@ -4334,12 +4396,15 @@ export interface TransactionAgreement { * @enum {string} */ -export enum TransactionStatus { - Active = 'active', - Failed = 'failed', - Expired = 'expired', - Chargeback = 'chargeback' -} +export const TransactionStatus = { + Active: 'active', + Failed: 'failed', + Expired: 'expired', + Chargeback: 'chargeback' +} as const; + +export type TransactionStatus = typeof TransactionStatus[keyof typeof TransactionStatus]; + /** * @@ -4520,7 +4585,7 @@ export interface UpdateAvatarRequest { */ 'description'?: string; /** - * + * * @type {Array} * @memberof UpdateAvatarRequest */ @@ -4600,25 +4665,25 @@ export interface UpdateGroupGalleryRequest { */ 'membersOnly'?: boolean; /** - * + * * @type {Array} * @memberof UpdateGroupGalleryRequest */ 'roleIdsToView'?: Array | null; /** - * + * * @type {Array} * @memberof UpdateGroupGalleryRequest */ 'roleIdsToSubmit'?: Array | null; /** - * + * * @type {Array} * @memberof UpdateGroupGalleryRequest */ 'roleIdsToAutoApprove'?: Array | null; /** - * + * * @type {Array} * @memberof UpdateGroupGalleryRequest */ @@ -4710,7 +4775,7 @@ export interface UpdateGroupRequest { */ 'rules'?: string; /** - * + * * @type {Array} * @memberof UpdateGroupRequest */ @@ -4791,7 +4856,7 @@ export interface UpdateUserRequest { */ 'acceptedTOSVersion'?: number; /** - * + * * @type {Array} * @memberof UpdateUserRequest */ @@ -4894,7 +4959,7 @@ export interface UpdateWorldRequest { */ 'releaseStatus'?: ReleaseStatus; /** - * + * * @type {Array} * @memberof UpdateWorldRequest */ @@ -5051,7 +5116,7 @@ export interface User { */ 'statusDescription': string; /** - * + * * @type {Array} * @memberof User */ @@ -5113,11 +5178,14 @@ export interface UserExists { * @enum {string} */ -export enum UserState { - Offline = 'offline', - Active = 'active', - Online = 'online' -} +export const UserState = { + Offline: 'offline', + Active: 'active', + Online: 'online' +} as const; + +export type UserState = typeof UserState[keyof typeof UserState]; + /** * Defines the User\'s current status, for example \"ask me\", \"join me\" or \"offline. This status is a combined indicator of their online activity and privacy preference. @@ -5125,13 +5193,16 @@ export enum UserState { * @enum {string} */ -export enum UserStatus { - Active = 'active', - JoinMe = 'join me', - AskMe = 'ask me', - Busy = 'busy', - Offline = 'offline' -} +export const UserStatus = { + Active: 'active', + JoinMe: 'join me', + AskMe: 'ask me', + Busy: 'busy', + Offline: 'offline' +} as const; + +export type UserStatus = typeof UserStatus[keyof typeof UserStatus]; + /** * @@ -5401,7 +5472,7 @@ export interface World { */ 'releaseStatus': ReleaseStatus; /** - * + * * @type {Array} * @memberof World */ diff --git a/common.ts b/common.ts index 5815fb1..4bad3da 100644 --- a/common.ts +++ b/common.ts @@ -82,24 +82,34 @@ export const setOAuthToObject = async function (object: any, name: string, scope } } +function setFlattenedQueryParams(urlSearchParams: URLSearchParams, parameter: any, key: string = ""): void { + if (typeof parameter === "object") { + if (Array.isArray(parameter)) { + (parameter as any[]).forEach(item => setFlattenedQueryParams(urlSearchParams, item, key)); + } + else { + Object.keys(parameter).forEach(currentKey => + setFlattenedQueryParams(urlSearchParams, parameter[currentKey], `${key}${key !== '' ? '.' : ''}${currentKey}`) + ); + } + } + else { + if (urlSearchParams.has(key)) { + urlSearchParams.append(key, parameter); + } + else { + urlSearchParams.set(key, parameter); + } + } +} + /** * * @export */ export const setSearchParams = function (url: URL, ...objects: any[]) { const searchParams = new URLSearchParams(url.search); - for (const object of objects) { - for (const key in object) { - if (Array.isArray(object[key])) { - searchParams.delete(key); - for (const item of object[key]) { - searchParams.append(key, item); - } - } else { - searchParams.set(key, object[key]); - } - } - } + setFlattenedQueryParams(searchParams, objects); url.search = searchParams.toString(); } diff --git a/openapitools.json b/openapitools.json index 3b40e47..f5f966a 100644 --- a/openapitools.json +++ b/openapitools.json @@ -2,6 +2,6 @@ "$schema": "node_modules/@openapitools/openapi-generator-cli/config.schema.json", "spaces": 2, "generator-cli": { - "version": "5.3.0" + "version": "6.2.1" } } diff --git a/package-lock.json b/package-lock.json index 08ec5cd..55690a5 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10,13 +10,13 @@ "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", - "axios": "^0.21.4", + "axios": "^0.26.1", "axios-cookiejar-support": "^1.0.1", "tough-cookie": "^4.0.0" }, "devDependencies": { "@types/node": "^12.11.5", - "typescript": "^3.6.4" + "typescript": "^4.0" } }, "node_modules/@types/node": { @@ -31,11 +31,11 @@ "integrity": "sha512-Y0K95ThC3esLEYD6ZuqNek29lNX2EM1qxV8y2FTLUB0ff5wWrk7az+mLrnNFUnaXcgKye22+sFBRXOgpPILZNg==" }, "node_modules/axios": { - "version": "0.21.4", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz", - "integrity": "sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==", + "version": "0.26.1", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.26.1.tgz", + "integrity": "sha512-fPwcX4EvnSHuInCMItEhAGnaSEXRBjtzh9fOtsE6E1G6p7vl7edEeZe11QHf18+6+9gR5PbKV/sGKNaD8YaMeA==", "dependencies": { - "follow-redirects": "^1.14.0" + "follow-redirects": "^1.14.8" } }, "node_modules/axios-cookiejar-support": { @@ -120,9 +120,9 @@ } }, "node_modules/typescript": { - "version": "3.9.10", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz", - "integrity": "sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==", + "version": "4.9.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.3.tgz", + "integrity": "sha512-CIfGzTelbKNEnLpLdGFgdyKhG23CKdKgQPOBc+OUNrkJ2vr+KSzsSV5kq5iWhEQbok+quxgGzrAtGWCyU7tHnA==", "dev": true, "bin": { "tsc": "bin/tsc", @@ -154,11 +154,11 @@ "integrity": "sha512-Y0K95ThC3esLEYD6ZuqNek29lNX2EM1qxV8y2FTLUB0ff5wWrk7az+mLrnNFUnaXcgKye22+sFBRXOgpPILZNg==" }, "axios": { - "version": "0.21.4", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz", - "integrity": "sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==", + "version": "0.26.1", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.26.1.tgz", + "integrity": "sha512-fPwcX4EvnSHuInCMItEhAGnaSEXRBjtzh9fOtsE6E1G6p7vl7edEeZe11QHf18+6+9gR5PbKV/sGKNaD8YaMeA==", "requires": { - "follow-redirects": "^1.14.0" + "follow-redirects": "^1.14.8" } }, "axios-cookiejar-support": { @@ -206,9 +206,9 @@ } }, "typescript": { - "version": "3.9.10", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz", - "integrity": "sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==", + "version": "4.9.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.3.tgz", + "integrity": "sha512-CIfGzTelbKNEnLpLdGFgdyKhG23CKdKgQPOBc+OUNrkJ2vr+KSzsSV5kq5iWhEQbok+quxgGzrAtGWCyU7tHnA==", "dev": true }, "universalify": { diff --git a/package.json b/package.json index 975e461..eb0945a 100644 --- a/package.json +++ b/package.json @@ -3,6 +3,10 @@ "version": "1.9.1", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", + "repository": { + "type": "git", + "url": "https://github.com/vrchatapi/vrchatapi-javascript.git" + }, "keywords": [ "axios", "typescript", @@ -14,17 +18,17 @@ "main": "./dist/index.js", "typings": "./dist/index.d.ts", "scripts": { - "build": "tsc --outDir dist/", - "prepublishOnly": "npm run build" + "build": "tsc ", + "prepare": "npm run build" }, "dependencies": { "tough-cookie": "^4.0.0", "axios-cookiejar-support": "^1.0.1", "@types/tough-cookie": "^4.0.1", - "axios": "^0.21.4" + "axios": "^0.26.1" }, "devDependencies": { "@types/node": "^12.11.5", - "typescript": "^3.6.4" + "typescript": "^4.0" } } diff --git a/tsconfig.json b/tsconfig.json index 2f27acb..d953a37 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,7 +1,7 @@ { "compilerOptions": { "declaration": true, - "target": "es5", + "target": "ES5", "module": "commonjs", "noImplicitAny": true, "outDir": "dist", From a9368e04f6e474b58c2ea733289e0bd6d6565ca0 Mon Sep 17 00:00:00 2001 From: VRCCat Date: Mon, 5 Dec 2022 00:34:39 +0000 Subject: [PATCH 085/130] Upgrade Node SDK to spec 1.10.0 --- api.ts | 2 +- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 ++-- package.json | 2 +- 7 files changed, 8 insertions(+), 8 deletions(-) diff --git a/api.ts b/api.ts index 09543a0..6b4c1db 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.9.1 + * The version of the OpenAPI document: 1.10.0 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/base.ts b/base.ts index 7a39813..9bd910d 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.9.1 + * The version of the OpenAPI document: 1.10.0 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index 4bad3da..74c9eb2 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.9.1 + * The version of the OpenAPI document: 1.10.0 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index 08cb90d..4db9b40 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.9.1 + * The version of the OpenAPI document: 1.10.0 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index ec0f76b..16112de 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.9.1 + * The version of the OpenAPI document: 1.10.0 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index 55690a5..3497118 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.9.1", + "version": "1.10.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.9.1", + "version": "1.10.0", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index eb0945a..26d0f93 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.9.1", + "version": "1.10.0", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "repository": { From c8a1ba986f53c8d84d8a20fa7c185df3cbfa2cc0 Mon Sep 17 00:00:00 2001 From: VRCCat Date: Tue, 6 Dec 2022 08:32:27 +0000 Subject: [PATCH 086/130] Upgrade Node SDK to spec 1.10.1 --- api.ts | 37 ++++++++++++++++++++++++++++++++++--- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 ++-- package.json | 2 +- 7 files changed, 41 insertions(+), 10 deletions(-) diff --git a/api.ts b/api.ts index 6b4c1db..9e1bda9 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.10.0 + * The version of the OpenAPI document: 1.10.1 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -658,6 +658,31 @@ export interface APIHealth { */ 'buildVersionTag': string; } +/** + * + * @export + * @interface AccountDeletionLog + */ +export interface AccountDeletionLog { + /** + * Typically \"Deletion requested\" or \"Deletion canceled\". Other messages like \"Deletion completed\" may exist, but are these are not possible to see as a regular user. + * @type {string} + * @memberof AccountDeletionLog + */ + 'message'?: string; + /** + * When the deletion is scheduled to happen, standard is 14 days after the request. + * @type {string} + * @memberof AccountDeletionLog + */ + 'deletionScheduled'?: string | null; + /** + * Date and time of the deletion request. + * @type {string} + * @memberof AccountDeletionLog + */ + 'dateTime'?: string; +} /** * * @export @@ -1262,7 +1287,13 @@ export interface CurrentUser { */ 'accountDeletionDate'?: string | null; /** - * + * + * @type {Array} + * @memberof CurrentUser + */ + 'accountDeletionLog'?: Array; + /** + * * @type {Array} * @memberof CurrentUser */ @@ -1280,7 +1311,7 @@ export interface CurrentUser { */ 'bio': string; /** - * + * * @type {Array} * @memberof CurrentUser */ diff --git a/base.ts b/base.ts index 9bd910d..21bd796 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.10.0 + * The version of the OpenAPI document: 1.10.1 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index 74c9eb2..ceef052 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.10.0 + * The version of the OpenAPI document: 1.10.1 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index 4db9b40..d73bda3 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.10.0 + * The version of the OpenAPI document: 1.10.1 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index 16112de..99684ea 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.10.0 + * The version of the OpenAPI document: 1.10.1 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index 3497118..80954d3 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.10.0", + "version": "1.10.1", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.10.0", + "version": "1.10.1", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index 26d0f93..61c33e7 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.10.0", + "version": "1.10.1", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "repository": { From c0e91abe695cb077a5a806246fbe65d0057a6435 Mon Sep 17 00:00:00 2001 From: VRCCat Date: Sun, 22 Jan 2023 17:23:13 +0000 Subject: [PATCH 087/130] Upgrade Node SDK to spec 1.11.0 --- api.ts | 99 ++++++++++++++++++++++++++++++++++++++++++++++- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 +- package.json | 2 +- 7 files changed, 104 insertions(+), 9 deletions(-) diff --git a/api.ts b/api.ts index 9e1bda9..3c7c490 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.10.1 + * The version of the OpenAPI document: 1.11.0 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -4518,6 +4518,19 @@ export interface TwoFactorAuthCode { */ 'code': string; } +/** + * + * @export + * @interface TwoFactorEmailCode + */ +export interface TwoFactorEmailCode { + /** + * + * @type {string} + * @memberof TwoFactorEmailCode + */ + 'code': string; +} /** * * @export @@ -5332,6 +5345,19 @@ export interface UserSubscription { */ 'isGift': boolean; } +/** + * + * @export + * @interface Verify2FAEmailCodeResult + */ +export interface Verify2FAEmailCodeResult { + /** + * + * @type {boolean} + * @memberof Verify2FAEmailCodeResult + */ + 'verified': boolean; +} /** * * @export @@ -5640,7 +5666,7 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf deleteUser: async (userId: string, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'userId' is not null or undefined assertParamExists('deleteUser', 'userId', userId) - const localVarPath = `/user/{userId}/delete` + const localVarPath = `/users/{userId}/delete` .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -5774,6 +5800,42 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf options: localVarRequestOptions, }; }, + /** + * Finishes the login sequence with an 2FA email code. + * @summary Verify 2FA email code + * @param {TwoFactorEmailCode} [twoFactorEmailCode] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + verify2FAEmailCode: async (twoFactorEmailCode?: TwoFactorEmailCode, options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/auth/twofactorauth/emailotp/verify`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(twoFactorEmailCode, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, /** * Verify whether the currently provided Auth Token is valid. * @summary Verify Auth Token @@ -5908,6 +5970,17 @@ export const AuthenticationApiFp = function(configuration?: Configuration) { const localVarAxiosArgs = await localVarAxiosParamCreator.verify2FA(twoFactorAuthCode, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, + /** + * Finishes the login sequence with an 2FA email code. + * @summary Verify 2FA email code + * @param {TwoFactorEmailCode} [twoFactorEmailCode] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async verify2FAEmailCode(twoFactorEmailCode?: TwoFactorEmailCode, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.verify2FAEmailCode(twoFactorEmailCode, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** * Verify whether the currently provided Auth Token is valid. * @summary Verify Auth Token @@ -5990,6 +6063,16 @@ export const AuthenticationApiFactory = function (configuration?: Configuration, verify2FA(twoFactorAuthCode?: TwoFactorAuthCode, options?: any): AxiosPromise { return localVarFp.verify2FA(twoFactorAuthCode, options).then((request) => request(axios, basePath)); }, + /** + * Finishes the login sequence with an 2FA email code. + * @summary Verify 2FA email code + * @param {TwoFactorEmailCode} [twoFactorEmailCode] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + verify2FAEmailCode(twoFactorEmailCode?: TwoFactorEmailCode, options?: any): AxiosPromise { + return localVarFp.verify2FAEmailCode(twoFactorEmailCode, options).then((request) => request(axios, basePath)); + }, /** * Verify whether the currently provided Auth Token is valid. * @summary Verify Auth Token @@ -6080,6 +6163,18 @@ export class AuthenticationApi extends BaseAPI { return AuthenticationApiFp(this.configuration).verify2FA(twoFactorAuthCode, options).then((request) => request(this.axios, this.basePath)); } + /** + * Finishes the login sequence with an 2FA email code. + * @summary Verify 2FA email code + * @param {TwoFactorEmailCode} [twoFactorEmailCode] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AuthenticationApi + */ + public verify2FAEmailCode(twoFactorEmailCode?: TwoFactorEmailCode, options?: AxiosRequestConfig) { + return AuthenticationApiFp(this.configuration).verify2FAEmailCode(twoFactorEmailCode, options).then((request) => request(this.axios, this.basePath)); + } + /** * Verify whether the currently provided Auth Token is valid. * @summary Verify Auth Token diff --git a/base.ts b/base.ts index 21bd796..c446dbd 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.10.1 + * The version of the OpenAPI document: 1.11.0 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index ceef052..9da384e 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.10.1 + * The version of the OpenAPI document: 1.11.0 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index d73bda3..441e11c 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.10.1 + * The version of the OpenAPI document: 1.11.0 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index 99684ea..2e2f76b 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.10.1 + * The version of the OpenAPI document: 1.11.0 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index 80954d3..a02aa1c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.10.1", + "version": "1.11.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.10.1", + "version": "1.11.0", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index 61c33e7..2fe5c41 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.10.1", + "version": "1.11.0", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "repository": { From 0bd659369cf6ccb7444c30ffbe0219e7c0e9f88d Mon Sep 17 00:00:00 2001 From: VRCCat Date: Sun, 19 Feb 2023 12:13:16 +0000 Subject: [PATCH 088/130] Upgrade Node SDK to spec 1.11.1 --- api.ts | 14 +++++++------- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 ++-- package.json | 2 +- 7 files changed, 14 insertions(+), 14 deletions(-) diff --git a/api.ts b/api.ts index 3c7c490..2a9ab44 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.11.0 + * The version of the OpenAPI document: 1.11.1 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -10535,7 +10535,7 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio }; }, /** - * Join a Group by ID and returns the joined Group. + * Join a Group by ID and returns the member object. * @summary Join Group * @param {string} groupId Must be a valid group ID. * @param {*} [options] Override http request option. @@ -11291,13 +11291,13 @@ export const GroupsApiFp = function(configuration?: Configuration) { return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Join a Group by ID and returns the joined Group. + * Join a Group by ID and returns the member object. * @summary Join Group * @param {string} groupId Must be a valid group ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async joinGroup(groupId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async joinGroup(groupId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.joinGroup(groupId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -11712,13 +11712,13 @@ export const GroupsApiFactory = function (configuration?: Configuration, basePat return localVarFp.getGroupRoles(groupId, options).then((request) => request(axios, basePath)); }, /** - * Join a Group by ID and returns the joined Group. + * Join a Group by ID and returns the member object. * @summary Join Group * @param {string} groupId Must be a valid group ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - joinGroup(groupId: string, options?: any): AxiosPromise { + joinGroup(groupId: string, options?: any): AxiosPromise { return localVarFp.joinGroup(groupId, options).then((request) => request(axios, basePath)); }, /** @@ -12175,7 +12175,7 @@ export class GroupsApi extends BaseAPI { } /** - * Join a Group by ID and returns the joined Group. + * Join a Group by ID and returns the member object. * @summary Join Group * @param {string} groupId Must be a valid group ID. * @param {*} [options] Override http request option. diff --git a/base.ts b/base.ts index c446dbd..686509e 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.11.0 + * The version of the OpenAPI document: 1.11.1 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index 9da384e..d3d2bf7 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.11.0 + * The version of the OpenAPI document: 1.11.1 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index 441e11c..20e7f38 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.11.0 + * The version of the OpenAPI document: 1.11.1 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index 2e2f76b..e9d6ab7 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.11.0 + * The version of the OpenAPI document: 1.11.1 * Contact: me@ariesclark.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index a02aa1c..02c0723 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.11.0", + "version": "1.11.1", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.11.0", + "version": "1.11.1", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index 2fe5c41..93b4741 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.11.0", + "version": "1.11.1", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "repository": { From 58c9f78a513005551ccad5e927681fb01993783a Mon Sep 17 00:00:00 2001 From: VRCCat Date: Wed, 31 May 2023 02:32:39 +0000 Subject: [PATCH 089/130] Upgrade Node SDK to spec 1.12.0 --- api.ts | 263 +++------------------------------------------- base.ts | 4 +- common.ts | 4 +- configuration.ts | 4 +- index.ts | 4 +- package-lock.json | 16 +-- package.json | 2 +- 7 files changed, 34 insertions(+), 263 deletions(-) diff --git a/api.ts b/api.ts index 2a9ab44..ae3f2bc 100644 --- a/api.ts +++ b/api.ts @@ -3,8 +3,8 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.11.1 - * Contact: me@ariesclark.com + * The version of the OpenAPI document: 1.12.0 + * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech @@ -51,12 +51,6 @@ export interface APIConfig { * @memberof APIConfig */ 'announcements': Set; - /** - * apiKey to be used for all other requests - * @type {string} - * @memberof APIConfig - */ - 'apiKey': string; /** * Game name * @type {string} @@ -565,6 +559,18 @@ export interface APIConfigDownloadURLList { * @memberof APIConfigDownloadURLList */ 'sdk3-worlds': string; + /** + * Download link for the Creator Companion + * @type {string} + * @memberof APIConfigDownloadURLList + */ + 'vcc': string; + /** + * Download link for ??? + * @type {string} + * @memberof APIConfigDownloadURLList + */ + 'bootstrap': string; } /** * @@ -1291,7 +1297,7 @@ export interface CurrentUser { * @type {Array} * @memberof CurrentUser */ - 'accountDeletionLog'?: Array; + 'accountDeletionLog'?: Array | null; /** * * @type {Array} @@ -4041,7 +4047,8 @@ export type Region = typeof Region[keyof typeof Region]; export const ReleaseStatus = { Public: 'public', Private: 'private', - Hidden: 'hidden' + Hidden: 'hidden', + All: 'all' } as const; export type ReleaseStatus = typeof ReleaseStatus[keyof typeof ReleaseStatus]; @@ -5627,8 +5634,6 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - if (email !== undefined) { localVarQueryParameter['email'] = email; } @@ -5679,8 +5684,6 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -6226,8 +6229,6 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -6267,8 +6268,6 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -6305,8 +6304,6 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -6352,8 +6349,6 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required if (featured !== undefined) { @@ -6442,8 +6437,6 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -6489,8 +6482,6 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required if (featured !== undefined) { @@ -6579,8 +6570,6 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -6617,8 +6606,6 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -6656,8 +6643,6 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -7103,8 +7088,6 @@ export const EconomyApiAxiosParamCreator = function (configuration?: Configurati const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -7141,8 +7124,6 @@ export const EconomyApiAxiosParamCreator = function (configuration?: Configurati const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -7180,8 +7161,6 @@ export const EconomyApiAxiosParamCreator = function (configuration?: Configurati const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -7214,8 +7193,6 @@ export const EconomyApiAxiosParamCreator = function (configuration?: Configurati const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -7248,8 +7225,6 @@ export const EconomyApiAxiosParamCreator = function (configuration?: Configurati const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -7480,8 +7455,6 @@ export const FavoritesApiAxiosParamCreator = function (configuration?: Configura const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -7529,8 +7502,6 @@ export const FavoritesApiAxiosParamCreator = function (configuration?: Configura const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -7567,8 +7538,6 @@ export const FavoritesApiAxiosParamCreator = function (configuration?: Configura const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -7613,8 +7582,6 @@ export const FavoritesApiAxiosParamCreator = function (configuration?: Configura const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -7650,8 +7617,6 @@ export const FavoritesApiAxiosParamCreator = function (configuration?: Configura const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required if (n !== undefined) { @@ -7700,8 +7665,6 @@ export const FavoritesApiAxiosParamCreator = function (configuration?: Configura const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required if (n !== undefined) { @@ -7754,8 +7717,6 @@ export const FavoritesApiAxiosParamCreator = function (configuration?: Configura const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -7801,8 +7762,6 @@ export const FavoritesApiAxiosParamCreator = function (configuration?: Configura const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -8177,8 +8136,6 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -8219,8 +8176,6 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -8260,8 +8215,6 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -8302,8 +8255,6 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -8344,8 +8295,6 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -8391,8 +8340,6 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -8432,8 +8379,6 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -8478,8 +8423,6 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -8516,8 +8459,6 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required if (tag !== undefined) { @@ -8579,8 +8520,6 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required if (partNumber !== undefined) { @@ -9031,8 +8970,6 @@ export const FriendsApiAxiosParamCreator = function (configuration?: Configurati const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -9069,8 +9006,6 @@ export const FriendsApiAxiosParamCreator = function (configuration?: Configurati const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -9107,8 +9042,6 @@ export const FriendsApiAxiosParamCreator = function (configuration?: Configurati const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -9144,8 +9077,6 @@ export const FriendsApiAxiosParamCreator = function (configuration?: Configurati const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required if (offset !== undefined) { @@ -9194,8 +9125,6 @@ export const FriendsApiAxiosParamCreator = function (configuration?: Configurati const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -9446,8 +9375,6 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -9495,8 +9422,6 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -9534,8 +9459,6 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -9575,8 +9498,6 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -9610,8 +9531,6 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -9652,8 +9571,6 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -9694,8 +9611,6 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -9736,8 +9651,6 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -9778,8 +9691,6 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -9819,8 +9730,6 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -9857,8 +9766,6 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -9899,8 +9806,6 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -9945,8 +9850,6 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -9987,8 +9890,6 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -10029,8 +9930,6 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -10068,8 +9967,6 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required if (includeRoles !== undefined) { @@ -10110,8 +10007,6 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -10152,8 +10047,6 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required if (n !== undefined) { @@ -10212,8 +10105,6 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required if (n !== undefined) { @@ -10265,8 +10156,6 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required if (n !== undefined) { @@ -10315,8 +10204,6 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -10357,8 +10244,6 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -10397,8 +10282,6 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required if (n !== undefined) { @@ -10443,8 +10326,6 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -10481,8 +10362,6 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -10519,8 +10398,6 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -10557,8 +10434,6 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -10599,8 +10474,6 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -10637,8 +10510,6 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -10683,8 +10554,6 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -10726,8 +10595,6 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -10771,8 +10638,6 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -10810,8 +10675,6 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -10856,8 +10719,6 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -10902,8 +10763,6 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -10948,8 +10807,6 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -12342,8 +12199,6 @@ export const InstancesApiAxiosParamCreator = function (configuration?: Configura const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -12380,8 +12235,6 @@ export const InstancesApiAxiosParamCreator = function (configuration?: Configura const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -12422,8 +12275,6 @@ export const InstancesApiAxiosParamCreator = function (configuration?: Configura const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -12464,8 +12315,6 @@ export const InstancesApiAxiosParamCreator = function (configuration?: Configura const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -12689,8 +12538,6 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -12731,8 +12578,6 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -12773,8 +12618,6 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -12812,8 +12655,6 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -12854,8 +12695,6 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -12903,8 +12742,6 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -12942,8 +12779,6 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -12992,8 +12827,6 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -13371,8 +13204,6 @@ export const NotificationsApiAxiosParamCreator = function (configuration?: Confi const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -13405,8 +13236,6 @@ export const NotificationsApiAxiosParamCreator = function (configuration?: Confi const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -13443,8 +13272,6 @@ export const NotificationsApiAxiosParamCreator = function (configuration?: Confi const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -13483,8 +13310,6 @@ export const NotificationsApiAxiosParamCreator = function (configuration?: Confi const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required if (type !== undefined) { @@ -13545,8 +13370,6 @@ export const NotificationsApiAxiosParamCreator = function (configuration?: Confi const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -13794,8 +13617,6 @@ export const PermissionsApiAxiosParamCreator = function (configuration?: Configu const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -13832,8 +13653,6 @@ export const PermissionsApiAxiosParamCreator = function (configuration?: Configu const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -13967,8 +13786,6 @@ export const PlayermoderationApiAxiosParamCreator = function (configuration?: Co const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -14005,8 +13822,6 @@ export const PlayermoderationApiAxiosParamCreator = function (configuration?: Co const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -14043,8 +13858,6 @@ export const PlayermoderationApiAxiosParamCreator = function (configuration?: Co const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -14079,8 +13892,6 @@ export const PlayermoderationApiAxiosParamCreator = function (configuration?: Co const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required if (type !== undefined) { @@ -14122,8 +13933,6 @@ export const PlayermoderationApiAxiosParamCreator = function (configuration?: Co const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -14160,8 +13969,6 @@ export const PlayermoderationApiAxiosParamCreator = function (configuration?: Co const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -14947,8 +14754,6 @@ export const UsersApiAxiosParamCreator = function (configuration?: Configuration const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -14986,8 +14791,6 @@ export const UsersApiAxiosParamCreator = function (configuration?: Configuration const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -15024,8 +14827,6 @@ export const UsersApiAxiosParamCreator = function (configuration?: Configuration const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -15062,8 +14863,6 @@ export const UsersApiAxiosParamCreator = function (configuration?: Configuration const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -15100,8 +14899,6 @@ export const UsersApiAxiosParamCreator = function (configuration?: Configuration const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required if (search !== undefined) { @@ -15155,8 +14952,6 @@ export const UsersApiAxiosParamCreator = function (configuration?: Configuration const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -15481,8 +15276,6 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -15527,8 +15320,6 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required if (featured !== undefined) { @@ -15622,8 +15413,6 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required if (featured !== undefined) { @@ -15721,8 +15510,6 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required if (featured !== undefined) { @@ -15811,8 +15598,6 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - setSearchParams(localVarUrlObj, localVarQueryParameter); @@ -15851,8 +15636,6 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -15890,8 +15673,6 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -15928,8 +15709,6 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -15966,8 +15745,6 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -16014,8 +15791,6 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required if (featured !== undefined) { @@ -16108,8 +15883,6 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required @@ -16147,8 +15920,6 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication apiKeyCookie required - // authentication authCookie required diff --git a/base.ts b/base.ts index 686509e..b67d33d 100644 --- a/base.ts +++ b/base.ts @@ -3,8 +3,8 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.11.1 - * Contact: me@ariesclark.com + * The version of the OpenAPI document: 1.12.0 + * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech diff --git a/common.ts b/common.ts index d3d2bf7..b614ae1 100644 --- a/common.ts +++ b/common.ts @@ -3,8 +3,8 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.11.1 - * Contact: me@ariesclark.com + * The version of the OpenAPI document: 1.12.0 + * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech diff --git a/configuration.ts b/configuration.ts index 20e7f38..320f2e7 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,8 +3,8 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.11.1 - * Contact: me@ariesclark.com + * The version of the OpenAPI document: 1.12.0 + * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech diff --git a/index.ts b/index.ts index e9d6ab7..7cd13c4 100644 --- a/index.ts +++ b/index.ts @@ -3,8 +3,8 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.11.1 - * Contact: me@ariesclark.com + * The version of the OpenAPI document: 1.12.0 + * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech diff --git a/package-lock.json b/package-lock.json index 02c0723..142fb4b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.11.1", + "version": "1.12.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.11.1", + "version": "1.12.0", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", @@ -56,9 +56,9 @@ } }, "node_modules/follow-redirects": { - "version": "1.14.8", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.8.tgz", - "integrity": "sha512-1x0S9UVJHsQprFcEC/qnNzBLcIxsjAV905f/UkQxbclCsoTWlacCNOpQa/anodLl2uaEKFhfWOvM2Qg77+15zA==", + "version": "1.15.2", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz", + "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==", "funding": [ { "type": "individual", @@ -171,9 +171,9 @@ } }, "follow-redirects": { - "version": "1.14.8", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.8.tgz", - "integrity": "sha512-1x0S9UVJHsQprFcEC/qnNzBLcIxsjAV905f/UkQxbclCsoTWlacCNOpQa/anodLl2uaEKFhfWOvM2Qg77+15zA==" + "version": "1.15.2", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz", + "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==" }, "is-redirect": { "version": "1.0.0", diff --git a/package.json b/package.json index 93b4741..ce44817 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.11.1", + "version": "1.12.0", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "repository": { From 516438d8bcd874ffd1b36783db1dc815a63d7edb Mon Sep 17 00:00:00 2001 From: VRCCat Date: Tue, 19 Sep 2023 20:03:53 +0000 Subject: [PATCH 090/130] Upgrade Node SDK to spec 1.13.0 --- api.ts | 119 +++++++++++++++++++++++++++++++++++++++++++++- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 +- package.json | 2 +- 7 files changed, 124 insertions(+), 9 deletions(-) diff --git a/api.ts b/api.ts index ae3f2bc..3728eac 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.12.0 + * The version of the OpenAPI document: 1.13.0 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -1286,6 +1286,12 @@ export interface CurrentUser { * @memberof CurrentUser */ 'acceptedTOSVersion': number; + /** + * + * @type {number} + * @memberof CurrentUser + */ + 'acceptedPrivacyVersion'?: number; /** * * @type {string} @@ -1437,6 +1443,12 @@ export interface CurrentUser { * @memberof CurrentUser */ 'isFriend': boolean; + /** + * + * @type {string} + * @memberof CurrentUser + */ + 'last_activity'?: string; /** * * @type {string} @@ -1485,6 +1497,12 @@ export interface CurrentUser { * @memberof CurrentUser */ 'pastDisplayNames': Array; + /** + * + * @type {CurrentUserPresence} + * @memberof CurrentUser + */ + 'presence'?: CurrentUserPresence; /** * * @type {string} @@ -1557,6 +1575,12 @@ export interface CurrentUser { * @memberof CurrentUser */ 'unsubscribe': boolean; + /** + * + * @type {string} + * @memberof CurrentUser + */ + 'updated_at'?: string; /** * * @type {string} @@ -1571,6 +1595,91 @@ export interface CurrentUser { */ 'username'?: string; } +/** + * + * @export + * @interface CurrentUserPresence + */ +export interface CurrentUserPresence { + /** + * + * @type {string} + * @memberof CurrentUserPresence + */ + 'avatarThumbnail'?: string | null; + /** + * + * @type {string} + * @memberof CurrentUserPresence + */ + 'displayName'?: string; + /** + * + * @type {Array} + * @memberof CurrentUserPresence + */ + 'groups'?: Array | null; + /** + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof CurrentUserPresence + */ + 'id'?: string; + /** + * + * @type {string} + * @memberof CurrentUserPresence + */ + 'instance'?: string | null; + /** + * either an InstanceType or an empty string + * @type {string} + * @memberof CurrentUserPresence + */ + 'instanceType'?: string | null; + /** + * + * @type {string} + * @memberof CurrentUserPresence + */ + 'isRejoining'?: string | null; + /** + * either a Platform or an empty string + * @type {string} + * @memberof CurrentUserPresence + */ + 'platform'?: string | null; + /** + * + * @type {string} + * @memberof CurrentUserPresence + */ + 'profilePicOverride'?: string | null; + /** + * either a UserStatus or empty string + * @type {string} + * @memberof CurrentUserPresence + */ + 'status'?: string | null; + /** + * + * @type {string} + * @memberof CurrentUserPresence + */ + 'travelingToInstance'?: string | null; + /** + * WorldID be \"offline\" on User profiles if you are not friends with that user. + * @type {string} + * @memberof CurrentUserPresence + */ + 'travelingToWorld'?: string; + /** + * WorldID be \"offline\" on User profiles if you are not friends with that user. + * @type {string} + * @memberof CurrentUserPresence + */ + 'world'?: string; +} /** * Used to identify which API deployment cluster is currently responding. `blue` and `green` are used by Production. `grape`and `cherry` are used during Development. [Blue Green Deployment by Martin Fowler](https://martinfowler.com/bliki/BlueGreenDeployment.html) * @export @@ -3487,7 +3596,7 @@ export interface LimitedUser { * @type {string} * @memberof LimitedUser */ - 'fallbackAvatar': string; + 'fallbackAvatar'?: string; /** * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} @@ -5421,6 +5530,12 @@ export interface World { * @memberof World */ 'capacity': number; + /** + * + * @type {number} + * @memberof World + */ + 'recommendedCapacity': number; /** * * @type {string} diff --git a/base.ts b/base.ts index b67d33d..0063560 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.12.0 + * The version of the OpenAPI document: 1.13.0 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index b614ae1..a1bfba0 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.12.0 + * The version of the OpenAPI document: 1.13.0 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index 320f2e7..d496e3b 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.12.0 + * The version of the OpenAPI document: 1.13.0 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index 7cd13c4..fe98ea8 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.12.0 + * The version of the OpenAPI document: 1.13.0 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index 142fb4b..ebbe883 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.12.0", + "version": "1.13.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.12.0", + "version": "1.13.0", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index ce44817..cdbcde3 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.12.0", + "version": "1.13.0", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "repository": { From ac815110a442705f36aa8f053a1a72fa694bdfbe Mon Sep 17 00:00:00 2001 From: VRCCat Date: Thu, 21 Sep 2023 04:42:58 +0000 Subject: [PATCH 091/130] Upgrade Node SDK to spec 1.14.0 --- api.ts | 5 +++-- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 ++-- package.json | 2 +- 7 files changed, 10 insertions(+), 9 deletions(-) diff --git a/api.ts b/api.ts index 3728eac..cf4ae07 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.13.0 + * The version of the OpenAPI document: 1.14.0 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -3341,7 +3341,8 @@ export const InstanceType = { Public: 'public', Hidden: 'hidden', Friends: 'friends', - Private: 'private' + Private: 'private', + Group: 'group' } as const; export type InstanceType = typeof InstanceType[keyof typeof InstanceType]; diff --git a/base.ts b/base.ts index 0063560..2ebe221 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.13.0 + * The version of the OpenAPI document: 1.14.0 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index a1bfba0..7176471 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.13.0 + * The version of the OpenAPI document: 1.14.0 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index d496e3b..dc49f7c 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.13.0 + * The version of the OpenAPI document: 1.14.0 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index fe98ea8..01ebf45 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.13.0 + * The version of the OpenAPI document: 1.14.0 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index ebbe883..40629d2 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.13.0", + "version": "1.14.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.13.0", + "version": "1.14.0", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index cdbcde3..88d52c0 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.13.0", + "version": "1.14.0", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "repository": { From db6ade99fa072abc7b76496337f50a8da3441db2 Mon Sep 17 00:00:00 2001 From: VRCCat Date: Wed, 4 Oct 2023 02:14:11 +0000 Subject: [PATCH 092/130] Upgrade Node SDK to spec 1.15.0 --- api.ts | 4 ++-- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 ++-- package.json | 2 +- 7 files changed, 9 insertions(+), 9 deletions(-) diff --git a/api.ts b/api.ts index cf4ae07..f221292 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.14.0 + * The version of the OpenAPI document: 1.15.0 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -5668,7 +5668,7 @@ export interface World { * @type {Array} * @memberof World */ - 'unityPackages': Array; + 'unityPackages'?: Array; /** * * @type {string} diff --git a/base.ts b/base.ts index 2ebe221..a653ed3 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.14.0 + * The version of the OpenAPI document: 1.15.0 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index 7176471..e0a7036 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.14.0 + * The version of the OpenAPI document: 1.15.0 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index dc49f7c..51e4e35 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.14.0 + * The version of the OpenAPI document: 1.15.0 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index 01ebf45..0d800ec 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.14.0 + * The version of the OpenAPI document: 1.15.0 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index 40629d2..5b4ba98 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.14.0", + "version": "1.15.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.14.0", + "version": "1.15.0", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index 88d52c0..41a4122 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.14.0", + "version": "1.15.0", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "repository": { From 3d026b1fef2beb69274a7fe682de868b10dbc0c6 Mon Sep 17 00:00:00 2001 From: VRCCat Date: Sat, 30 Dec 2023 18:05:04 +0000 Subject: [PATCH 093/130] Upgrade Node SDK to spec 1.16.0 --- api.ts | 88 ++++++++++++++++++++++++++++++++++++++++++----- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 +-- package.json | 2 +- 7 files changed, 87 insertions(+), 15 deletions(-) diff --git a/api.ts b/api.ts index f221292..62dcc92 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.15.0 + * The version of the OpenAPI document: 1.16.0 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -1352,6 +1352,12 @@ export interface CurrentUser { * @memberof CurrentUser */ 'currentAvatarThumbnailImageUrl': string; + /** + * + * @type {Array} + * @memberof CurrentUser + */ + 'currentAvatarTags'?: Array; /** * * @type {string} @@ -1407,6 +1413,24 @@ export interface CurrentUser { * @memberof CurrentUser */ 'hasBirthday': boolean; + /** + * + * @type {boolean} + * @memberof CurrentUser + */ + 'hideContentFilterSettings'?: boolean; + /** + * + * @type {string} + * @memberof CurrentUser + */ + 'userLanguage'?: string | null; + /** + * + * @type {string} + * @memberof CurrentUser + */ + 'userLanguageCode'?: string | null; /** * * @type {boolean} @@ -1479,6 +1503,24 @@ export interface CurrentUser { * @memberof CurrentUser */ 'oculusId': string; + /** + * + * @type {string} + * @memberof CurrentUser + */ + 'googleId'?: string; + /** + * + * @type {string} + * @memberof CurrentUser + */ + 'picoId'?: string; + /** + * + * @type {string} + * @memberof CurrentUser + */ + 'viveId'?: string; /** * * @type {Array} @@ -3690,6 +3732,12 @@ export interface LimitedWorld { * @memberof LimitedWorld */ 'capacity': number; + /** + * + * @type {number} + * @memberof LimitedWorld + */ + 'recommendedCapacity'?: number; /** * * @type {string} @@ -3786,6 +3834,12 @@ export interface LimitedWorld { * @memberof LimitedWorld */ 'updated_at': string; + /** + * + * @type {Array} + * @memberof LimitedWorld + */ + 'udonProducts'?: Array; } /** * @@ -4659,7 +4713,13 @@ export interface UnityPackage { * @type {string} * @memberof UnityPackage */ - 'assetUrl'?: string; + 'id': string; + /** + * + * @type {string} + * @memberof UnityPackage + */ + 'assetUrl'?: string | null; /** * * @type {object} @@ -4678,12 +4738,6 @@ export interface UnityPackage { * @memberof UnityPackage */ 'created_at'?: string; - /** - * - * @type {string} - * @memberof UnityPackage - */ - 'id': string; /** * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. * @type {string} @@ -4714,6 +4768,18 @@ export interface UnityPackage { * @memberof UnityPackage */ 'unityVersion': string; + /** + * + * @type {string} + * @memberof UnityPackage + */ + 'impostorUrl'?: string | null; + /** + * + * @type {string} + * @memberof UnityPackage + */ + 'scanStatus'?: string; } /** * @@ -5687,6 +5753,12 @@ export interface World { * @memberof World */ 'visits': number; + /** + * + * @type {Array} + * @memberof World + */ + 'udonProducts'?: Array; } /** * diff --git a/base.ts b/base.ts index a653ed3..782d71c 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.15.0 + * The version of the OpenAPI document: 1.16.0 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index e0a7036..a8392d6 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.15.0 + * The version of the OpenAPI document: 1.16.0 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index 51e4e35..43fda42 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.15.0 + * The version of the OpenAPI document: 1.16.0 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index 0d800ec..0a7ce29 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.15.0 + * The version of the OpenAPI document: 1.16.0 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index 5b4ba98..654c1dc 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.15.0", + "version": "1.16.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.15.0", + "version": "1.16.0", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index 41a4122..882223e 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.15.0", + "version": "1.16.0", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "repository": { From 4b476d1ba88d15a5493220753d3b0bc53c4b2e5b Mon Sep 17 00:00:00 2001 From: VRCCat Date: Fri, 5 Jan 2024 16:47:52 +0000 Subject: [PATCH 094/130] Upgrade Node SDK to spec 1.16.0 --- api.ts | 193 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 193 insertions(+) diff --git a/api.ts b/api.ts index 62dcc92..6f82155 100644 --- a/api.ts +++ b/api.ts @@ -3579,6 +3579,115 @@ export const LicenseType = { export type LicenseType = typeof LicenseType[keyof typeof LicenseType]; +/** + * + * @export + * @interface LimitedGroup + */ +export interface LimitedGroup { + /** + * + * @type {string} + * @memberof LimitedGroup + */ + 'id'?: string; + /** + * + * @type {string} + * @memberof LimitedGroup + */ + 'name'?: string; + /** + * + * @type {string} + * @memberof LimitedGroup + */ + 'shortCode'?: string; + /** + * + * @type {string} + * @memberof LimitedGroup + */ + 'discriminator'?: string; + /** + * + * @type {string} + * @memberof LimitedGroup + */ + 'description'?: string; + /** + * + * @type {string} + * @memberof LimitedGroup + */ + 'iconUrl'?: string | null; + /** + * + * @type {string} + * @memberof LimitedGroup + */ + 'bannerUrl'?: string | null; + /** + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof LimitedGroup + */ + 'ownerId'?: string; + /** + * + * @type {string} + * @memberof LimitedGroup + */ + 'rules'?: string | null; + /** + * + * @type {string} + * @memberof LimitedGroup + */ + 'iconId'?: string | null; + /** + * + * @type {string} + * @memberof LimitedGroup + */ + 'bannerId'?: string | null; + /** + * + * @type {number} + * @memberof LimitedGroup + */ + 'memberCount'?: number; + /** + * + * @type {Array} + * @memberof LimitedGroup + */ + 'tags'?: Array; + /** + * + * @type {string} + * @memberof LimitedGroup + */ + 'createdAt'?: string; + /** + * + * @type {GroupMemberStatus} + * @memberof LimitedGroup + */ + 'membershipStatus'?: GroupMemberStatus; + /** + * + * @type {boolean} + * @memberof LimitedGroup + */ + 'isSearchable'?: boolean; + /** + * + * @type {Array} + * @memberof LimitedGroup + */ + 'galleries'?: Array; +} /** * * @export @@ -10799,6 +10908,51 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio options: localVarRequestOptions, }; }, + /** + * Searches Groups by name or shortCode + * @summary Search Group + * @param {string} [query] Query to search for, can be either Group Name or Group shortCode + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {number} [n] The number of objects to return. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + searchGroups: async (query?: string, offset?: number, n?: number, options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/groups`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (query !== undefined) { + localVarQueryParameter['query'] = query; + } + + if (offset !== undefined) { + localVarQueryParameter['offset'] = offset; + } + + if (n !== undefined) { + localVarQueryParameter['n'] = n; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, /** * Unbans a user from a Group. * @summary Unban Group Member @@ -11395,6 +11549,19 @@ export const GroupsApiFp = function(configuration?: Configuration) { const localVarAxiosArgs = await localVarAxiosParamCreator.respondGroupJoinRequest(groupId, userId, respondGroupJoinRequest, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, + /** + * Searches Groups by name or shortCode + * @summary Search Group + * @param {string} [query] Query to search for, can be either Group Name or Group shortCode + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {number} [n] The number of objects to return. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async searchGroups(query?: string, offset?: number, n?: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.searchGroups(query, offset, n, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** * Unbans a user from a Group. * @summary Unban Group Member @@ -11811,6 +11978,18 @@ export const GroupsApiFactory = function (configuration?: Configuration, basePat respondGroupJoinRequest(groupId: string, userId: string, respondGroupJoinRequest?: RespondGroupJoinRequest, options?: any): AxiosPromise { return localVarFp.respondGroupJoinRequest(groupId, userId, respondGroupJoinRequest, options).then((request) => request(axios, basePath)); }, + /** + * Searches Groups by name or shortCode + * @summary Search Group + * @param {string} [query] Query to search for, can be either Group Name or Group shortCode + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {number} [n] The number of objects to return. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + searchGroups(query?: string, offset?: number, n?: number, options?: any): AxiosPromise> { + return localVarFp.searchGroups(query, offset, n, options).then((request) => request(axios, basePath)); + }, /** * Unbans a user from a Group. * @summary Unban Group Member @@ -12284,6 +12463,20 @@ export class GroupsApi extends BaseAPI { return GroupsApiFp(this.configuration).respondGroupJoinRequest(groupId, userId, respondGroupJoinRequest, options).then((request) => request(this.axios, this.basePath)); } + /** + * Searches Groups by name or shortCode + * @summary Search Group + * @param {string} [query] Query to search for, can be either Group Name or Group shortCode + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {number} [n] The number of objects to return. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof GroupsApi + */ + public searchGroups(query?: string, offset?: number, n?: number, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).searchGroups(query, offset, n, options).then((request) => request(this.axios, this.basePath)); + } + /** * Unbans a user from a Group. * @summary Unban Group Member From 5e5a168cae5fa30f04c036e3386d1ee1d00f0a87 Mon Sep 17 00:00:00 2001 From: VRCCat Date: Fri, 5 Jan 2024 16:53:50 +0000 Subject: [PATCH 095/130] Upgrade Node SDK to spec 1.16.2 --- api.ts | 2 +- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 ++-- package.json | 2 +- 7 files changed, 8 insertions(+), 8 deletions(-) diff --git a/api.ts b/api.ts index 6f82155..2811019 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.16.0 + * The version of the OpenAPI document: 1.16.2 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/base.ts b/base.ts index 782d71c..a16faa5 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.16.0 + * The version of the OpenAPI document: 1.16.2 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index a8392d6..dd10113 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.16.0 + * The version of the OpenAPI document: 1.16.2 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index 43fda42..58fba39 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.16.0 + * The version of the OpenAPI document: 1.16.2 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index 0a7ce29..4fff949 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.16.0 + * The version of the OpenAPI document: 1.16.2 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index 654c1dc..2bf8154 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.16.0", + "version": "1.16.2", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.16.0", + "version": "1.16.2", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index 882223e..52901a4 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.16.0", + "version": "1.16.2", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "repository": { From 76a87273600ff0ad17507fd8d05b2b89730590e5 Mon Sep 17 00:00:00 2001 From: VRCCat Date: Fri, 26 Jan 2024 02:55:20 +0000 Subject: [PATCH 096/130] Upgrade Node SDK to spec 1.16.3 --- api.ts | 11 ++++++----- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 16 ++++++++-------- package.json | 2 +- 7 files changed, 19 insertions(+), 18 deletions(-) diff --git a/api.ts b/api.ts index 2811019..dd5d48f 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.16.2 + * The version of the OpenAPI document: 1.16.3 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -3724,13 +3724,13 @@ export interface LimitedUser { * @type {string} * @memberof LimitedUser */ - 'currentAvatarImageUrl': string; + 'currentAvatarImageUrl'?: string; /** * When profilePicOverride is not empty, use it instead. * @type {string} * @memberof LimitedUser */ - 'currentAvatarThumbnailImageUrl': string; + 'currentAvatarThumbnailImageUrl'?: string; /** * * @type {DeveloperType} @@ -3772,7 +3772,7 @@ export interface LimitedUser { * @type {string} * @memberof LimitedUser */ - 'profilePicOverride': string; + 'profilePicOverride'?: string; /** * * @type {UserStatus} @@ -3796,7 +3796,7 @@ export interface LimitedUser { * @type {string} * @memberof LimitedUser */ - 'userIcon': string; + 'userIcon'?: string; /** * -| **DEPRECATED:** VRChat API no longer return usernames of other users. [See issue by Tupper for more information](https://github.com/pypy-vrc/VRCX/issues/429). * @type {string} @@ -4129,6 +4129,7 @@ export const NotificationType = { FriendRequest: 'friendRequest', Invite: 'invite', InviteResponse: 'inviteResponse', + Message: 'message', RequestInvite: 'requestInvite', RequestInviteResponse: 'requestInviteResponse', Votetokick: 'votetokick' diff --git a/base.ts b/base.ts index a16faa5..c2ba4df 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.16.2 + * The version of the OpenAPI document: 1.16.3 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index dd10113..93ad6e1 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.16.2 + * The version of the OpenAPI document: 1.16.3 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index 58fba39..12605e5 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.16.2 + * The version of the OpenAPI document: 1.16.3 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index 4fff949..68e0898 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.16.2 + * The version of the OpenAPI document: 1.16.3 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index 2bf8154..63f4491 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.16.2", + "version": "1.16.3", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.16.2", + "version": "1.16.3", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", @@ -56,9 +56,9 @@ } }, "node_modules/follow-redirects": { - "version": "1.15.2", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz", - "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==", + "version": "1.15.5", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.5.tgz", + "integrity": "sha512-vSFWUON1B+yAw1VN4xMfxgn5fTUiaOzAJCKBwIIgT/+7CuGy9+r+5gITvP62j3RmaD5Ph65UaERdOSRGUzZtgw==", "funding": [ { "type": "individual", @@ -171,9 +171,9 @@ } }, "follow-redirects": { - "version": "1.15.2", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz", - "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==" + "version": "1.15.5", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.5.tgz", + "integrity": "sha512-vSFWUON1B+yAw1VN4xMfxgn5fTUiaOzAJCKBwIIgT/+7CuGy9+r+5gITvP62j3RmaD5Ph65UaERdOSRGUzZtgw==" }, "is-redirect": { "version": "1.0.0", diff --git a/package.json b/package.json index 52901a4..17e85c3 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.16.2", + "version": "1.16.3", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "repository": { From cba1a257b6a4c0dc331774a59866bf3b0afab1f8 Mon Sep 17 00:00:00 2001 From: VRCCat Date: Fri, 2 Feb 2024 15:25:21 +0000 Subject: [PATCH 097/130] Upgrade Node SDK to spec 1.16.4 --- api.ts | 74 ++++++++++++++++++++++++++++++++++++++++++----- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 +-- package.json | 2 +- 7 files changed, 73 insertions(+), 15 deletions(-) diff --git a/api.ts b/api.ts index dd5d48f..0c2496c 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.16.3 + * The version of the OpenAPI document: 1.16.4 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -2658,6 +2658,12 @@ export interface GroupMember { * @memberof GroupMember */ 'roleIds'?: Array; + /** + * + * @type {Array} + * @memberof GroupMember + */ + 'mRoleIds'?: Array; /** * * @type {string} @@ -2700,6 +2706,18 @@ export interface GroupMember { * @memberof GroupMember */ 'managerNotes'?: string | null; + /** + * + * @type {string} + * @memberof GroupMember + */ + 'lastPostReadAt'?: string; + /** + * + * @type {boolean} + * @memberof GroupMember + */ + 'hasJoinedFromPurchase'?: boolean; } /** * Only visible via the /groups/:groupId/members endpoint, **not** when fetching a specific user. @@ -2731,6 +2749,24 @@ export interface GroupMemberLimitedUser { * @memberof GroupMemberLimitedUser */ 'iconUrl'?: string; + /** + * + * @type {string} + * @memberof GroupMemberLimitedUser + */ + 'profilePicOverride'?: string; + /** + * + * @type {string} + * @memberof GroupMemberLimitedUser + */ + 'currentAvatarThumbnailImageUrl'?: string; + /** + * + * @type {Array} + * @memberof GroupMemberLimitedUser + */ + 'currentAvatarTags'?: Array; } /** * @@ -2979,6 +3015,20 @@ export const GroupRoleTemplate = { export type GroupRoleTemplate = typeof GroupRoleTemplate[keyof typeof GroupRoleTemplate]; +/** + * + * @export + * @enum {string} + */ + +export const GroupSearchSort = { + Asc: 'joinedAt:asc', + Desc: 'joinedAt:desc' +} as const; + +export type GroupSearchSort = typeof GroupSearchSort[keyof typeof GroupSearchSort]; + + /** * * @export @@ -10561,10 +10611,11 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio * @param {string} groupId Must be a valid group ID. * @param {number} [n] The number of objects to return. * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {GroupSearchSort} [sort] The sort order of Group Member results * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getGroupMembers: async (groupId: string, n?: number, offset?: number, options: AxiosRequestConfig = {}): Promise => { + getGroupMembers: async (groupId: string, n?: number, offset?: number, sort?: GroupSearchSort, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'groupId' is not null or undefined assertParamExists('getGroupMembers', 'groupId', groupId) const localVarPath = `/groups/{groupId}/members` @@ -10590,6 +10641,10 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio localVarQueryParameter['offset'] = offset; } + if (sort !== undefined) { + localVarQueryParameter['sort'] = sort; + } + setSearchParams(localVarUrlObj, localVarQueryParameter); @@ -11450,11 +11505,12 @@ export const GroupsApiFp = function(configuration?: Configuration) { * @param {string} groupId Must be a valid group ID. * @param {number} [n] The number of objects to return. * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {GroupSearchSort} [sort] The sort order of Group Member results * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getGroupMembers(groupId: string, n?: number, offset?: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getGroupMembers(groupId, n, offset, options); + async getGroupMembers(groupId: string, n?: number, offset?: number, sort?: GroupSearchSort, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getGroupMembers(groupId, n, offset, sort, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** @@ -11888,11 +11944,12 @@ export const GroupsApiFactory = function (configuration?: Configuration, basePat * @param {string} groupId Must be a valid group ID. * @param {number} [n] The number of objects to return. * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {GroupSearchSort} [sort] The sort order of Group Member results * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getGroupMembers(groupId: string, n?: number, offset?: number, options?: any): AxiosPromise> { - return localVarFp.getGroupMembers(groupId, n, offset, options).then((request) => request(axios, basePath)); + getGroupMembers(groupId: string, n?: number, offset?: number, sort?: GroupSearchSort, options?: any): AxiosPromise> { + return localVarFp.getGroupMembers(groupId, n, offset, sort, options).then((request) => request(axios, basePath)); }, /** * Returns a List of all possible/available permissions for a Group. @@ -12355,12 +12412,13 @@ export class GroupsApi extends BaseAPI { * @param {string} groupId Must be a valid group ID. * @param {number} [n] The number of objects to return. * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {GroupSearchSort} [sort] The sort order of Group Member results * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof GroupsApi */ - public getGroupMembers(groupId: string, n?: number, offset?: number, options?: AxiosRequestConfig) { - return GroupsApiFp(this.configuration).getGroupMembers(groupId, n, offset, options).then((request) => request(this.axios, this.basePath)); + public getGroupMembers(groupId: string, n?: number, offset?: number, sort?: GroupSearchSort, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).getGroupMembers(groupId, n, offset, sort, options).then((request) => request(this.axios, this.basePath)); } /** diff --git a/base.ts b/base.ts index c2ba4df..850af2f 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.16.3 + * The version of the OpenAPI document: 1.16.4 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index 93ad6e1..4db4a43 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.16.3 + * The version of the OpenAPI document: 1.16.4 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index 12605e5..c4ba0ec 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.16.3 + * The version of the OpenAPI document: 1.16.4 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index 68e0898..db3974a 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.16.3 + * The version of the OpenAPI document: 1.16.4 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index 63f4491..edf1f13 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.16.3", + "version": "1.16.4", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.16.3", + "version": "1.16.4", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index 17e85c3..c7abf42 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.16.3", + "version": "1.16.4", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "repository": { From 3b2635f893055f4539e93ff2e54a0fc5bf47765b Mon Sep 17 00:00:00 2001 From: VRCCat Date: Sun, 11 Feb 2024 03:26:06 +0000 Subject: [PATCH 098/130] Upgrade Node SDK to spec 1.16.5 --- api.ts | 70 +++++++++++++++++++++++++++++++++++++++++++++-- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 +-- package.json | 2 +- 7 files changed, 75 insertions(+), 9 deletions(-) diff --git a/api.ts b/api.ts index 0c2496c..5c21f59 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.16.4 + * The version of the OpenAPI document: 1.16.5 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -2610,11 +2610,77 @@ export interface GroupLimitedMember { */ 'userId'?: string; /** - * + * Whether the user is representing the group. This makes the group show up above the name tag in-game. * @type {boolean} * @memberof GroupLimitedMember */ 'isRepresenting'?: boolean; + /** + * + * @type {Array} + * @memberof GroupLimitedMember + */ + 'roleIds'?: Array; + /** + * + * @type {Array} + * @memberof GroupLimitedMember + */ + 'mRoleIds'?: Array; + /** + * + * @type {string} + * @memberof GroupLimitedMember + */ + 'joinedAt'?: string; + /** + * + * @type {string} + * @memberof GroupLimitedMember + */ + 'membershipStatus'?: string; + /** + * + * @type {string} + * @memberof GroupLimitedMember + */ + 'visibility'?: string; + /** + * + * @type {boolean} + * @memberof GroupLimitedMember + */ + 'isSubscribedToAnnouncements'?: boolean; + /** + * Only visible via the /groups/:groupId/members endpoint, **not** when fetching a specific user. + * @type {string} + * @memberof GroupLimitedMember + */ + 'createdAt'?: string | null; + /** + * Only visible via the /groups/:groupId/members endpoint, **not** when fetching a specific user. + * @type {string} + * @memberof GroupLimitedMember + */ + 'bannedAt'?: string | null; + /** + * Only visible via the /groups/:groupId/members endpoint, **not** when fetching a specific user. + * @type {string} + * @memberof GroupLimitedMember + */ + 'managerNotes'?: string | null; + /** + * + * @type {string} + * @memberof GroupLimitedMember + */ + 'lastPostReadAt'?: string; + /** + * + * @type {boolean} + * @memberof GroupLimitedMember + */ + 'hasJoinedFromPurchase'?: boolean; } /** * diff --git a/base.ts b/base.ts index 850af2f..32641e1 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.16.4 + * The version of the OpenAPI document: 1.16.5 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index 4db4a43..a8a0459 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.16.4 + * The version of the OpenAPI document: 1.16.5 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index c4ba0ec..72882b3 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.16.4 + * The version of the OpenAPI document: 1.16.5 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index db3974a..64f7b6f 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.16.4 + * The version of the OpenAPI document: 1.16.5 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index edf1f13..17bc1af 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.16.4", + "version": "1.16.5", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.16.4", + "version": "1.16.5", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index c7abf42..8902506 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.16.4", + "version": "1.16.5", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "repository": { From 5f8b47a64ea60f636634bc434578fc6331fc73b4 Mon Sep 17 00:00:00 2001 From: VRCCat Date: Sat, 24 Feb 2024 15:10:18 +0000 Subject: [PATCH 099/130] Upgrade Node SDK to spec 1.16.6 --- api.ts | 176 +++++++++++++++++++++++++++++++++++++++++++++- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 +- package.json | 2 +- 7 files changed, 181 insertions(+), 9 deletions(-) diff --git a/api.ts b/api.ts index 5c21f59..ae80287 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.16.5 + * The version of the OpenAPI document: 1.16.6 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -929,6 +929,12 @@ export interface CreateAvatarRequest { * @memberof CreateAvatarRequest */ 'unityPackageUrl'?: string; + /** + * + * @type {string} + * @memberof CreateAvatarRequest + */ + 'unityVersion'?: string; } /** * @@ -2409,7 +2415,7 @@ export interface GroupAuditLogEntry { * @type {string} * @memberof GroupAuditLogEntry */ - 'actorDisplayname'?: string; + 'actorDisplayName'?: string; /** * Typically GroupID or GroupRoleID, but could be other types of IDs. * @type {string} @@ -4444,6 +4450,97 @@ export const ReleaseStatus = { export type ReleaseStatus = typeof ReleaseStatus[keyof typeof ReleaseStatus]; +/** + * + * @export + * @interface RepresentedGroup + */ +export interface RepresentedGroup { + /** + * + * @type {string} + * @memberof RepresentedGroup + */ + 'name'?: string; + /** + * + * @type {string} + * @memberof RepresentedGroup + */ + 'shortCode'?: string; + /** + * + * @type {string} + * @memberof RepresentedGroup + */ + 'discriminator'?: string; + /** + * + * @type {string} + * @memberof RepresentedGroup + */ + 'description'?: string; + /** + * + * @type {string} + * @memberof RepresentedGroup + */ + 'iconId'?: string | null; + /** + * + * @type {string} + * @memberof RepresentedGroup + */ + 'iconUrl'?: string | null; + /** + * + * @type {string} + * @memberof RepresentedGroup + */ + 'bannerId'?: string | null; + /** + * + * @type {string} + * @memberof RepresentedGroup + */ + 'bannerUrl'?: string | null; + /** + * + * @type {GroupPrivacy} + * @memberof RepresentedGroup + */ + 'privacy'?: GroupPrivacy; + /** + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof RepresentedGroup + */ + 'ownerId'?: string; + /** + * + * @type {number} + * @memberof RepresentedGroup + */ + 'memberCount'?: number; + /** + * + * @type {string} + * @memberof RepresentedGroup + */ + 'groupId'?: string; + /** + * + * @type {GroupUserVisibility} + * @memberof RepresentedGroup + */ + 'memberVisibility'?: GroupUserVisibility; + /** + * + * @type {boolean} + * @memberof RepresentedGroup + */ + 'isRepresenting'?: boolean; +} /** * * @export @@ -5067,6 +5164,12 @@ export interface UpdateAvatarRequest { * @memberof UpdateAvatarRequest */ 'unityPackageUrl'?: string; + /** + * + * @type {string} + * @memberof UpdateAvatarRequest + */ + 'unityVersion'?: string; } /** * @@ -15373,6 +15476,42 @@ export const UsersApiAxiosParamCreator = function (configuration?: Configuration + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Returns the current group that the user is currently representing + * @summary Get user\'s current represented group + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getUserRepresentedGroup: async (userId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'userId' is not null or undefined + assertParamExists('getUserRepresentedGroup', 'userId', userId) + const localVarPath = `/users/{userId}/groups/represented` + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -15529,6 +15668,17 @@ export const UsersApiFp = function(configuration?: Configuration) { const localVarAxiosArgs = await localVarAxiosParamCreator.getUserGroups(userId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, + /** + * Returns the current group that the user is currently representing + * @summary Get user\'s current represented group + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getUserRepresentedGroup(userId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getUserRepresentedGroup(userId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** * Search and list any users by text query * @summary Search All Users @@ -15606,6 +15756,16 @@ export const UsersApiFactory = function (configuration?: Configuration, basePath getUserGroups(userId: string, options?: any): AxiosPromise> { return localVarFp.getUserGroups(userId, options).then((request) => request(axios, basePath)); }, + /** + * Returns the current group that the user is currently representing + * @summary Get user\'s current represented group + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getUserRepresentedGroup(userId: string, options?: any): AxiosPromise { + return localVarFp.getUserRepresentedGroup(userId, options).then((request) => request(axios, basePath)); + }, /** * Search and list any users by text query * @summary Search All Users @@ -15689,6 +15849,18 @@ export class UsersApi extends BaseAPI { return UsersApiFp(this.configuration).getUserGroups(userId, options).then((request) => request(this.axios, this.basePath)); } + /** + * Returns the current group that the user is currently representing + * @summary Get user\'s current represented group + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof UsersApi + */ + public getUserRepresentedGroup(userId: string, options?: AxiosRequestConfig) { + return UsersApiFp(this.configuration).getUserRepresentedGroup(userId, options).then((request) => request(this.axios, this.basePath)); + } + /** * Search and list any users by text query * @summary Search All Users diff --git a/base.ts b/base.ts index 32641e1..6978aac 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.16.5 + * The version of the OpenAPI document: 1.16.6 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index a8a0459..95b5148 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.16.5 + * The version of the OpenAPI document: 1.16.6 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index 72882b3..cd9d75b 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.16.5 + * The version of the OpenAPI document: 1.16.6 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index 64f7b6f..25b3f2c 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.16.5 + * The version of the OpenAPI document: 1.16.6 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index 17bc1af..0c5afd8 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.16.5", + "version": "1.16.6", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.16.5", + "version": "1.16.6", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index 8902506..a492fe0 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.16.5", + "version": "1.16.6", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "repository": { From d55eab683f83ae3ebdca12bb34bf787de0de6a47 Mon Sep 17 00:00:00 2001 From: VRCCat Date: Fri, 22 Mar 2024 06:32:56 +0000 Subject: [PATCH 100/130] Upgrade Node SDK to spec 1.16.7 --- api.ts | 66 +++++++++++++++++++++++++++++++++++------------ base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 +-- package.json | 2 +- 7 files changed, 56 insertions(+), 24 deletions(-) diff --git a/api.ts b/api.ts index ae80287..dfaefdd 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.16.6 + * The version of the OpenAPI document: 1.16.7 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -2680,7 +2680,7 @@ export interface GroupLimitedMember { * @type {string} * @memberof GroupLimitedMember */ - 'lastPostReadAt'?: string; + 'lastPostReadAt'?: string | null; /** * * @type {boolean} @@ -2783,7 +2783,7 @@ export interface GroupMember { * @type {string} * @memberof GroupMember */ - 'lastPostReadAt'?: string; + 'lastPostReadAt'?: string | null; /** * * @type {boolean} @@ -10702,10 +10702,12 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio * Returns a list of members that have been invited to the Group. * @summary Get Group Invites Sent * @param {string} groupId Must be a valid group ID. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getGroupInvites: async (groupId: string, options: AxiosRequestConfig = {}): Promise => { + getGroupInvites: async (groupId: string, n?: number, offset?: number, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'groupId' is not null or undefined assertParamExists('getGroupInvites', 'groupId', groupId) const localVarPath = `/groups/{groupId}/invites` @@ -10723,6 +10725,14 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio // authentication authCookie required + if (n !== undefined) { + localVarQueryParameter['n'] = n; + } + + if (offset !== undefined) { + localVarQueryParameter['offset'] = offset; + } + setSearchParams(localVarUrlObj, localVarQueryParameter); @@ -10865,10 +10875,12 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio * Returns a list of members that have requested to join the Group. * @summary Get Group Join Requests * @param {string} groupId Must be a valid group ID. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getGroupRequests: async (groupId: string, options: AxiosRequestConfig = {}): Promise => { + getGroupRequests: async (groupId: string, n?: number, offset?: number, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'groupId' is not null or undefined assertParamExists('getGroupRequests', 'groupId', groupId) const localVarPath = `/groups/{groupId}/requests` @@ -10886,6 +10898,14 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio // authentication authCookie required + if (n !== undefined) { + localVarQueryParameter['n'] = n; + } + + if (offset !== undefined) { + localVarQueryParameter['offset'] = offset; + } + setSearchParams(localVarUrlObj, localVarQueryParameter); @@ -11649,11 +11669,13 @@ export const GroupsApiFp = function(configuration?: Configuration) { * Returns a list of members that have been invited to the Group. * @summary Get Group Invites Sent * @param {string} groupId Must be a valid group ID. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getGroupInvites(groupId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getGroupInvites(groupId, options); + async getGroupInvites(groupId: string, n?: number, offset?: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getGroupInvites(groupId, n, offset, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** @@ -11697,11 +11719,13 @@ export const GroupsApiFp = function(configuration?: Configuration) { * Returns a list of members that have requested to join the Group. * @summary Get Group Join Requests * @param {string} groupId Must be a valid group ID. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getGroupRequests(groupId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getGroupRequests(groupId, options); + async getGroupRequests(groupId: string, n?: number, offset?: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getGroupRequests(groupId, n, offset, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** @@ -12090,11 +12114,13 @@ export const GroupsApiFactory = function (configuration?: Configuration, basePat * Returns a list of members that have been invited to the Group. * @summary Get Group Invites Sent * @param {string} groupId Must be a valid group ID. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getGroupInvites(groupId: string, options?: any): AxiosPromise> { - return localVarFp.getGroupInvites(groupId, options).then((request) => request(axios, basePath)); + getGroupInvites(groupId: string, n?: number, offset?: number, options?: any): AxiosPromise> { + return localVarFp.getGroupInvites(groupId, n, offset, options).then((request) => request(axios, basePath)); }, /** * Returns a LimitedGroup Member. @@ -12134,11 +12160,13 @@ export const GroupsApiFactory = function (configuration?: Configuration, basePat * Returns a list of members that have requested to join the Group. * @summary Get Group Join Requests * @param {string} groupId Must be a valid group ID. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getGroupRequests(groupId: string, options?: any): AxiosPromise> { - return localVarFp.getGroupRequests(groupId, options).then((request) => request(axios, basePath)); + getGroupRequests(groupId: string, n?: number, offset?: number, options?: any): AxiosPromise> { + return localVarFp.getGroupRequests(groupId, n, offset, options).then((request) => request(axios, basePath)); }, /** * Returns a Group Role by ID. @@ -12554,12 +12582,14 @@ export class GroupsApi extends BaseAPI { * Returns a list of members that have been invited to the Group. * @summary Get Group Invites Sent * @param {string} groupId Must be a valid group ID. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof GroupsApi */ - public getGroupInvites(groupId: string, options?: AxiosRequestConfig) { - return GroupsApiFp(this.configuration).getGroupInvites(groupId, options).then((request) => request(this.axios, this.basePath)); + public getGroupInvites(groupId: string, n?: number, offset?: number, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).getGroupInvites(groupId, n, offset, options).then((request) => request(this.axios, this.basePath)); } /** @@ -12606,12 +12636,14 @@ export class GroupsApi extends BaseAPI { * Returns a list of members that have requested to join the Group. * @summary Get Group Join Requests * @param {string} groupId Must be a valid group ID. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof GroupsApi */ - public getGroupRequests(groupId: string, options?: AxiosRequestConfig) { - return GroupsApiFp(this.configuration).getGroupRequests(groupId, options).then((request) => request(this.axios, this.basePath)); + public getGroupRequests(groupId: string, n?: number, offset?: number, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).getGroupRequests(groupId, n, offset, options).then((request) => request(this.axios, this.basePath)); } /** diff --git a/base.ts b/base.ts index 6978aac..6dd3588 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.16.6 + * The version of the OpenAPI document: 1.16.7 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index 95b5148..920ec44 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.16.6 + * The version of the OpenAPI document: 1.16.7 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index cd9d75b..34487b8 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.16.6 + * The version of the OpenAPI document: 1.16.7 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index 25b3f2c..35c2919 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.16.6 + * The version of the OpenAPI document: 1.16.7 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index 0c5afd8..0a652e5 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.16.6", + "version": "1.16.7", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.16.6", + "version": "1.16.7", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index a492fe0..40327bd 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.16.6", + "version": "1.16.7", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "repository": { From 0012d278b94003a3f00db945e4f45a675301281d Mon Sep 17 00:00:00 2001 From: VRCCat Date: Sun, 14 Apr 2024 22:16:06 +0000 Subject: [PATCH 101/130] Upgrade Node SDK to spec 1.16.8 --- api.ts | 355 +++++++++++++++++++++++++++++----------------- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 +- package.json | 2 +- 7 files changed, 231 insertions(+), 138 deletions(-) diff --git a/api.ts b/api.ts index dfaefdd..1fa2004 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.16.7 + * The version of the OpenAPI document: 1.16.8 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -2575,6 +2575,20 @@ export interface GroupGalleryImage { */ 'approvedAt'?: string; } +/** + * + * @export + * @enum {string} + */ + +export const GroupJoinRequestAction = { + Accept: 'accept', + Reject: 'reject' +} as const; + +export type GroupJoinRequestAction = typeof GroupJoinRequestAction[keyof typeof GroupJoinRequestAction]; + + /** * * @export @@ -2641,10 +2655,10 @@ export interface GroupLimitedMember { 'joinedAt'?: string; /** * - * @type {string} + * @type {GroupMemberStatus} * @memberof GroupLimitedMember */ - 'membershipStatus'?: string; + 'membershipStatus'?: GroupMemberStatus; /** * * @type {string} @@ -2741,13 +2755,13 @@ export interface GroupMember { * @type {string} * @memberof GroupMember */ - 'joinedAt'?: string; + 'joinedAt'?: string | null; /** * - * @type {string} + * @type {GroupMemberStatus} * @memberof GroupMember */ - 'membershipStatus'?: string; + 'membershipStatus'?: GroupMemberStatus; /** * * @type {string} @@ -2832,7 +2846,7 @@ export interface GroupMemberLimitedUser { * @type {string} * @memberof GroupMemberLimitedUser */ - 'currentAvatarThumbnailImageUrl'?: string; + 'currentAvatarThumbnailImageUrl'?: string | null; /** * * @type {Array} @@ -2850,7 +2864,8 @@ export const GroupMemberStatus = { Inactive: 'inactive', Member: 'member', Requested: 'requested', - Invited: 'invited' + Invited: 'invited', + Banned: 'banned' } as const; export type GroupMemberStatus = typeof GroupMemberStatus[keyof typeof GroupMemberStatus]; @@ -3456,6 +3471,54 @@ export interface Instance { * @memberof Instance */ 'private'?: string; + /** + * + * @type {boolean} + * @memberof Instance + */ + 'queueEnabled': boolean; + /** + * + * @type {number} + * @memberof Instance + */ + 'queueSize': number; + /** + * + * @type {number} + * @memberof Instance + */ + 'recommendedCapacity': number; + /** + * + * @type {boolean} + * @memberof Instance + */ + 'roleRestricted': boolean; + /** + * + * @type {boolean} + * @memberof Instance + */ + 'strict': boolean; + /** + * + * @type {number} + * @memberof Instance + */ + 'userCount': number; + /** + * + * @type {World} + * @memberof Instance + */ + 'world': World; + /** + * The users field is present on instances created by the requesting user. + * @type {Array} + * @memberof Instance + */ + 'users'?: Array; } /** * @@ -4562,10 +4625,10 @@ export interface RequestInviteRequest { export interface RespondGroupJoinRequest { /** * - * @type {string} + * @type {GroupJoinRequestAction} * @memberof RespondGroupJoinRequest */ - 'action'?: string; + 'action': GroupJoinRequestAction; } /** * @@ -5997,7 +6060,7 @@ export interface World { * @type {string} * @memberof World */ - 'namespace': string; + 'namespace'?: string; /** * Will always be `0` when unauthenticated. * @type {number} @@ -6287,11 +6350,13 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf /** * Finishes the login sequence with a normal 2FA-generated code for accounts with 2FA-protection enabled. * @summary Verify 2FA code - * @param {TwoFactorAuthCode} [twoFactorAuthCode] + * @param {TwoFactorAuthCode} twoFactorAuthCode * @param {*} [options] Override http request option. * @throws {RequiredError} */ - verify2FA: async (twoFactorAuthCode?: TwoFactorAuthCode, options: AxiosRequestConfig = {}): Promise => { + verify2FA: async (twoFactorAuthCode: TwoFactorAuthCode, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'twoFactorAuthCode' is not null or undefined + assertParamExists('verify2FA', 'twoFactorAuthCode', twoFactorAuthCode) const localVarPath = `/auth/twofactorauth/totp/verify`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -6323,11 +6388,13 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf /** * Finishes the login sequence with an 2FA email code. * @summary Verify 2FA email code - * @param {TwoFactorEmailCode} [twoFactorEmailCode] + * @param {TwoFactorEmailCode} twoFactorEmailCode * @param {*} [options] Override http request option. * @throws {RequiredError} */ - verify2FAEmailCode: async (twoFactorEmailCode?: TwoFactorEmailCode, options: AxiosRequestConfig = {}): Promise => { + verify2FAEmailCode: async (twoFactorEmailCode: TwoFactorEmailCode, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'twoFactorEmailCode' is not null or undefined + assertParamExists('verify2FAEmailCode', 'twoFactorEmailCode', twoFactorEmailCode) const localVarPath = `/auth/twofactorauth/emailotp/verify`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -6391,11 +6458,13 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf /** * Finishes the login sequence with an OTP (One Time Password) recovery code for accounts with 2FA-protection enabled. * @summary Verify 2FA code with Recovery code - * @param {TwoFactorAuthCode} [twoFactorAuthCode] + * @param {TwoFactorAuthCode} twoFactorAuthCode * @param {*} [options] Override http request option. * @throws {RequiredError} */ - verifyRecoveryCode: async (twoFactorAuthCode?: TwoFactorAuthCode, options: AxiosRequestConfig = {}): Promise => { + verifyRecoveryCode: async (twoFactorAuthCode: TwoFactorAuthCode, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'twoFactorAuthCode' is not null or undefined + assertParamExists('verifyRecoveryCode', 'twoFactorAuthCode', twoFactorAuthCode) const localVarPath = `/auth/twofactorauth/otp/verify`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -6482,22 +6551,22 @@ export const AuthenticationApiFp = function(configuration?: Configuration) { /** * Finishes the login sequence with a normal 2FA-generated code for accounts with 2FA-protection enabled. * @summary Verify 2FA code - * @param {TwoFactorAuthCode} [twoFactorAuthCode] + * @param {TwoFactorAuthCode} twoFactorAuthCode * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async verify2FA(twoFactorAuthCode?: TwoFactorAuthCode, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async verify2FA(twoFactorAuthCode: TwoFactorAuthCode, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.verify2FA(twoFactorAuthCode, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * Finishes the login sequence with an 2FA email code. * @summary Verify 2FA email code - * @param {TwoFactorEmailCode} [twoFactorEmailCode] + * @param {TwoFactorEmailCode} twoFactorEmailCode * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async verify2FAEmailCode(twoFactorEmailCode?: TwoFactorEmailCode, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async verify2FAEmailCode(twoFactorEmailCode: TwoFactorEmailCode, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.verify2FAEmailCode(twoFactorEmailCode, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -6514,11 +6583,11 @@ export const AuthenticationApiFp = function(configuration?: Configuration) { /** * Finishes the login sequence with an OTP (One Time Password) recovery code for accounts with 2FA-protection enabled. * @summary Verify 2FA code with Recovery code - * @param {TwoFactorAuthCode} [twoFactorAuthCode] + * @param {TwoFactorAuthCode} twoFactorAuthCode * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async verifyRecoveryCode(twoFactorAuthCode?: TwoFactorAuthCode, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async verifyRecoveryCode(twoFactorAuthCode: TwoFactorAuthCode, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.verifyRecoveryCode(twoFactorAuthCode, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -6576,21 +6645,21 @@ export const AuthenticationApiFactory = function (configuration?: Configuration, /** * Finishes the login sequence with a normal 2FA-generated code for accounts with 2FA-protection enabled. * @summary Verify 2FA code - * @param {TwoFactorAuthCode} [twoFactorAuthCode] + * @param {TwoFactorAuthCode} twoFactorAuthCode * @param {*} [options] Override http request option. * @throws {RequiredError} */ - verify2FA(twoFactorAuthCode?: TwoFactorAuthCode, options?: any): AxiosPromise { + verify2FA(twoFactorAuthCode: TwoFactorAuthCode, options?: any): AxiosPromise { return localVarFp.verify2FA(twoFactorAuthCode, options).then((request) => request(axios, basePath)); }, /** * Finishes the login sequence with an 2FA email code. * @summary Verify 2FA email code - * @param {TwoFactorEmailCode} [twoFactorEmailCode] + * @param {TwoFactorEmailCode} twoFactorEmailCode * @param {*} [options] Override http request option. * @throws {RequiredError} */ - verify2FAEmailCode(twoFactorEmailCode?: TwoFactorEmailCode, options?: any): AxiosPromise { + verify2FAEmailCode(twoFactorEmailCode: TwoFactorEmailCode, options?: any): AxiosPromise { return localVarFp.verify2FAEmailCode(twoFactorEmailCode, options).then((request) => request(axios, basePath)); }, /** @@ -6605,11 +6674,11 @@ export const AuthenticationApiFactory = function (configuration?: Configuration, /** * Finishes the login sequence with an OTP (One Time Password) recovery code for accounts with 2FA-protection enabled. * @summary Verify 2FA code with Recovery code - * @param {TwoFactorAuthCode} [twoFactorAuthCode] + * @param {TwoFactorAuthCode} twoFactorAuthCode * @param {*} [options] Override http request option. * @throws {RequiredError} */ - verifyRecoveryCode(twoFactorAuthCode?: TwoFactorAuthCode, options?: any): AxiosPromise { + verifyRecoveryCode(twoFactorAuthCode: TwoFactorAuthCode, options?: any): AxiosPromise { return localVarFp.verifyRecoveryCode(twoFactorAuthCode, options).then((request) => request(axios, basePath)); }, }; @@ -6674,24 +6743,24 @@ export class AuthenticationApi extends BaseAPI { /** * Finishes the login sequence with a normal 2FA-generated code for accounts with 2FA-protection enabled. * @summary Verify 2FA code - * @param {TwoFactorAuthCode} [twoFactorAuthCode] + * @param {TwoFactorAuthCode} twoFactorAuthCode * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof AuthenticationApi */ - public verify2FA(twoFactorAuthCode?: TwoFactorAuthCode, options?: AxiosRequestConfig) { + public verify2FA(twoFactorAuthCode: TwoFactorAuthCode, options?: AxiosRequestConfig) { return AuthenticationApiFp(this.configuration).verify2FA(twoFactorAuthCode, options).then((request) => request(this.axios, this.basePath)); } /** * Finishes the login sequence with an 2FA email code. * @summary Verify 2FA email code - * @param {TwoFactorEmailCode} [twoFactorEmailCode] + * @param {TwoFactorEmailCode} twoFactorEmailCode * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof AuthenticationApi */ - public verify2FAEmailCode(twoFactorEmailCode?: TwoFactorEmailCode, options?: AxiosRequestConfig) { + public verify2FAEmailCode(twoFactorEmailCode: TwoFactorEmailCode, options?: AxiosRequestConfig) { return AuthenticationApiFp(this.configuration).verify2FAEmailCode(twoFactorEmailCode, options).then((request) => request(this.axios, this.basePath)); } @@ -6709,12 +6778,12 @@ export class AuthenticationApi extends BaseAPI { /** * Finishes the login sequence with an OTP (One Time Password) recovery code for accounts with 2FA-protection enabled. * @summary Verify 2FA code with Recovery code - * @param {TwoFactorAuthCode} [twoFactorAuthCode] + * @param {TwoFactorAuthCode} twoFactorAuthCode * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof AuthenticationApi */ - public verifyRecoveryCode(twoFactorAuthCode?: TwoFactorAuthCode, options?: AxiosRequestConfig) { + public verifyRecoveryCode(twoFactorAuthCode: TwoFactorAuthCode, options?: AxiosRequestConfig) { return AuthenticationApiFp(this.configuration).verifyRecoveryCode(twoFactorAuthCode, options).then((request) => request(this.axios, this.basePath)); } } @@ -9869,15 +9938,17 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio * @summary Add Group Gallery Image * @param {string} groupId Must be a valid group ID. * @param {string} groupGalleryId Must be a valid group gallery ID. - * @param {AddGroupGalleryImageRequest} [addGroupGalleryImageRequest] + * @param {AddGroupGalleryImageRequest} addGroupGalleryImageRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ - addGroupGalleryImage: async (groupId: string, groupGalleryId: string, addGroupGalleryImageRequest?: AddGroupGalleryImageRequest, options: AxiosRequestConfig = {}): Promise => { + addGroupGalleryImage: async (groupId: string, groupGalleryId: string, addGroupGalleryImageRequest: AddGroupGalleryImageRequest, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'groupId' is not null or undefined assertParamExists('addGroupGalleryImage', 'groupId', groupId) // verify required parameter 'groupGalleryId' is not null or undefined assertParamExists('addGroupGalleryImage', 'groupGalleryId', groupGalleryId) + // verify required parameter 'addGroupGalleryImageRequest' is not null or undefined + assertParamExists('addGroupGalleryImage', 'addGroupGalleryImageRequest', addGroupGalleryImageRequest) const localVarPath = `/groups/{groupId}/galleries/{groupGalleryId}/images` .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))) .replace(`{${"groupGalleryId"}}`, encodeURIComponent(String(groupGalleryId))); @@ -9956,13 +10027,15 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio * Bans a user from a Group. * @summary Ban Group Member * @param {string} groupId Must be a valid group ID. - * @param {BanGroupMemberRequest} [banGroupMemberRequest] + * @param {BanGroupMemberRequest} banGroupMemberRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ - banGroupMember: async (groupId: string, banGroupMemberRequest?: BanGroupMemberRequest, options: AxiosRequestConfig = {}): Promise => { + banGroupMember: async (groupId: string, banGroupMemberRequest: BanGroupMemberRequest, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'groupId' is not null or undefined assertParamExists('banGroupMember', 'groupId', groupId) + // verify required parameter 'banGroupMemberRequest' is not null or undefined + assertParamExists('banGroupMember', 'banGroupMemberRequest', banGroupMemberRequest) const localVarPath = `/groups/{groupId}/bans` .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. @@ -10031,11 +10104,13 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio /** * Creates a Group and returns a Group object. **Requires VRC+ Subscription.** * @summary Create Group - * @param {CreateGroupRequest} [createGroupRequest] + * @param {CreateGroupRequest} createGroupRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ - createGroup: async (createGroupRequest?: CreateGroupRequest, options: AxiosRequestConfig = {}): Promise => { + createGroup: async (createGroupRequest: CreateGroupRequest, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'createGroupRequest' is not null or undefined + assertParamExists('createGroup', 'createGroupRequest', createGroupRequest) const localVarPath = `/groups`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -10068,13 +10143,15 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio * Creates an Announcement for a Group. * @summary Create Group Announcement * @param {string} groupId Must be a valid group ID. - * @param {CreateGroupAnnouncementRequest} [createGroupAnnouncementRequest] + * @param {CreateGroupAnnouncementRequest} createGroupAnnouncementRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ - createGroupAnnouncement: async (groupId: string, createGroupAnnouncementRequest?: CreateGroupAnnouncementRequest, options: AxiosRequestConfig = {}): Promise => { + createGroupAnnouncement: async (groupId: string, createGroupAnnouncementRequest: CreateGroupAnnouncementRequest, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'groupId' is not null or undefined assertParamExists('createGroupAnnouncement', 'groupId', groupId) + // verify required parameter 'createGroupAnnouncementRequest' is not null or undefined + assertParamExists('createGroupAnnouncement', 'createGroupAnnouncementRequest', createGroupAnnouncementRequest) const localVarPath = `/groups/{groupId}/announcement` .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. @@ -10108,13 +10185,15 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio * Creates a gallery for a Group. * @summary Create Group Gallery * @param {string} groupId Must be a valid group ID. - * @param {CreateGroupGalleryRequest} [createGroupGalleryRequest] + * @param {CreateGroupGalleryRequest} createGroupGalleryRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ - createGroupGallery: async (groupId: string, createGroupGalleryRequest?: CreateGroupGalleryRequest, options: AxiosRequestConfig = {}): Promise => { + createGroupGallery: async (groupId: string, createGroupGalleryRequest: CreateGroupGalleryRequest, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'groupId' is not null or undefined assertParamExists('createGroupGallery', 'groupId', groupId) + // verify required parameter 'createGroupGalleryRequest' is not null or undefined + assertParamExists('createGroupGallery', 'createGroupGalleryRequest', createGroupGalleryRequest) const localVarPath = `/groups/{groupId}/galleries` .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. @@ -10148,13 +10227,15 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio * Sends an invite to a user to join the group. * @summary Invite User to Group * @param {string} groupId Must be a valid group ID. - * @param {CreateGroupInviteRequest} [createGroupInviteRequest] + * @param {CreateGroupInviteRequest} createGroupInviteRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ - createGroupInvite: async (groupId: string, createGroupInviteRequest?: CreateGroupInviteRequest, options: AxiosRequestConfig = {}): Promise => { + createGroupInvite: async (groupId: string, createGroupInviteRequest: CreateGroupInviteRequest, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'groupId' is not null or undefined assertParamExists('createGroupInvite', 'groupId', groupId) + // verify required parameter 'createGroupInviteRequest' is not null or undefined + assertParamExists('createGroupInvite', 'createGroupInviteRequest', createGroupInviteRequest) const localVarPath = `/groups/{groupId}/invites` .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. @@ -10188,13 +10269,15 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio * Create a Group role. * @summary Create GroupRole * @param {string} groupId Must be a valid group ID. - * @param {CreateGroupRoleRequest} [createGroupRoleRequest] + * @param {CreateGroupRoleRequest} createGroupRoleRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ - createGroupRole: async (groupId: string, createGroupRoleRequest?: CreateGroupRoleRequest, options: AxiosRequestConfig = {}): Promise => { + createGroupRole: async (groupId: string, createGroupRoleRequest: CreateGroupRoleRequest, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'groupId' is not null or undefined assertParamExists('createGroupRole', 'groupId', groupId) + // verify required parameter 'createGroupRoleRequest' is not null or undefined + assertParamExists('createGroupRole', 'createGroupRoleRequest', createGroupRoleRequest) const localVarPath = `/groups/{groupId}/roles` .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. @@ -11114,15 +11197,17 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio * @summary Respond Group Join request * @param {string} groupId Must be a valid group ID. * @param {string} userId Must be a valid user ID. - * @param {RespondGroupJoinRequest} [respondGroupJoinRequest] + * @param {RespondGroupJoinRequest} respondGroupJoinRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ - respondGroupJoinRequest: async (groupId: string, userId: string, respondGroupJoinRequest?: RespondGroupJoinRequest, options: AxiosRequestConfig = {}): Promise => { + respondGroupJoinRequest: async (groupId: string, userId: string, respondGroupJoinRequest: RespondGroupJoinRequest, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'groupId' is not null or undefined assertParamExists('respondGroupJoinRequest', 'groupId', groupId) // verify required parameter 'userId' is not null or undefined assertParamExists('respondGroupJoinRequest', 'userId', userId) + // verify required parameter 'respondGroupJoinRequest' is not null or undefined + assertParamExists('respondGroupJoinRequest', 'respondGroupJoinRequest', respondGroupJoinRequest) const localVarPath = `/groups/{groupId}/requests/{userId}` .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))) .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); @@ -11425,11 +11510,11 @@ export const GroupsApiFp = function(configuration?: Configuration) { * @summary Add Group Gallery Image * @param {string} groupId Must be a valid group ID. * @param {string} groupGalleryId Must be a valid group gallery ID. - * @param {AddGroupGalleryImageRequest} [addGroupGalleryImageRequest] + * @param {AddGroupGalleryImageRequest} addGroupGalleryImageRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async addGroupGalleryImage(groupId: string, groupGalleryId: string, addGroupGalleryImageRequest?: AddGroupGalleryImageRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async addGroupGalleryImage(groupId: string, groupGalleryId: string, addGroupGalleryImageRequest: AddGroupGalleryImageRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.addGroupGalleryImage(groupId, groupGalleryId, addGroupGalleryImageRequest, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -11450,11 +11535,11 @@ export const GroupsApiFp = function(configuration?: Configuration) { * Bans a user from a Group. * @summary Ban Group Member * @param {string} groupId Must be a valid group ID. - * @param {BanGroupMemberRequest} [banGroupMemberRequest] + * @param {BanGroupMemberRequest} banGroupMemberRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async banGroupMember(groupId: string, banGroupMemberRequest?: BanGroupMemberRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async banGroupMember(groupId: string, banGroupMemberRequest: BanGroupMemberRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.banGroupMember(groupId, banGroupMemberRequest, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -11472,11 +11557,11 @@ export const GroupsApiFp = function(configuration?: Configuration) { /** * Creates a Group and returns a Group object. **Requires VRC+ Subscription.** * @summary Create Group - * @param {CreateGroupRequest} [createGroupRequest] + * @param {CreateGroupRequest} createGroupRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async createGroup(createGroupRequest?: CreateGroupRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async createGroup(createGroupRequest: CreateGroupRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.createGroup(createGroupRequest, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -11484,11 +11569,11 @@ export const GroupsApiFp = function(configuration?: Configuration) { * Creates an Announcement for a Group. * @summary Create Group Announcement * @param {string} groupId Must be a valid group ID. - * @param {CreateGroupAnnouncementRequest} [createGroupAnnouncementRequest] + * @param {CreateGroupAnnouncementRequest} createGroupAnnouncementRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async createGroupAnnouncement(groupId: string, createGroupAnnouncementRequest?: CreateGroupAnnouncementRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async createGroupAnnouncement(groupId: string, createGroupAnnouncementRequest: CreateGroupAnnouncementRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.createGroupAnnouncement(groupId, createGroupAnnouncementRequest, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -11496,11 +11581,11 @@ export const GroupsApiFp = function(configuration?: Configuration) { * Creates a gallery for a Group. * @summary Create Group Gallery * @param {string} groupId Must be a valid group ID. - * @param {CreateGroupGalleryRequest} [createGroupGalleryRequest] + * @param {CreateGroupGalleryRequest} createGroupGalleryRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async createGroupGallery(groupId: string, createGroupGalleryRequest?: CreateGroupGalleryRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async createGroupGallery(groupId: string, createGroupGalleryRequest: CreateGroupGalleryRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.createGroupGallery(groupId, createGroupGalleryRequest, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -11508,11 +11593,11 @@ export const GroupsApiFp = function(configuration?: Configuration) { * Sends an invite to a user to join the group. * @summary Invite User to Group * @param {string} groupId Must be a valid group ID. - * @param {CreateGroupInviteRequest} [createGroupInviteRequest] + * @param {CreateGroupInviteRequest} createGroupInviteRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async createGroupInvite(groupId: string, createGroupInviteRequest?: CreateGroupInviteRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async createGroupInvite(groupId: string, createGroupInviteRequest: CreateGroupInviteRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.createGroupInvite(groupId, createGroupInviteRequest, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -11520,11 +11605,11 @@ export const GroupsApiFp = function(configuration?: Configuration) { * Create a Group role. * @summary Create GroupRole * @param {string} groupId Must be a valid group ID. - * @param {CreateGroupRoleRequest} [createGroupRoleRequest] + * @param {CreateGroupRoleRequest} createGroupRoleRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async createGroupRole(groupId: string, createGroupRoleRequest?: CreateGroupRoleRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async createGroupRole(groupId: string, createGroupRoleRequest: CreateGroupRoleRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.createGroupRole(groupId, createGroupRoleRequest, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -11791,11 +11876,11 @@ export const GroupsApiFp = function(configuration?: Configuration) { * @summary Respond Group Join request * @param {string} groupId Must be a valid group ID. * @param {string} userId Must be a valid user ID. - * @param {RespondGroupJoinRequest} [respondGroupJoinRequest] + * @param {RespondGroupJoinRequest} respondGroupJoinRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async respondGroupJoinRequest(groupId: string, userId: string, respondGroupJoinRequest?: RespondGroupJoinRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async respondGroupJoinRequest(groupId: string, userId: string, respondGroupJoinRequest: RespondGroupJoinRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.respondGroupJoinRequest(groupId, userId, respondGroupJoinRequest, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -11890,11 +11975,11 @@ export const GroupsApiFactory = function (configuration?: Configuration, basePat * @summary Add Group Gallery Image * @param {string} groupId Must be a valid group ID. * @param {string} groupGalleryId Must be a valid group gallery ID. - * @param {AddGroupGalleryImageRequest} [addGroupGalleryImageRequest] + * @param {AddGroupGalleryImageRequest} addGroupGalleryImageRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ - addGroupGalleryImage(groupId: string, groupGalleryId: string, addGroupGalleryImageRequest?: AddGroupGalleryImageRequest, options?: any): AxiosPromise { + addGroupGalleryImage(groupId: string, groupGalleryId: string, addGroupGalleryImageRequest: AddGroupGalleryImageRequest, options?: any): AxiosPromise { return localVarFp.addGroupGalleryImage(groupId, groupGalleryId, addGroupGalleryImageRequest, options).then((request) => request(axios, basePath)); }, /** @@ -11913,11 +11998,11 @@ export const GroupsApiFactory = function (configuration?: Configuration, basePat * Bans a user from a Group. * @summary Ban Group Member * @param {string} groupId Must be a valid group ID. - * @param {BanGroupMemberRequest} [banGroupMemberRequest] + * @param {BanGroupMemberRequest} banGroupMemberRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ - banGroupMember(groupId: string, banGroupMemberRequest?: BanGroupMemberRequest, options?: any): AxiosPromise { + banGroupMember(groupId: string, banGroupMemberRequest: BanGroupMemberRequest, options?: any): AxiosPromise { return localVarFp.banGroupMember(groupId, banGroupMemberRequest, options).then((request) => request(axios, basePath)); }, /** @@ -11933,55 +12018,55 @@ export const GroupsApiFactory = function (configuration?: Configuration, basePat /** * Creates a Group and returns a Group object. **Requires VRC+ Subscription.** * @summary Create Group - * @param {CreateGroupRequest} [createGroupRequest] + * @param {CreateGroupRequest} createGroupRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ - createGroup(createGroupRequest?: CreateGroupRequest, options?: any): AxiosPromise { + createGroup(createGroupRequest: CreateGroupRequest, options?: any): AxiosPromise { return localVarFp.createGroup(createGroupRequest, options).then((request) => request(axios, basePath)); }, /** * Creates an Announcement for a Group. * @summary Create Group Announcement * @param {string} groupId Must be a valid group ID. - * @param {CreateGroupAnnouncementRequest} [createGroupAnnouncementRequest] + * @param {CreateGroupAnnouncementRequest} createGroupAnnouncementRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ - createGroupAnnouncement(groupId: string, createGroupAnnouncementRequest?: CreateGroupAnnouncementRequest, options?: any): AxiosPromise { + createGroupAnnouncement(groupId: string, createGroupAnnouncementRequest: CreateGroupAnnouncementRequest, options?: any): AxiosPromise { return localVarFp.createGroupAnnouncement(groupId, createGroupAnnouncementRequest, options).then((request) => request(axios, basePath)); }, /** * Creates a gallery for a Group. * @summary Create Group Gallery * @param {string} groupId Must be a valid group ID. - * @param {CreateGroupGalleryRequest} [createGroupGalleryRequest] + * @param {CreateGroupGalleryRequest} createGroupGalleryRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ - createGroupGallery(groupId: string, createGroupGalleryRequest?: CreateGroupGalleryRequest, options?: any): AxiosPromise { + createGroupGallery(groupId: string, createGroupGalleryRequest: CreateGroupGalleryRequest, options?: any): AxiosPromise { return localVarFp.createGroupGallery(groupId, createGroupGalleryRequest, options).then((request) => request(axios, basePath)); }, /** * Sends an invite to a user to join the group. * @summary Invite User to Group * @param {string} groupId Must be a valid group ID. - * @param {CreateGroupInviteRequest} [createGroupInviteRequest] + * @param {CreateGroupInviteRequest} createGroupInviteRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ - createGroupInvite(groupId: string, createGroupInviteRequest?: CreateGroupInviteRequest, options?: any): AxiosPromise { + createGroupInvite(groupId: string, createGroupInviteRequest: CreateGroupInviteRequest, options?: any): AxiosPromise { return localVarFp.createGroupInvite(groupId, createGroupInviteRequest, options).then((request) => request(axios, basePath)); }, /** * Create a Group role. * @summary Create GroupRole * @param {string} groupId Must be a valid group ID. - * @param {CreateGroupRoleRequest} [createGroupRoleRequest] + * @param {CreateGroupRoleRequest} createGroupRoleRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ - createGroupRole(groupId: string, createGroupRoleRequest?: CreateGroupRoleRequest, options?: any): AxiosPromise { + createGroupRole(groupId: string, createGroupRoleRequest: CreateGroupRoleRequest, options?: any): AxiosPromise { return localVarFp.createGroupRole(groupId, createGroupRoleRequest, options).then((request) => request(axios, basePath)); }, /** @@ -12226,11 +12311,11 @@ export const GroupsApiFactory = function (configuration?: Configuration, basePat * @summary Respond Group Join request * @param {string} groupId Must be a valid group ID. * @param {string} userId Must be a valid user ID. - * @param {RespondGroupJoinRequest} [respondGroupJoinRequest] + * @param {RespondGroupJoinRequest} respondGroupJoinRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ - respondGroupJoinRequest(groupId: string, userId: string, respondGroupJoinRequest?: RespondGroupJoinRequest, options?: any): AxiosPromise { + respondGroupJoinRequest(groupId: string, userId: string, respondGroupJoinRequest: RespondGroupJoinRequest, options?: any): AxiosPromise { return localVarFp.respondGroupJoinRequest(groupId, userId, respondGroupJoinRequest, options).then((request) => request(axios, basePath)); }, /** @@ -12318,12 +12403,12 @@ export class GroupsApi extends BaseAPI { * @summary Add Group Gallery Image * @param {string} groupId Must be a valid group ID. * @param {string} groupGalleryId Must be a valid group gallery ID. - * @param {AddGroupGalleryImageRequest} [addGroupGalleryImageRequest] + * @param {AddGroupGalleryImageRequest} addGroupGalleryImageRequest * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof GroupsApi */ - public addGroupGalleryImage(groupId: string, groupGalleryId: string, addGroupGalleryImageRequest?: AddGroupGalleryImageRequest, options?: AxiosRequestConfig) { + public addGroupGalleryImage(groupId: string, groupGalleryId: string, addGroupGalleryImageRequest: AddGroupGalleryImageRequest, options?: AxiosRequestConfig) { return GroupsApiFp(this.configuration).addGroupGalleryImage(groupId, groupGalleryId, addGroupGalleryImageRequest, options).then((request) => request(this.axios, this.basePath)); } @@ -12345,12 +12430,12 @@ export class GroupsApi extends BaseAPI { * Bans a user from a Group. * @summary Ban Group Member * @param {string} groupId Must be a valid group ID. - * @param {BanGroupMemberRequest} [banGroupMemberRequest] + * @param {BanGroupMemberRequest} banGroupMemberRequest * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof GroupsApi */ - public banGroupMember(groupId: string, banGroupMemberRequest?: BanGroupMemberRequest, options?: AxiosRequestConfig) { + public banGroupMember(groupId: string, banGroupMemberRequest: BanGroupMemberRequest, options?: AxiosRequestConfig) { return GroupsApiFp(this.configuration).banGroupMember(groupId, banGroupMemberRequest, options).then((request) => request(this.axios, this.basePath)); } @@ -12369,12 +12454,12 @@ export class GroupsApi extends BaseAPI { /** * Creates a Group and returns a Group object. **Requires VRC+ Subscription.** * @summary Create Group - * @param {CreateGroupRequest} [createGroupRequest] + * @param {CreateGroupRequest} createGroupRequest * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof GroupsApi */ - public createGroup(createGroupRequest?: CreateGroupRequest, options?: AxiosRequestConfig) { + public createGroup(createGroupRequest: CreateGroupRequest, options?: AxiosRequestConfig) { return GroupsApiFp(this.configuration).createGroup(createGroupRequest, options).then((request) => request(this.axios, this.basePath)); } @@ -12382,12 +12467,12 @@ export class GroupsApi extends BaseAPI { * Creates an Announcement for a Group. * @summary Create Group Announcement * @param {string} groupId Must be a valid group ID. - * @param {CreateGroupAnnouncementRequest} [createGroupAnnouncementRequest] + * @param {CreateGroupAnnouncementRequest} createGroupAnnouncementRequest * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof GroupsApi */ - public createGroupAnnouncement(groupId: string, createGroupAnnouncementRequest?: CreateGroupAnnouncementRequest, options?: AxiosRequestConfig) { + public createGroupAnnouncement(groupId: string, createGroupAnnouncementRequest: CreateGroupAnnouncementRequest, options?: AxiosRequestConfig) { return GroupsApiFp(this.configuration).createGroupAnnouncement(groupId, createGroupAnnouncementRequest, options).then((request) => request(this.axios, this.basePath)); } @@ -12395,12 +12480,12 @@ export class GroupsApi extends BaseAPI { * Creates a gallery for a Group. * @summary Create Group Gallery * @param {string} groupId Must be a valid group ID. - * @param {CreateGroupGalleryRequest} [createGroupGalleryRequest] + * @param {CreateGroupGalleryRequest} createGroupGalleryRequest * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof GroupsApi */ - public createGroupGallery(groupId: string, createGroupGalleryRequest?: CreateGroupGalleryRequest, options?: AxiosRequestConfig) { + public createGroupGallery(groupId: string, createGroupGalleryRequest: CreateGroupGalleryRequest, options?: AxiosRequestConfig) { return GroupsApiFp(this.configuration).createGroupGallery(groupId, createGroupGalleryRequest, options).then((request) => request(this.axios, this.basePath)); } @@ -12408,12 +12493,12 @@ export class GroupsApi extends BaseAPI { * Sends an invite to a user to join the group. * @summary Invite User to Group * @param {string} groupId Must be a valid group ID. - * @param {CreateGroupInviteRequest} [createGroupInviteRequest] + * @param {CreateGroupInviteRequest} createGroupInviteRequest * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof GroupsApi */ - public createGroupInvite(groupId: string, createGroupInviteRequest?: CreateGroupInviteRequest, options?: AxiosRequestConfig) { + public createGroupInvite(groupId: string, createGroupInviteRequest: CreateGroupInviteRequest, options?: AxiosRequestConfig) { return GroupsApiFp(this.configuration).createGroupInvite(groupId, createGroupInviteRequest, options).then((request) => request(this.axios, this.basePath)); } @@ -12421,12 +12506,12 @@ export class GroupsApi extends BaseAPI { * Create a Group role. * @summary Create GroupRole * @param {string} groupId Must be a valid group ID. - * @param {CreateGroupRoleRequest} [createGroupRoleRequest] + * @param {CreateGroupRoleRequest} createGroupRoleRequest * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof GroupsApi */ - public createGroupRole(groupId: string, createGroupRoleRequest?: CreateGroupRoleRequest, options?: AxiosRequestConfig) { + public createGroupRole(groupId: string, createGroupRoleRequest: CreateGroupRoleRequest, options?: AxiosRequestConfig) { return GroupsApiFp(this.configuration).createGroupRole(groupId, createGroupRoleRequest, options).then((request) => request(this.axios, this.basePath)); } @@ -12714,12 +12799,12 @@ export class GroupsApi extends BaseAPI { * @summary Respond Group Join request * @param {string} groupId Must be a valid group ID. * @param {string} userId Must be a valid user ID. - * @param {RespondGroupJoinRequest} [respondGroupJoinRequest] + * @param {RespondGroupJoinRequest} respondGroupJoinRequest * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof GroupsApi */ - public respondGroupJoinRequest(groupId: string, userId: string, respondGroupJoinRequest?: RespondGroupJoinRequest, options?: AxiosRequestConfig) { + public respondGroupJoinRequest(groupId: string, userId: string, respondGroupJoinRequest: RespondGroupJoinRequest, options?: AxiosRequestConfig) { return GroupsApiFp(this.configuration).respondGroupJoinRequest(groupId, userId, respondGroupJoinRequest, options).then((request) => request(this.axios, this.basePath)); } @@ -13276,13 +13361,15 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio * Sends an invite to a user. Returns the Notification of type `invite` that was sent. * @summary Invite User * @param {string} userId Must be a valid user ID. - * @param {InviteRequest} [inviteRequest] Slot number of the Invite Message to use when inviting a user. + * @param {InviteRequest} inviteRequest Slot number of the Invite Message to use when inviting a user. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - inviteUser: async (userId: string, inviteRequest?: InviteRequest, options: AxiosRequestConfig = {}): Promise => { + inviteUser: async (userId: string, inviteRequest: InviteRequest, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'userId' is not null or undefined assertParamExists('inviteUser', 'userId', userId) + // verify required parameter 'inviteRequest' is not null or undefined + assertParamExists('inviteUser', 'inviteRequest', inviteRequest) const localVarPath = `/invite/{userId}` .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. @@ -13400,13 +13487,15 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio * Respond to an invite request by sending a world invite to the requesting user. `:notificationId` is the ID of the requesting notification. * @summary Respond Invite * @param {string} notificationId Must be a valid notification ID. - * @param {InviteResponse} [inviteResponse] Slot number of the Response Message to use when responding to a user. + * @param {InviteResponse} inviteResponse Slot number of the Response Message to use when responding to a user. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - respondInvite: async (notificationId: string, inviteResponse?: InviteResponse, options: AxiosRequestConfig = {}): Promise => { + respondInvite: async (notificationId: string, inviteResponse: InviteResponse, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'notificationId' is not null or undefined assertParamExists('respondInvite', 'notificationId', notificationId) + // verify required parameter 'inviteResponse' is not null or undefined + assertParamExists('respondInvite', 'inviteResponse', inviteResponse) const localVarPath = `/invite/{notificationId}/response` .replace(`{${"notificationId"}}`, encodeURIComponent(String(notificationId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. @@ -13535,11 +13624,11 @@ export const InviteApiFp = function(configuration?: Configuration) { * Sends an invite to a user. Returns the Notification of type `invite` that was sent. * @summary Invite User * @param {string} userId Must be a valid user ID. - * @param {InviteRequest} [inviteRequest] Slot number of the Invite Message to use when inviting a user. + * @param {InviteRequest} inviteRequest Slot number of the Invite Message to use when inviting a user. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async inviteUser(userId: string, inviteRequest?: InviteRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async inviteUser(userId: string, inviteRequest: InviteRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.inviteUser(userId, inviteRequest, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -13572,11 +13661,11 @@ export const InviteApiFp = function(configuration?: Configuration) { * Respond to an invite request by sending a world invite to the requesting user. `:notificationId` is the ID of the requesting notification. * @summary Respond Invite * @param {string} notificationId Must be a valid notification ID. - * @param {InviteResponse} [inviteResponse] Slot number of the Response Message to use when responding to a user. + * @param {InviteResponse} inviteResponse Slot number of the Response Message to use when responding to a user. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async respondInvite(notificationId: string, inviteResponse?: InviteResponse, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async respondInvite(notificationId: string, inviteResponse: InviteResponse, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.respondInvite(notificationId, inviteResponse, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -13642,11 +13731,11 @@ export const InviteApiFactory = function (configuration?: Configuration, basePat * Sends an invite to a user. Returns the Notification of type `invite` that was sent. * @summary Invite User * @param {string} userId Must be a valid user ID. - * @param {InviteRequest} [inviteRequest] Slot number of the Invite Message to use when inviting a user. + * @param {InviteRequest} inviteRequest Slot number of the Invite Message to use when inviting a user. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - inviteUser(userId: string, inviteRequest?: InviteRequest, options?: any): AxiosPromise { + inviteUser(userId: string, inviteRequest: InviteRequest, options?: any): AxiosPromise { return localVarFp.inviteUser(userId, inviteRequest, options).then((request) => request(axios, basePath)); }, /** @@ -13676,11 +13765,11 @@ export const InviteApiFactory = function (configuration?: Configuration, basePat * Respond to an invite request by sending a world invite to the requesting user. `:notificationId` is the ID of the requesting notification. * @summary Respond Invite * @param {string} notificationId Must be a valid notification ID. - * @param {InviteResponse} [inviteResponse] Slot number of the Response Message to use when responding to a user. + * @param {InviteResponse} inviteResponse Slot number of the Response Message to use when responding to a user. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - respondInvite(notificationId: string, inviteResponse?: InviteResponse, options?: any): AxiosPromise { + respondInvite(notificationId: string, inviteResponse: InviteResponse, options?: any): AxiosPromise { return localVarFp.respondInvite(notificationId, inviteResponse, options).then((request) => request(axios, basePath)); }, /** @@ -13750,12 +13839,12 @@ export class InviteApi extends BaseAPI { * Sends an invite to a user. Returns the Notification of type `invite` that was sent. * @summary Invite User * @param {string} userId Must be a valid user ID. - * @param {InviteRequest} [inviteRequest] Slot number of the Invite Message to use when inviting a user. + * @param {InviteRequest} inviteRequest Slot number of the Invite Message to use when inviting a user. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof InviteApi */ - public inviteUser(userId: string, inviteRequest?: InviteRequest, options?: AxiosRequestConfig) { + public inviteUser(userId: string, inviteRequest: InviteRequest, options?: AxiosRequestConfig) { return InviteApiFp(this.configuration).inviteUser(userId, inviteRequest, options).then((request) => request(this.axios, this.basePath)); } @@ -13790,12 +13879,12 @@ export class InviteApi extends BaseAPI { * Respond to an invite request by sending a world invite to the requesting user. `:notificationId` is the ID of the requesting notification. * @summary Respond Invite * @param {string} notificationId Must be a valid notification ID. - * @param {InviteResponse} [inviteResponse] Slot number of the Response Message to use when responding to a user. + * @param {InviteResponse} inviteResponse Slot number of the Response Message to use when responding to a user. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof InviteApi */ - public respondInvite(notificationId: string, inviteResponse?: InviteResponse, options?: AxiosRequestConfig) { + public respondInvite(notificationId: string, inviteResponse: InviteResponse, options?: AxiosRequestConfig) { return InviteApiFp(this.configuration).respondInvite(notificationId, inviteResponse, options).then((request) => request(this.axios, this.basePath)); } @@ -14557,11 +14646,13 @@ export const PlayermoderationApiAxiosParamCreator = function (configuration?: Co /** * Moderate a user, e.g. unmute them or show their avatar. Please see the [Player Moderation docs](https://vrchatapi.github.io/docs/api/#tag--playermoderation) on what playerModerations are, and how they differ from staff moderations. * @summary Moderate User - * @param {ModerateUserRequest} [moderateUserRequest] + * @param {ModerateUserRequest} moderateUserRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ - moderateUser: async (moderateUserRequest?: ModerateUserRequest, options: AxiosRequestConfig = {}): Promise => { + moderateUser: async (moderateUserRequest: ModerateUserRequest, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'moderateUserRequest' is not null or undefined + assertParamExists('moderateUser', 'moderateUserRequest', moderateUserRequest) const localVarPath = `/auth/user/playermoderations`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -14593,11 +14684,13 @@ export const PlayermoderationApiAxiosParamCreator = function (configuration?: Co /** * Removes a player moderation previously added through `moderateUser`. E.g if you previously have shown their avatar, but now want to reset it to default. * @summary Unmoderate User - * @param {ModerateUserRequest} [moderateUserRequest] + * @param {ModerateUserRequest} moderateUserRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ - unmoderateUser: async (moderateUserRequest?: ModerateUserRequest, options: AxiosRequestConfig = {}): Promise => { + unmoderateUser: async (moderateUserRequest: ModerateUserRequest, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'moderateUserRequest' is not null or undefined + assertParamExists('unmoderateUser', 'moderateUserRequest', moderateUserRequest) const localVarPath = `/auth/user/unplayermoderate`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -14683,22 +14776,22 @@ export const PlayermoderationApiFp = function(configuration?: Configuration) { /** * Moderate a user, e.g. unmute them or show their avatar. Please see the [Player Moderation docs](https://vrchatapi.github.io/docs/api/#tag--playermoderation) on what playerModerations are, and how they differ from staff moderations. * @summary Moderate User - * @param {ModerateUserRequest} [moderateUserRequest] + * @param {ModerateUserRequest} moderateUserRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async moderateUser(moderateUserRequest?: ModerateUserRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async moderateUser(moderateUserRequest: ModerateUserRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.moderateUser(moderateUserRequest, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * Removes a player moderation previously added through `moderateUser`. E.g if you previously have shown their avatar, but now want to reset it to default. * @summary Unmoderate User - * @param {ModerateUserRequest} [moderateUserRequest] + * @param {ModerateUserRequest} moderateUserRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async unmoderateUser(moderateUserRequest?: ModerateUserRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async unmoderateUser(moderateUserRequest: ModerateUserRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.unmoderateUser(moderateUserRequest, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -14755,21 +14848,21 @@ export const PlayermoderationApiFactory = function (configuration?: Configuratio /** * Moderate a user, e.g. unmute them or show their avatar. Please see the [Player Moderation docs](https://vrchatapi.github.io/docs/api/#tag--playermoderation) on what playerModerations are, and how they differ from staff moderations. * @summary Moderate User - * @param {ModerateUserRequest} [moderateUserRequest] + * @param {ModerateUserRequest} moderateUserRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ - moderateUser(moderateUserRequest?: ModerateUserRequest, options?: any): AxiosPromise { + moderateUser(moderateUserRequest: ModerateUserRequest, options?: any): AxiosPromise { return localVarFp.moderateUser(moderateUserRequest, options).then((request) => request(axios, basePath)); }, /** * Removes a player moderation previously added through `moderateUser`. E.g if you previously have shown their avatar, but now want to reset it to default. * @summary Unmoderate User - * @param {ModerateUserRequest} [moderateUserRequest] + * @param {ModerateUserRequest} moderateUserRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ - unmoderateUser(moderateUserRequest?: ModerateUserRequest, options?: any): AxiosPromise { + unmoderateUser(moderateUserRequest: ModerateUserRequest, options?: any): AxiosPromise { return localVarFp.unmoderateUser(moderateUserRequest, options).then((request) => request(axios, basePath)); }, }; @@ -14833,24 +14926,24 @@ export class PlayermoderationApi extends BaseAPI { /** * Moderate a user, e.g. unmute them or show their avatar. Please see the [Player Moderation docs](https://vrchatapi.github.io/docs/api/#tag--playermoderation) on what playerModerations are, and how they differ from staff moderations. * @summary Moderate User - * @param {ModerateUserRequest} [moderateUserRequest] + * @param {ModerateUserRequest} moderateUserRequest * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof PlayermoderationApi */ - public moderateUser(moderateUserRequest?: ModerateUserRequest, options?: AxiosRequestConfig) { + public moderateUser(moderateUserRequest: ModerateUserRequest, options?: AxiosRequestConfig) { return PlayermoderationApiFp(this.configuration).moderateUser(moderateUserRequest, options).then((request) => request(this.axios, this.basePath)); } /** * Removes a player moderation previously added through `moderateUser`. E.g if you previously have shown their avatar, but now want to reset it to default. * @summary Unmoderate User - * @param {ModerateUserRequest} [moderateUserRequest] + * @param {ModerateUserRequest} moderateUserRequest * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof PlayermoderationApi */ - public unmoderateUser(moderateUserRequest?: ModerateUserRequest, options?: AxiosRequestConfig) { + public unmoderateUser(moderateUserRequest: ModerateUserRequest, options?: AxiosRequestConfig) { return PlayermoderationApiFp(this.configuration).unmoderateUser(moderateUserRequest, options).then((request) => request(this.axios, this.basePath)); } } diff --git a/base.ts b/base.ts index 6dd3588..3f058fd 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.16.7 + * The version of the OpenAPI document: 1.16.8 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index 920ec44..69fa2a8 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.16.7 + * The version of the OpenAPI document: 1.16.8 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index 34487b8..9df6282 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.16.7 + * The version of the OpenAPI document: 1.16.8 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index 35c2919..9f4dc85 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.16.7 + * The version of the OpenAPI document: 1.16.8 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index 0a652e5..2d6a9bb 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.16.7", + "version": "1.16.8", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.16.7", + "version": "1.16.8", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index 40327bd..050f6c5 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.16.7", + "version": "1.16.8", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "repository": { From ea7140d70ab524009d0bc2f0a636d2d0bd34c47b Mon Sep 17 00:00:00 2001 From: VRCCat Date: Mon, 15 Apr 2024 22:18:01 +0000 Subject: [PATCH 102/130] Upgrade Node SDK to spec 1.17.0 --- api.ts | 139 ++++++++++++++++++++++++++++++++++++++++++++-- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 +- package.json | 2 +- 7 files changed, 141 insertions(+), 12 deletions(-) diff --git a/api.ts b/api.ts index 1fa2004..2c33b25 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.16.8 + * The version of the OpenAPI document: 1.17.0 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -2319,6 +2319,21 @@ export interface Group { */ 'roles'?: Array | null; } +/** + * Group access type when the instance type is \"group\" + * @export + * @enum {string} + */ + +export const GroupAccessType = { + Public: 'public', + Plus: 'plus', + Member: 'member' +} as const; + +export type GroupAccessType = typeof GroupAccessType[keyof typeof GroupAccessType]; + + /** * * @export @@ -3394,11 +3409,11 @@ export interface Instance { */ 'name': string; /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * A groupId if the instance type is \"group\", null if instance type is public, or a userId otherwise * @type {string} * @memberof Instance */ - 'ownerId'?: string; + 'ownerId'?: string | null; /** * * @type {boolean} @@ -3434,7 +3449,7 @@ export interface Instance { * @type {string} * @memberof Instance */ - 'shortName'?: string; + 'shortName'?: string | null; /** * The tags array on Instances usually contain the language tags of the people in the instance. * @type {Array} @@ -3494,7 +3509,7 @@ export interface Instance { * @type {boolean} * @memberof Instance */ - 'roleRestricted': boolean; + 'roleRestricted'?: boolean; /** * * @type {boolean} @@ -3519,6 +3534,36 @@ export interface Instance { * @memberof Instance */ 'users'?: Array; + /** + * + * @type {GroupAccessType} + * @memberof Instance + */ + 'groupAccessType'?: GroupAccessType; + /** + * + * @type {boolean} + * @memberof Instance + */ + 'hasCapacityForYou'?: boolean; + /** + * + * @type {string} + * @memberof Instance + */ + 'nonce'?: string; + /** + * + * @type {string} + * @memberof Instance + */ + 'closedAt'?: string | null; + /** + * + * @type {boolean} + * @memberof Instance + */ + 'hardClose'?: boolean | null; } /** * @@ -12898,6 +12943,51 @@ export class GroupsApi extends BaseAPI { */ export const InstancesApiAxiosParamCreator = function (configuration?: Configuration) { return { + /** + * Close an instance. You can only close an instance if the ownerId is yourself or if the instance owner is a group and you have the `group-instance-moderate` permission. + * @summary Close Instance + * @param {string} worldId Must be a valid world ID. + * @param {string} instanceId Must be a valid instance ID. + * @param {boolean} [hardClose] Whether to hard close the instance. Defaults to false. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + closeInstance: async (worldId: string, instanceId: string, hardClose?: boolean, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'worldId' is not null or undefined + assertParamExists('closeInstance', 'worldId', worldId) + // verify required parameter 'instanceId' is not null or undefined + assertParamExists('closeInstance', 'instanceId', instanceId) + const localVarPath = `/instances/{worldId}:{instanceId}` + .replace(`{${"worldId"}}`, encodeURIComponent(String(worldId))) + .replace(`{${"instanceId"}}`, encodeURIComponent(String(instanceId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + if (hardClose !== undefined) { + localVarQueryParameter['hardClose'] = hardClose; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, /** * Returns an instance. Please read [Instances Tutorial](https://vrchatapi.github.io/tutorials/instances/) for more information on Instances. If an invalid instanceId is provided, this endpoint will simply return \"null\"! * @summary Get Instance @@ -13064,6 +13154,19 @@ export const InstancesApiAxiosParamCreator = function (configuration?: Configura export const InstancesApiFp = function(configuration?: Configuration) { const localVarAxiosParamCreator = InstancesApiAxiosParamCreator(configuration) return { + /** + * Close an instance. You can only close an instance if the ownerId is yourself or if the instance owner is a group and you have the `group-instance-moderate` permission. + * @summary Close Instance + * @param {string} worldId Must be a valid world ID. + * @param {string} instanceId Must be a valid instance ID. + * @param {boolean} [hardClose] Whether to hard close the instance. Defaults to false. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async closeInstance(worldId: string, instanceId: string, hardClose?: boolean, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.closeInstance(worldId, instanceId, hardClose, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** * Returns an instance. Please read [Instances Tutorial](https://vrchatapi.github.io/tutorials/instances/) for more information on Instances. If an invalid instanceId is provided, this endpoint will simply return \"null\"! * @summary Get Instance @@ -13121,6 +13224,18 @@ export const InstancesApiFp = function(configuration?: Configuration) { export const InstancesApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { const localVarFp = InstancesApiFp(configuration) return { + /** + * Close an instance. You can only close an instance if the ownerId is yourself or if the instance owner is a group and you have the `group-instance-moderate` permission. + * @summary Close Instance + * @param {string} worldId Must be a valid world ID. + * @param {string} instanceId Must be a valid instance ID. + * @param {boolean} [hardClose] Whether to hard close the instance. Defaults to false. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + closeInstance(worldId: string, instanceId: string, hardClose?: boolean, options?: any): AxiosPromise { + return localVarFp.closeInstance(worldId, instanceId, hardClose, options).then((request) => request(axios, basePath)); + }, /** * Returns an instance. Please read [Instances Tutorial](https://vrchatapi.github.io/tutorials/instances/) for more information on Instances. If an invalid instanceId is provided, this endpoint will simply return \"null\"! * @summary Get Instance @@ -13174,6 +13289,20 @@ export const InstancesApiFactory = function (configuration?: Configuration, base * @extends {BaseAPI} */ export class InstancesApi extends BaseAPI { + /** + * Close an instance. You can only close an instance if the ownerId is yourself or if the instance owner is a group and you have the `group-instance-moderate` permission. + * @summary Close Instance + * @param {string} worldId Must be a valid world ID. + * @param {string} instanceId Must be a valid instance ID. + * @param {boolean} [hardClose] Whether to hard close the instance. Defaults to false. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof InstancesApi + */ + public closeInstance(worldId: string, instanceId: string, hardClose?: boolean, options?: AxiosRequestConfig) { + return InstancesApiFp(this.configuration).closeInstance(worldId, instanceId, hardClose, options).then((request) => request(this.axios, this.basePath)); + } + /** * Returns an instance. Please read [Instances Tutorial](https://vrchatapi.github.io/tutorials/instances/) for more information on Instances. If an invalid instanceId is provided, this endpoint will simply return \"null\"! * @summary Get Instance diff --git a/base.ts b/base.ts index 3f058fd..926a71e 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.16.8 + * The version of the OpenAPI document: 1.17.0 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index 69fa2a8..b76eb35 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.16.8 + * The version of the OpenAPI document: 1.17.0 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index 9df6282..fd8c4a1 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.16.8 + * The version of the OpenAPI document: 1.17.0 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index 9f4dc85..ef5cf03 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.16.8 + * The version of the OpenAPI document: 1.17.0 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index 2d6a9bb..ce2036f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.16.8", + "version": "1.17.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.16.8", + "version": "1.17.0", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index 050f6c5..6a2f0c6 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.16.8", + "version": "1.17.0", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "repository": { From d80b8314b387cb617d6e18748d7e4e070b2f9a15 Mon Sep 17 00:00:00 2001 From: VRCCat Date: Sun, 21 Apr 2024 03:24:42 +0000 Subject: [PATCH 103/130] Upgrade Node SDK to spec 1.17.1 --- api.ts | 104 +++++++++++++++++++++++++++++++++++++++++++++- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 +- package.json | 2 +- 7 files changed, 109 insertions(+), 9 deletions(-) diff --git a/api.ts b/api.ts index 2c33b25..69299a8 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.17.0 + * The version of the OpenAPI document: 1.17.1 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -2590,6 +2590,37 @@ export interface GroupGalleryImage { */ 'approvedAt'?: string; } +/** + * + * @export + * @interface GroupInstance + */ +export interface GroupInstance { + /** + * + * @type {string} + * @memberof GroupInstance + */ + 'instanceId': string; + /** + * InstanceID can be \"offline\" on User profiles if you are not friends with that user and \"private\" if you are friends and user is in private instance. + * @type {string} + * @memberof GroupInstance + */ + 'location': string; + /** + * + * @type {World} + * @memberof GroupInstance + */ + 'world': World; + /** + * + * @type {number} + * @memberof GroupInstance + */ + 'memberCount': number; +} /** * * @export @@ -2843,7 +2874,7 @@ export interface GroupMemberLimitedUser { * @type {string} * @memberof GroupMemberLimitedUser */ - 'thumbnailUrl'?: string; + 'thumbnailUrl'?: string | null; /** * * @type {string} @@ -10817,6 +10848,42 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Returns a list of group instances + * @summary Get Group Instances + * @param {string} groupId Must be a valid group ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getGroupInstances: async (groupId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'groupId' is not null or undefined + assertParamExists('getGroupInstances', 'groupId', groupId) + const localVarPath = `/groups/{groupId}/instances` + .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -11795,6 +11862,17 @@ export const GroupsApiFp = function(configuration?: Configuration) { const localVarAxiosArgs = await localVarAxiosParamCreator.getGroupGalleryImages(groupId, groupGalleryId, n, offset, approved, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, + /** + * Returns a list of group instances + * @summary Get Group Instances + * @param {string} groupId Must be a valid group ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getGroupInstances(groupId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getGroupInstances(groupId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** * Returns a list of members that have been invited to the Group. * @summary Get Group Invites Sent @@ -12240,6 +12318,16 @@ export const GroupsApiFactory = function (configuration?: Configuration, basePat getGroupGalleryImages(groupId: string, groupGalleryId: string, n?: number, offset?: number, approved?: boolean, options?: any): AxiosPromise> { return localVarFp.getGroupGalleryImages(groupId, groupGalleryId, n, offset, approved, options).then((request) => request(axios, basePath)); }, + /** + * Returns a list of group instances + * @summary Get Group Instances + * @param {string} groupId Must be a valid group ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getGroupInstances(groupId: string, options?: any): AxiosPromise> { + return localVarFp.getGroupInstances(groupId, options).then((request) => request(axios, basePath)); + }, /** * Returns a list of members that have been invited to the Group. * @summary Get Group Invites Sent @@ -12708,6 +12796,18 @@ export class GroupsApi extends BaseAPI { return GroupsApiFp(this.configuration).getGroupGalleryImages(groupId, groupGalleryId, n, offset, approved, options).then((request) => request(this.axios, this.basePath)); } + /** + * Returns a list of group instances + * @summary Get Group Instances + * @param {string} groupId Must be a valid group ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof GroupsApi + */ + public getGroupInstances(groupId: string, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).getGroupInstances(groupId, options).then((request) => request(this.axios, this.basePath)); + } + /** * Returns a list of members that have been invited to the Group. * @summary Get Group Invites Sent diff --git a/base.ts b/base.ts index 926a71e..19466d5 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.17.0 + * The version of the OpenAPI document: 1.17.1 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index b76eb35..430fc47 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.17.0 + * The version of the OpenAPI document: 1.17.1 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index fd8c4a1..9f20db4 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.17.0 + * The version of the OpenAPI document: 1.17.1 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index ef5cf03..bb4ab49 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.17.0 + * The version of the OpenAPI document: 1.17.1 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index ce2036f..b44c4d3 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.17.0", + "version": "1.17.1", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.17.0", + "version": "1.17.1", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index 6a2f0c6..4b7a6f7 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.17.0", + "version": "1.17.1", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "repository": { From 80dc814953a03589d4d5ffe22ccc484bff6b6449 Mon Sep 17 00:00:00 2001 From: VRCCat Date: Tue, 23 Apr 2024 03:37:27 +0000 Subject: [PATCH 104/130] Upgrade Node SDK to spec 1.17.2 --- api.ts | 385 +++++++++++++++++++++++++++++++++++++++++++++- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 16 +- package.json | 2 +- 7 files changed, 397 insertions(+), 14 deletions(-) diff --git a/api.ts b/api.ts index 69299a8..b73a697 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.17.1 + * The version of the OpenAPI document: 1.17.2 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -1097,6 +1097,49 @@ export interface CreateGroupInviteRequest { */ 'confirmOverrideBlock'?: boolean; } +/** + * + * @export + * @interface CreateGroupPostRequest + */ +export interface CreateGroupPostRequest { + /** + * Post title + * @type {string} + * @memberof CreateGroupPostRequest + */ + 'title': string; + /** + * Post text + * @type {string} + * @memberof CreateGroupPostRequest + */ + 'text': string; + /** + * + * @type {string} + * @memberof CreateGroupPostRequest + */ + 'imageId'?: string; + /** + * Send notification to group members. + * @type {boolean} + * @memberof CreateGroupPostRequest + */ + 'sendNotification': boolean; + /** + * + * @type {Array} + * @memberof CreateGroupPostRequest + */ + 'roleIds'?: Array; + /** + * + * @type {GroupPostVisibility} + * @memberof CreateGroupPostRequest + */ + 'visibility': GroupPostVisibility; +} /** * * @export @@ -3039,6 +3082,99 @@ export interface GroupPermission { */ 'allowedToAdd'?: boolean; } +/** + * + * @export + * @interface GroupPost + */ +export interface GroupPost { + /** + * + * @type {string} + * @memberof GroupPost + */ + 'id'?: string; + /** + * + * @type {string} + * @memberof GroupPost + */ + 'groupId'?: string; + /** + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof GroupPost + */ + 'authorId'?: string; + /** + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof GroupPost + */ + 'editorId'?: string; + /** + * + * @type {GroupPostVisibility} + * @memberof GroupPost + */ + 'visibility'?: GroupPostVisibility; + /** + * + * @type {Array} + * @memberof GroupPost + */ + 'roleId'?: Array; + /** + * + * @type {string} + * @memberof GroupPost + */ + 'title'?: string; + /** + * + * @type {string} + * @memberof GroupPost + */ + 'text'?: string; + /** + * + * @type {string} + * @memberof GroupPost + */ + 'imageId'?: string; + /** + * + * @type {string} + * @memberof GroupPost + */ + 'imageUrl'?: string | null; + /** + * + * @type {string} + * @memberof GroupPost + */ + 'createdAt'?: string; + /** + * + * @type {string} + * @memberof GroupPost + */ + 'updatedAt'?: string; +} +/** + * + * @export + * @enum {string} + */ + +export const GroupPostVisibility = { + Group: 'group', + Public: 'public' +} as const; + +export type GroupPostVisibility = typeof GroupPostVisibility[keyof typeof GroupPostVisibility]; + + /** * * @export @@ -10099,6 +10235,48 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio options: localVarRequestOptions, }; }, + /** + * Create a post in a Group. + * @summary Create a post in a Group + * @param {string} groupId Must be a valid group ID. + * @param {CreateGroupPostRequest} createGroupPostRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + addGroupPost: async (groupId: string, createGroupPostRequest: CreateGroupPostRequest, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'groupId' is not null or undefined + assertParamExists('addGroupPost', 'groupId', groupId) + // verify required parameter 'createGroupPostRequest' is not null or undefined + assertParamExists('addGroupPost', 'createGroupPostRequest', createGroupPostRequest) + const localVarPath = `/groups/{groupId}/posts` + .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(createGroupPostRequest, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, /** * Bans a user from a Group. * @summary Ban Group Member @@ -10570,6 +10748,46 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Delete a Group post + * @summary Delete a Group post + * @param {string} groupId Must be a valid group ID. + * @param {string} notificationId Must be a valid notification ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + deleteGroupPost: async (groupId: string, notificationId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'groupId' is not null or undefined + assertParamExists('deleteGroupPost', 'groupId', groupId) + // verify required parameter 'notificationId' is not null or undefined + assertParamExists('deleteGroupPost', 'notificationId', notificationId) + const localVarPath = `/groups/{groupId}/posts/{notificationId}` + .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))) + .replace(`{${"notificationId"}}`, encodeURIComponent(String(notificationId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -11057,6 +11275,57 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get posts from a Group + * @summary Get posts from a Group + * @param {string} groupId Must be a valid group ID. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {boolean} [publicOnly] See public posts only. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getGroupPost: async (groupId: string, n?: number, offset?: number, publicOnly?: boolean, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'groupId' is not null or undefined + assertParamExists('getGroupPost', 'groupId', groupId) + const localVarPath = `/groups/{groupId}/posts` + .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + if (n !== undefined) { + localVarQueryParameter['n'] = n; + } + + if (offset !== undefined) { + localVarQueryParameter['offset'] = offset; + } + + if (publicOnly !== undefined) { + localVarQueryParameter['publicOnly'] = publicOnly; + } + + + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -11643,6 +11912,18 @@ export const GroupsApiFp = function(configuration?: Configuration) { const localVarAxiosArgs = await localVarAxiosParamCreator.addGroupMemberRole(groupId, userId, groupRoleId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, + /** + * Create a post in a Group. + * @summary Create a post in a Group + * @param {string} groupId Must be a valid group ID. + * @param {CreateGroupPostRequest} createGroupPostRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async addGroupPost(groupId: string, createGroupPostRequest: CreateGroupPostRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.addGroupPost(groupId, createGroupPostRequest, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** * Bans a user from a Group. * @summary Ban Group Member @@ -11784,6 +12065,18 @@ export const GroupsApiFp = function(configuration?: Configuration) { const localVarAxiosArgs = await localVarAxiosParamCreator.deleteGroupInvite(groupId, userId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, + /** + * Delete a Group post + * @summary Delete a Group post + * @param {string} groupId Must be a valid group ID. + * @param {string} notificationId Must be a valid notification ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async deleteGroupPost(groupId: string, notificationId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.deleteGroupPost(groupId, notificationId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** * Deletes a Group Role by ID and returns the remaining roles. * @summary Delete Group Role @@ -11923,6 +12216,20 @@ export const GroupsApiFp = function(configuration?: Configuration) { const localVarAxiosArgs = await localVarAxiosParamCreator.getGroupPermissions(groupId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, + /** + * Get posts from a Group + * @summary Get posts from a Group + * @param {string} groupId Must be a valid group ID. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {boolean} [publicOnly] See public posts only. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getGroupPost(groupId: string, n?: number, offset?: number, publicOnly?: boolean, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getGroupPost(groupId, n, offset, publicOnly, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** * Returns a list of members that have requested to join the Group. * @summary Get Group Join Requests @@ -12117,6 +12424,17 @@ export const GroupsApiFactory = function (configuration?: Configuration, basePat addGroupMemberRole(groupId: string, userId: string, groupRoleId: string, options?: any): AxiosPromise> { return localVarFp.addGroupMemberRole(groupId, userId, groupRoleId, options).then((request) => request(axios, basePath)); }, + /** + * Create a post in a Group. + * @summary Create a post in a Group + * @param {string} groupId Must be a valid group ID. + * @param {CreateGroupPostRequest} createGroupPostRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + addGroupPost(groupId: string, createGroupPostRequest: CreateGroupPostRequest, options?: any): AxiosPromise { + return localVarFp.addGroupPost(groupId, createGroupPostRequest, options).then((request) => request(axios, basePath)); + }, /** * Bans a user from a Group. * @summary Ban Group Member @@ -12246,6 +12564,17 @@ export const GroupsApiFactory = function (configuration?: Configuration, basePat deleteGroupInvite(groupId: string, userId: string, options?: any): AxiosPromise { return localVarFp.deleteGroupInvite(groupId, userId, options).then((request) => request(axios, basePath)); }, + /** + * Delete a Group post + * @summary Delete a Group post + * @param {string} groupId Must be a valid group ID. + * @param {string} notificationId Must be a valid notification ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + deleteGroupPost(groupId: string, notificationId: string, options?: any): AxiosPromise { + return localVarFp.deleteGroupPost(groupId, notificationId, options).then((request) => request(axios, basePath)); + }, /** * Deletes a Group Role by ID and returns the remaining roles. * @summary Delete Group Role @@ -12374,6 +12703,19 @@ export const GroupsApiFactory = function (configuration?: Configuration, basePat getGroupPermissions(groupId: string, options?: any): AxiosPromise> { return localVarFp.getGroupPermissions(groupId, options).then((request) => request(axios, basePath)); }, + /** + * Get posts from a Group + * @summary Get posts from a Group + * @param {string} groupId Must be a valid group ID. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {boolean} [publicOnly] See public posts only. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getGroupPost(groupId: string, n?: number, offset?: number, publicOnly?: boolean, options?: any): AxiosPromise { + return localVarFp.getGroupPost(groupId, n, offset, publicOnly, options).then((request) => request(axios, basePath)); + }, /** * Returns a list of members that have requested to join the Group. * @summary Get Group Join Requests @@ -12559,6 +12901,19 @@ export class GroupsApi extends BaseAPI { return GroupsApiFp(this.configuration).addGroupMemberRole(groupId, userId, groupRoleId, options).then((request) => request(this.axios, this.basePath)); } + /** + * Create a post in a Group. + * @summary Create a post in a Group + * @param {string} groupId Must be a valid group ID. + * @param {CreateGroupPostRequest} createGroupPostRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof GroupsApi + */ + public addGroupPost(groupId: string, createGroupPostRequest: CreateGroupPostRequest, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).addGroupPost(groupId, createGroupPostRequest, options).then((request) => request(this.axios, this.basePath)); + } + /** * Bans a user from a Group. * @summary Ban Group Member @@ -12712,6 +13067,19 @@ export class GroupsApi extends BaseAPI { return GroupsApiFp(this.configuration).deleteGroupInvite(groupId, userId, options).then((request) => request(this.axios, this.basePath)); } + /** + * Delete a Group post + * @summary Delete a Group post + * @param {string} groupId Must be a valid group ID. + * @param {string} notificationId Must be a valid notification ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof GroupsApi + */ + public deleteGroupPost(groupId: string, notificationId: string, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).deleteGroupPost(groupId, notificationId, options).then((request) => request(this.axios, this.basePath)); + } + /** * Deletes a Group Role by ID and returns the remaining roles. * @summary Delete Group Role @@ -12862,6 +13230,21 @@ export class GroupsApi extends BaseAPI { return GroupsApiFp(this.configuration).getGroupPermissions(groupId, options).then((request) => request(this.axios, this.basePath)); } + /** + * Get posts from a Group + * @summary Get posts from a Group + * @param {string} groupId Must be a valid group ID. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {boolean} [publicOnly] See public posts only. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof GroupsApi + */ + public getGroupPost(groupId: string, n?: number, offset?: number, publicOnly?: boolean, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).getGroupPost(groupId, n, offset, publicOnly, options).then((request) => request(this.axios, this.basePath)); + } + /** * Returns a list of members that have requested to join the Group. * @summary Get Group Join Requests diff --git a/base.ts b/base.ts index 19466d5..2741ad4 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.17.1 + * The version of the OpenAPI document: 1.17.2 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index 430fc47..14733b2 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.17.1 + * The version of the OpenAPI document: 1.17.2 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index 9f20db4..86dc712 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.17.1 + * The version of the OpenAPI document: 1.17.2 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index bb4ab49..a5f3d5b 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.17.1 + * The version of the OpenAPI document: 1.17.2 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index b44c4d3..8b4b643 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.17.1", + "version": "1.17.2", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.17.1", + "version": "1.17.2", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", @@ -56,9 +56,9 @@ } }, "node_modules/follow-redirects": { - "version": "1.15.5", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.5.tgz", - "integrity": "sha512-vSFWUON1B+yAw1VN4xMfxgn5fTUiaOzAJCKBwIIgT/+7CuGy9+r+5gITvP62j3RmaD5Ph65UaERdOSRGUzZtgw==", + "version": "1.15.6", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.6.tgz", + "integrity": "sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==", "funding": [ { "type": "individual", @@ -171,9 +171,9 @@ } }, "follow-redirects": { - "version": "1.15.5", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.5.tgz", - "integrity": "sha512-vSFWUON1B+yAw1VN4xMfxgn5fTUiaOzAJCKBwIIgT/+7CuGy9+r+5gITvP62j3RmaD5Ph65UaERdOSRGUzZtgw==" + "version": "1.15.6", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.6.tgz", + "integrity": "sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==" }, "is-redirect": { "version": "1.0.0", diff --git a/package.json b/package.json index 4b7a6f7..e8c520b 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.17.1", + "version": "1.17.2", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "repository": { From 05160622eae793be5d428aea8ba08a5264acb79d Mon Sep 17 00:00:00 2001 From: VRCCat Date: Mon, 29 Apr 2024 22:00:35 +0000 Subject: [PATCH 105/130] Upgrade Node SDK to spec 1.17.3 --- api.ts | 350 ++++++++++++++++++++++++++++++++++++++++++++-- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 +- package.json | 2 +- 7 files changed, 343 insertions(+), 21 deletions(-) diff --git a/api.ts b/api.ts index b73a697..8a5cc87 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.17.2 + * The version of the OpenAPI document: 1.17.3 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -1232,6 +1232,61 @@ export interface CreateGroupRoleRequest { */ 'permissions'?: Array; } +/** + * + * @export + * @interface CreateInstanceRequest + */ +export interface CreateInstanceRequest { + /** + * WorldID be \"offline\" on User profiles if you are not friends with that user. + * @type {string} + * @memberof CreateInstanceRequest + */ + 'worldId': string; + /** + * + * @type {InstanceType} + * @memberof CreateInstanceRequest + */ + 'type': InstanceType; + /** + * + * @type {Region} + * @memberof CreateInstanceRequest + */ + 'region': Region; + /** + * A groupId if the instance type is \"group\", null if instance type is public, or a userId otherwise + * @type {string} + * @memberof CreateInstanceRequest + */ + 'ownerId'?: string | null; + /** + * Group roleIds that are allowed to join if the type is \"group\" and groupAccessType is \"member\" + * @type {Array} + * @memberof CreateInstanceRequest + */ + 'roleIds'?: Array; + /** + * + * @type {GroupAccessType} + * @memberof CreateInstanceRequest + */ + 'groupAccessType'?: GroupAccessType; + /** + * + * @type {boolean} + * @memberof CreateInstanceRequest + */ + 'queueEnabled'?: boolean; + /** + * The time after which users won\'t be allowed to join the instance + * @type {string} + * @memberof CreateInstanceRequest + */ + 'closedAt'?: string; +} /** * * @export @@ -4516,6 +4571,107 @@ export interface Notification { */ 'type': NotificationType; } +/** + * + * @export + * @interface NotificationDetailInvite + */ +export interface NotificationDetailInvite { + /** + * + * @type {string} + * @memberof NotificationDetailInvite + */ + 'inviteMessage'?: string; + /** + * WorldID be \"offline\" on User profiles if you are not friends with that user. + * @type {string} + * @memberof NotificationDetailInvite + */ + 'worldId': string; + /** + * + * @type {string} + * @memberof NotificationDetailInvite + */ + 'worldName': string; +} +/** + * + * @export + * @interface NotificationDetailInviteResponse + */ +export interface NotificationDetailInviteResponse { + /** + * + * @type {string} + * @memberof NotificationDetailInviteResponse + */ + 'inResponseTo': string; + /** + * + * @type {string} + * @memberof NotificationDetailInviteResponse + */ + 'responseMessage': string; +} +/** + * + * @export + * @interface NotificationDetailRequestInvite + */ +export interface NotificationDetailRequestInvite { + /** + * TODO: Does this still exist? + * @type {string} + * @memberof NotificationDetailRequestInvite + */ + 'platform'?: string; + /** + * Used when using InviteMessage Slot. + * @type {string} + * @memberof NotificationDetailRequestInvite + */ + 'requestMessage'?: string; +} +/** + * + * @export + * @interface NotificationDetailRequestInviteResponse + */ +export interface NotificationDetailRequestInviteResponse { + /** + * + * @type {string} + * @memberof NotificationDetailRequestInviteResponse + */ + 'inResponseTo': string; + /** + * Used when using InviteMessage Slot. + * @type {string} + * @memberof NotificationDetailRequestInviteResponse + */ + 'requestMessage'?: string; +} +/** + * + * @export + * @interface NotificationDetailVoteToKick + */ +export interface NotificationDetailVoteToKick { + /** + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof NotificationDetailVoteToKick + */ + 'initiatorUserId': string; + /** + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof NotificationDetailVoteToKick + */ + 'userToKickId': string; +} /** * * @export @@ -11832,6 +11988,52 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio options: localVarRequestOptions, }; }, + /** + * Edits a Group post + * @summary Edits a Group post + * @param {string} groupId Must be a valid group ID. + * @param {string} notificationId Must be a valid notification ID. + * @param {CreateGroupPostRequest} createGroupPostRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + updateGroupPost: async (groupId: string, notificationId: string, createGroupPostRequest: CreateGroupPostRequest, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'groupId' is not null or undefined + assertParamExists('updateGroupPost', 'groupId', groupId) + // verify required parameter 'notificationId' is not null or undefined + assertParamExists('updateGroupPost', 'notificationId', notificationId) + // verify required parameter 'createGroupPostRequest' is not null or undefined + assertParamExists('updateGroupPost', 'createGroupPostRequest', createGroupPostRequest) + const localVarPath = `/groups/{groupId}/posts/{notificationId}` + .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))) + .replace(`{${"notificationId"}}`, encodeURIComponent(String(notificationId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(createGroupPostRequest, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, /** * Updates a group role by ID. * @summary Update Group Role @@ -12377,6 +12579,19 @@ export const GroupsApiFp = function(configuration?: Configuration) { const localVarAxiosArgs = await localVarAxiosParamCreator.updateGroupMember(groupId, userId, updateGroupMemberRequest, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, + /** + * Edits a Group post + * @summary Edits a Group post + * @param {string} groupId Must be a valid group ID. + * @param {string} notificationId Must be a valid notification ID. + * @param {CreateGroupPostRequest} createGroupPostRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async updateGroupPost(groupId: string, notificationId: string, createGroupPostRequest: CreateGroupPostRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.updateGroupPost(groupId, notificationId, createGroupPostRequest, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** * Updates a group role by ID. * @summary Update Group Role @@ -12851,6 +13066,18 @@ export const GroupsApiFactory = function (configuration?: Configuration, basePat updateGroupMember(groupId: string, userId: string, updateGroupMemberRequest?: UpdateGroupMemberRequest, options?: any): AxiosPromise { return localVarFp.updateGroupMember(groupId, userId, updateGroupMemberRequest, options).then((request) => request(axios, basePath)); }, + /** + * Edits a Group post + * @summary Edits a Group post + * @param {string} groupId Must be a valid group ID. + * @param {string} notificationId Must be a valid notification ID. + * @param {CreateGroupPostRequest} createGroupPostRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + updateGroupPost(groupId: string, notificationId: string, createGroupPostRequest: CreateGroupPostRequest, options?: any): AxiosPromise { + return localVarFp.updateGroupPost(groupId, notificationId, createGroupPostRequest, options).then((request) => request(axios, basePath)); + }, /** * Updates a group role by ID. * @summary Update Group Role @@ -13404,6 +13631,20 @@ export class GroupsApi extends BaseAPI { return GroupsApiFp(this.configuration).updateGroupMember(groupId, userId, updateGroupMemberRequest, options).then((request) => request(this.axios, this.basePath)); } + /** + * Edits a Group post + * @summary Edits a Group post + * @param {string} groupId Must be a valid group ID. + * @param {string} notificationId Must be a valid notification ID. + * @param {CreateGroupPostRequest} createGroupPostRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof GroupsApi + */ + public updateGroupPost(groupId: string, notificationId: string, createGroupPostRequest: CreateGroupPostRequest, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).updateGroupPost(groupId, notificationId, createGroupPostRequest, options).then((request) => request(this.axios, this.basePath)); + } + /** * Updates a group role by ID. * @summary Update Group Role @@ -13427,15 +13668,16 @@ export class GroupsApi extends BaseAPI { export const InstancesApiAxiosParamCreator = function (configuration?: Configuration) { return { /** - * Close an instance. You can only close an instance if the ownerId is yourself or if the instance owner is a group and you have the `group-instance-moderate` permission. + * Close an instance or update the closedAt time when it will be closed. You can only close an instance if the ownerId is yourself or if the instance owner is a group and you have the `group-instance-moderate` permission. * @summary Close Instance * @param {string} worldId Must be a valid world ID. * @param {string} instanceId Must be a valid instance ID. * @param {boolean} [hardClose] Whether to hard close the instance. Defaults to false. + * @param {string} [closedAt] The time after which users won\'t be allowed to join the instances. If omitted, the instance will be closed immediately. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - closeInstance: async (worldId: string, instanceId: string, hardClose?: boolean, options: AxiosRequestConfig = {}): Promise => { + closeInstance: async (worldId: string, instanceId: string, hardClose?: boolean, closedAt?: string, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'worldId' is not null or undefined assertParamExists('closeInstance', 'worldId', worldId) // verify required parameter 'instanceId' is not null or undefined @@ -13460,11 +13702,55 @@ export const InstancesApiAxiosParamCreator = function (configuration?: Configura localVarQueryParameter['hardClose'] = hardClose; } + if (closedAt !== undefined) { + localVarQueryParameter['closedAt'] = (closedAt as any instanceof Date) ? + (closedAt as any).toISOString() : + closedAt; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Create an instance + * @summary Create Instance + * @param {CreateInstanceRequest} createInstanceRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + createInstance: async (createInstanceRequest: CreateInstanceRequest, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'createInstanceRequest' is not null or undefined + assertParamExists('createInstance', 'createInstanceRequest', createInstanceRequest) + const localVarPath = `/instances`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + localVarHeaderParameter['Content-Type'] = 'application/json'; + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(createInstanceRequest, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), @@ -13638,16 +13924,28 @@ export const InstancesApiFp = function(configuration?: Configuration) { const localVarAxiosParamCreator = InstancesApiAxiosParamCreator(configuration) return { /** - * Close an instance. You can only close an instance if the ownerId is yourself or if the instance owner is a group and you have the `group-instance-moderate` permission. + * Close an instance or update the closedAt time when it will be closed. You can only close an instance if the ownerId is yourself or if the instance owner is a group and you have the `group-instance-moderate` permission. * @summary Close Instance * @param {string} worldId Must be a valid world ID. * @param {string} instanceId Must be a valid instance ID. * @param {boolean} [hardClose] Whether to hard close the instance. Defaults to false. + * @param {string} [closedAt] The time after which users won\'t be allowed to join the instances. If omitted, the instance will be closed immediately. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async closeInstance(worldId: string, instanceId: string, hardClose?: boolean, closedAt?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.closeInstance(worldId, instanceId, hardClose, closedAt, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Create an instance + * @summary Create Instance + * @param {CreateInstanceRequest} createInstanceRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async closeInstance(worldId: string, instanceId: string, hardClose?: boolean, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.closeInstance(worldId, instanceId, hardClose, options); + async createInstance(createInstanceRequest: CreateInstanceRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.createInstance(createInstanceRequest, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** @@ -13708,16 +14006,27 @@ export const InstancesApiFactory = function (configuration?: Configuration, base const localVarFp = InstancesApiFp(configuration) return { /** - * Close an instance. You can only close an instance if the ownerId is yourself or if the instance owner is a group and you have the `group-instance-moderate` permission. + * Close an instance or update the closedAt time when it will be closed. You can only close an instance if the ownerId is yourself or if the instance owner is a group and you have the `group-instance-moderate` permission. * @summary Close Instance * @param {string} worldId Must be a valid world ID. * @param {string} instanceId Must be a valid instance ID. * @param {boolean} [hardClose] Whether to hard close the instance. Defaults to false. + * @param {string} [closedAt] The time after which users won\'t be allowed to join the instances. If omitted, the instance will be closed immediately. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + closeInstance(worldId: string, instanceId: string, hardClose?: boolean, closedAt?: string, options?: any): AxiosPromise { + return localVarFp.closeInstance(worldId, instanceId, hardClose, closedAt, options).then((request) => request(axios, basePath)); + }, + /** + * Create an instance + * @summary Create Instance + * @param {CreateInstanceRequest} createInstanceRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ - closeInstance(worldId: string, instanceId: string, hardClose?: boolean, options?: any): AxiosPromise { - return localVarFp.closeInstance(worldId, instanceId, hardClose, options).then((request) => request(axios, basePath)); + createInstance(createInstanceRequest: CreateInstanceRequest, options?: any): AxiosPromise { + return localVarFp.createInstance(createInstanceRequest, options).then((request) => request(axios, basePath)); }, /** * Returns an instance. Please read [Instances Tutorial](https://vrchatapi.github.io/tutorials/instances/) for more information on Instances. If an invalid instanceId is provided, this endpoint will simply return \"null\"! @@ -13773,17 +14082,30 @@ export const InstancesApiFactory = function (configuration?: Configuration, base */ export class InstancesApi extends BaseAPI { /** - * Close an instance. You can only close an instance if the ownerId is yourself or if the instance owner is a group and you have the `group-instance-moderate` permission. + * Close an instance or update the closedAt time when it will be closed. You can only close an instance if the ownerId is yourself or if the instance owner is a group and you have the `group-instance-moderate` permission. * @summary Close Instance * @param {string} worldId Must be a valid world ID. * @param {string} instanceId Must be a valid instance ID. * @param {boolean} [hardClose] Whether to hard close the instance. Defaults to false. + * @param {string} [closedAt] The time after which users won\'t be allowed to join the instances. If omitted, the instance will be closed immediately. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof InstancesApi + */ + public closeInstance(worldId: string, instanceId: string, hardClose?: boolean, closedAt?: string, options?: AxiosRequestConfig) { + return InstancesApiFp(this.configuration).closeInstance(worldId, instanceId, hardClose, closedAt, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Create an instance + * @summary Create Instance + * @param {CreateInstanceRequest} createInstanceRequest * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof InstancesApi */ - public closeInstance(worldId: string, instanceId: string, hardClose?: boolean, options?: AxiosRequestConfig) { - return InstancesApiFp(this.configuration).closeInstance(worldId, instanceId, hardClose, options).then((request) => request(this.axios, this.basePath)); + public createInstance(createInstanceRequest: CreateInstanceRequest, options?: AxiosRequestConfig) { + return InstancesApiFp(this.configuration).createInstance(createInstanceRequest, options).then((request) => request(this.axios, this.basePath)); } /** @@ -16401,7 +16723,7 @@ export const UsersApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getUserGroups(userId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + async getUserGroups(userId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.getUserGroups(userId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -16490,7 +16812,7 @@ export const UsersApiFactory = function (configuration?: Configuration, basePath * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getUserGroups(userId: string, options?: any): AxiosPromise> { + getUserGroups(userId: string, options?: any): AxiosPromise> { return localVarFp.getUserGroups(userId, options).then((request) => request(axios, basePath)); }, /** diff --git a/base.ts b/base.ts index 2741ad4..047333f 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.17.2 + * The version of the OpenAPI document: 1.17.3 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index 14733b2..871d1ff 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.17.2 + * The version of the OpenAPI document: 1.17.3 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index 86dc712..9d8040b 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.17.2 + * The version of the OpenAPI document: 1.17.3 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index a5f3d5b..589405f 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.17.2 + * The version of the OpenAPI document: 1.17.3 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index 8b4b643..221a418 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.17.2", + "version": "1.17.3", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.17.2", + "version": "1.17.3", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index e8c520b..7c946f1 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.17.2", + "version": "1.17.3", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "repository": { From 1c943cb101b439138192014c3b5a31f5b4584fde Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Foorack=20/=20Max=20Fax=C3=A4lv?= Date: Mon, 27 May 2024 20:30:00 +0200 Subject: [PATCH 106/130] JamesIves/github-pages-deploy-action@v4 --- .github/workflows/ci.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 555d301..e5b801d 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -33,7 +33,7 @@ jobs: - name: Print version number run: echo ${{ env.spec_version }} - name: Deploy SDK back into main branch - uses: JamesIves/github-pages-deploy-action@4.1.5 + uses: JamesIves/github-pages-deploy-action@v4 with: branch: main folder: . @@ -41,4 +41,4 @@ jobs: - name: Upload to NPM uses: JS-DevTools/npm-publish@v1 with: - token: ${{ secrets.NPM_TOKEN }} \ No newline at end of file + token: ${{ secrets.NPM_TOKEN }} From 4ca5320ed69362e2ae880a184078c145e1a099ad Mon Sep 17 00:00:00 2001 From: VRCCat Date: Mon, 27 May 2024 18:32:37 +0000 Subject: [PATCH 107/130] Upgrade Node SDK to spec 1.17.5 --- api.ts | 394 +++++++++++++++++++++++++++++++++++++++++++--- base.ts | 4 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 +- package.json | 2 +- 7 files changed, 380 insertions(+), 30 deletions(-) diff --git a/api.ts b/api.ts index 8a5cc87..8f95959 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.17.3 + * The version of the OpenAPI document: 1.17.5 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -856,6 +856,61 @@ export interface AvatarUnityPackageUrlObject { */ 'unityPackageUrl'?: string; } +/** + * + * @export + * @interface Badge + */ +export interface Badge { + /** + * only present in CurrentUser badges + * @type {string} + * @memberof Badge + */ + 'assignedAt'?: string | null; + /** + * + * @type {string} + * @memberof Badge + */ + 'badgeDescription': string; + /** + * + * @type {string} + * @memberof Badge + */ + 'badgeId': string; + /** + * direct url to image + * @type {string} + * @memberof Badge + */ + 'badgeImageUrl': string; + /** + * + * @type {string} + * @memberof Badge + */ + 'badgeName': string; + /** + * only present in CurrentUser badges + * @type {boolean} + * @memberof Badge + */ + 'hidden'?: boolean | null; + /** + * + * @type {boolean} + * @memberof Badge + */ + 'showcased': boolean; + /** + * only present in CurrentUser badges + * @type {string} + * @memberof Badge + */ + 'updatedAt'?: string | null; +} /** * * @export @@ -1252,10 +1307,10 @@ export interface CreateInstanceRequest { 'type': InstanceType; /** * - * @type {Region} + * @type {InstanceRegion} * @memberof CreateInstanceRequest */ - 'region': Region; + 'region': InstanceRegion; /** * A groupId if the instance type is \"group\", null if instance type is public, or a userId otherwise * @type {string} @@ -1281,11 +1336,29 @@ export interface CreateInstanceRequest { */ 'queueEnabled'?: boolean; /** - * The time after which users won\'t be allowed to join the instance + * The time after which users won\'t be allowed to join the instance. This doesn\'t work for public instances. * @type {string} * @memberof CreateInstanceRequest */ 'closedAt'?: string; + /** + * Only applies to invite type instances to make them invite+ + * @type {boolean} + * @memberof CreateInstanceRequest + */ + 'canRequestInvite'?: boolean; + /** + * Currently unused, but will eventually be a flag to set if the closing of the instance should kick people. + * @type {boolean} + * @memberof CreateInstanceRequest + */ + 'hardClose'?: boolean; + /** + * + * @type {boolean} + * @memberof CreateInstanceRequest + */ + 'inviteOnly'?: boolean; } /** * @@ -1420,6 +1493,12 @@ export interface CurrentUser { * @memberof CurrentUser */ 'allowAvatarCopying': boolean; + /** + * + * @type {Array} + * @memberof CurrentUser + */ + 'badges'?: Array; /** * * @type {string} @@ -1461,7 +1540,7 @@ export interface CurrentUser { * @type {Array} * @memberof CurrentUser */ - 'currentAvatarTags'?: Array; + 'currentAvatarTags': Array; /** * * @type {string} @@ -1583,6 +1662,12 @@ export interface CurrentUser { * @memberof CurrentUser */ 'last_login': string; + /** + * + * @type {string} + * @memberof CurrentUser + */ + 'last_mobile': string | null; /** * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. * @type {string} @@ -1613,6 +1698,12 @@ export interface CurrentUser { * @memberof CurrentUser */ 'googleId'?: string; + /** + * + * @type {object} + * @memberof CurrentUser + */ + 'googleDetails'?: object; /** * * @type {string} @@ -1655,6 +1746,12 @@ export interface CurrentUser { * @memberof CurrentUser */ 'profilePicOverride': string; + /** + * + * @type {string} + * @memberof CurrentUser + */ + 'pronouns': string; /** * * @type {UserState} @@ -2426,7 +2523,7 @@ export interface Group { export const GroupAccessType = { Public: 'public', Plus: 'plus', - Member: 'member' + Members: 'members' } as const; export type GroupAccessType = typeof GroupAccessType[keyof typeof GroupAccessType]; @@ -3656,10 +3753,10 @@ export interface Instance { 'platforms': InstancePlatforms; /** * - * @type {Region} + * @type {InstanceRegion} * @memberof Instance */ - 'region': Region; + 'region': InstanceRegion; /** * * @type {string} @@ -3806,6 +3903,22 @@ export interface InstancePlatforms { */ 'standalonewindows': number; } +/** + * Instance region + * @export + * @enum {string} + */ + +export const InstanceRegion = { + Us: 'us', + Use: 'use', + Eu: 'eu', + Jp: 'jp' +} as const; + +export type InstanceRegion = typeof InstanceRegion[keyof typeof InstanceRegion]; + + /** * * @export @@ -4171,6 +4284,12 @@ export interface LimitedUser { * @memberof LimitedUser */ 'bio'?: string; + /** + * + * @type {Array} + * @memberof LimitedUser + */ + 'bioLinks'?: Array; /** * When profilePicOverride is not empty, use it instead. * @type {string} @@ -4183,6 +4302,12 @@ export interface LimitedUser { * @memberof LimitedUser */ 'currentAvatarThumbnailImageUrl'?: string; + /** + * + * @type {Array} + * @memberof LimitedUser + */ + 'currentAvatarTags'?: Array; /** * * @type {DeveloperType} @@ -4225,6 +4350,12 @@ export interface LimitedUser { * @memberof LimitedUser */ 'profilePicOverride'?: string; + /** + * + * @type {string} + * @memberof LimitedUser + */ + 'pronouns'?: string; /** * * @type {UserStatus} @@ -4269,6 +4400,121 @@ export interface LimitedUser { */ 'friendKey'?: string; } +/** + * + * @export + * @interface LimitedUserGroups + */ +export interface LimitedUserGroups { + /** + * + * @type {string} + * @memberof LimitedUserGroups + */ + 'id'?: string; + /** + * + * @type {string} + * @memberof LimitedUserGroups + */ + 'name'?: string; + /** + * + * @type {string} + * @memberof LimitedUserGroups + */ + 'shortCode'?: string; + /** + * + * @type {string} + * @memberof LimitedUserGroups + */ + 'discriminator'?: string; + /** + * + * @type {string} + * @memberof LimitedUserGroups + */ + 'description'?: string; + /** + * + * @type {string} + * @memberof LimitedUserGroups + */ + 'iconId'?: string | null; + /** + * + * @type {string} + * @memberof LimitedUserGroups + */ + 'iconUrl'?: string | null; + /** + * + * @type {string} + * @memberof LimitedUserGroups + */ + 'bannerId'?: string | null; + /** + * + * @type {string} + * @memberof LimitedUserGroups + */ + 'bannerUrl'?: string | null; + /** + * + * @type {string} + * @memberof LimitedUserGroups + */ + 'privacy'?: string; + /** + * + * @type {string} + * @memberof LimitedUserGroups + */ + 'lastPostCreatedAt'?: string | null; + /** + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof LimitedUserGroups + */ + 'ownerId'?: string; + /** + * + * @type {number} + * @memberof LimitedUserGroups + */ + 'memberCount'?: number; + /** + * + * @type {string} + * @memberof LimitedUserGroups + */ + 'groupId'?: string; + /** + * + * @type {string} + * @memberof LimitedUserGroups + */ + 'memberVisibility'?: string; + /** + * + * @type {boolean} + * @memberof LimitedUserGroups + */ + 'isRepresenting'?: boolean; + /** + * + * @type {boolean} + * @memberof LimitedUserGroups + */ + 'mutualGroup'?: boolean; + /** + * + * @type {string} + * @memberof LimitedUserGroups + */ + 'lastPostReadAt'?: string | null; +} /** * * @export @@ -4311,6 +4557,12 @@ export interface LimitedWorld { * @memberof LimitedWorld */ 'favorites': number; + /** + * + * @type {number} + * @memberof LimitedWorld + */ + 'visits'?: number; /** * * @type {number} @@ -4359,6 +4611,12 @@ export interface LimitedWorld { * @memberof LimitedWorld */ 'popularity': number; + /** + * + * @type {string} + * @memberof LimitedWorld + */ + 'previewYoutubeId'?: string | null; /** * * @type {string} @@ -4997,6 +5255,12 @@ export interface RespondGroupJoinRequest { * @memberof RespondGroupJoinRequest */ 'action': GroupJoinRequestAction; + /** + * Whether to block the user from requesting again + * @type {boolean} + * @memberof RespondGroupJoinRequest + */ + 'block'?: boolean; } /** * @@ -5030,11 +5294,11 @@ export interface SentNotification { */ 'created_at': string; /** - * **NOTICE:** This is not a JSON object, this is a json **encoded** object, meaning you have to json-de-encode to get the NotificationDetail object depending on the NotificationType. - * @type {string} + * + * @type {object} * @memberof SentNotification */ - 'details': string; + 'details': object; /** * * @type {string} @@ -5052,7 +5316,7 @@ export interface SentNotification { * @type {string} * @memberof SentNotification */ - 'recieverUserId': string; + 'receiverUserId': string; /** * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} @@ -5121,6 +5385,30 @@ export interface Subscription { * @memberof Subscription */ 'steamItemId': string; + /** + * + * @type {string} + * @memberof Subscription + */ + 'oculusSku'?: string; + /** + * + * @type {string} + * @memberof Subscription + */ + 'googleProductId'?: string; + /** + * + * @type {string} + * @memberof Subscription + */ + 'googlePlanId'?: string; + /** + * + * @type {string} + * @memberof Subscription + */ + 'picoSku'?: string; /** * * @type {number} @@ -5188,6 +5476,18 @@ export interface Transaction { * @memberof Transaction */ 'id': string; + /** + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof Transaction + */ + 'userId'?: string; + /** + * + * @type {string} + * @memberof Transaction + */ + 'userDisplayName'?: string; /** * * @type {TransactionStatus} @@ -5236,6 +5536,18 @@ export interface Transaction { * @memberof Transaction */ 'error': string; + /** + * + * @type {boolean} + * @memberof Transaction + */ + 'isGift'?: boolean; + /** + * + * @type {boolean} + * @memberof Transaction + */ + 'isTokens'?: boolean; } /** * @@ -5534,6 +5846,12 @@ export interface UnityPackage { * @memberof UnityPackage */ 'scanStatus'?: string; + /** + * + * @type {string} + * @memberof UnityPackage + */ + 'variant'?: string; } /** * @@ -5872,6 +6190,12 @@ export interface UpdateUserRequest { * @memberof UpdateUserRequest */ 'bioLinks'?: Array; + /** + * + * @type {string} + * @memberof UpdateUserRequest + */ + 'pronouns'?: string; /** * MUST be a valid VRChat /file/ url. * @type {string} @@ -5976,6 +6300,12 @@ export interface User { * @memberof User */ 'allowAvatarCopying': boolean; + /** + * + * @type {Array} + * @memberof User + */ + 'badges'?: Array; /** * * @type {string} @@ -6000,6 +6330,12 @@ export interface User { * @memberof User */ 'currentAvatarThumbnailImageUrl': string; + /** + * + * @type {Array} + * @memberof User + */ + 'currentAvatarTags': Array; /** * * @type {string} @@ -6084,6 +6420,12 @@ export interface User { * @memberof User */ 'profilePicOverride': string; + /** + * + * @type {string} + * @memberof User + */ + 'pronouns': string; /** * * @type {UserState} @@ -6550,7 +6892,7 @@ export interface WorldPublishStatus { * @type {boolean} * @memberof WorldPublishStatus */ - 'canPubilsh': boolean; + 'canPublish': boolean; } /** @@ -11497,10 +11839,11 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio * @param {string} groupId Must be a valid group ID. * @param {number} [n] The number of objects to return. * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {boolean} [blocked] See blocked join requests * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getGroupRequests: async (groupId: string, n?: number, offset?: number, options: AxiosRequestConfig = {}): Promise => { + getGroupRequests: async (groupId: string, n?: number, offset?: number, blocked?: boolean, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'groupId' is not null or undefined assertParamExists('getGroupRequests', 'groupId', groupId) const localVarPath = `/groups/{groupId}/requests` @@ -11526,6 +11869,10 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio localVarQueryParameter['offset'] = offset; } + if (blocked !== undefined) { + localVarQueryParameter['blocked'] = blocked; + } + setSearchParams(localVarUrlObj, localVarQueryParameter); @@ -12438,11 +12785,12 @@ export const GroupsApiFp = function(configuration?: Configuration) { * @param {string} groupId Must be a valid group ID. * @param {number} [n] The number of objects to return. * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {boolean} [blocked] See blocked join requests * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getGroupRequests(groupId: string, n?: number, offset?: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getGroupRequests(groupId, n, offset, options); + async getGroupRequests(groupId: string, n?: number, offset?: number, blocked?: boolean, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getGroupRequests(groupId, n, offset, blocked, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** @@ -12937,11 +13285,12 @@ export const GroupsApiFactory = function (configuration?: Configuration, basePat * @param {string} groupId Must be a valid group ID. * @param {number} [n] The number of objects to return. * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {boolean} [blocked] See blocked join requests * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getGroupRequests(groupId: string, n?: number, offset?: number, options?: any): AxiosPromise> { - return localVarFp.getGroupRequests(groupId, n, offset, options).then((request) => request(axios, basePath)); + getGroupRequests(groupId: string, n?: number, offset?: number, blocked?: boolean, options?: any): AxiosPromise> { + return localVarFp.getGroupRequests(groupId, n, offset, blocked, options).then((request) => request(axios, basePath)); }, /** * Returns a Group Role by ID. @@ -13478,12 +13827,13 @@ export class GroupsApi extends BaseAPI { * @param {string} groupId Must be a valid group ID. * @param {number} [n] The number of objects to return. * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {boolean} [blocked] See blocked join requests * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof GroupsApi */ - public getGroupRequests(groupId: string, n?: number, offset?: number, options?: AxiosRequestConfig) { - return GroupsApiFp(this.configuration).getGroupRequests(groupId, n, offset, options).then((request) => request(this.axios, this.basePath)); + public getGroupRequests(groupId: string, n?: number, offset?: number, blocked?: boolean, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).getGroupRequests(groupId, n, offset, blocked, options).then((request) => request(this.axios, this.basePath)); } /** @@ -16723,7 +17073,7 @@ export const UsersApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getUserGroups(userId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + async getUserGroups(userId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.getUserGroups(userId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -16812,7 +17162,7 @@ export const UsersApiFactory = function (configuration?: Configuration, basePath * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getUserGroups(userId: string, options?: any): AxiosPromise> { + getUserGroups(userId: string, options?: any): AxiosPromise> { return localVarFp.getUserGroups(userId, options).then((request) => request(axios, basePath)); }, /** diff --git a/base.ts b/base.ts index 047333f..2e11ba4 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.17.3 + * The version of the OpenAPI document: 1.17.5 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -17,7 +17,7 @@ import { Configuration } from "./configuration"; // @ts-ignore import globalAxios, { AxiosPromise, AxiosInstance, AxiosRequestConfig } from 'axios'; -export const BASE_PATH = "https://api.vrchat.cloud/api/1".replace(/\/+$/, ""); +export const BASE_PATH = "https://vrchat.com/api/1".replace(/\/+$/, ""); /** * diff --git a/common.ts b/common.ts index 871d1ff..f22857b 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.17.3 + * The version of the OpenAPI document: 1.17.5 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index 9d8040b..27059b9 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.17.3 + * The version of the OpenAPI document: 1.17.5 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index 589405f..f5243fa 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.17.3 + * The version of the OpenAPI document: 1.17.5 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index 221a418..8b0d1cb 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.17.3", + "version": "1.17.5", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.17.3", + "version": "1.17.5", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index 7c946f1..d8e78e2 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.17.3", + "version": "1.17.5", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "repository": { From 97da778293ebf79e2c8a96eec5aba84e3de9f4f8 Mon Sep 17 00:00:00 2001 From: VRCCat Date: Thu, 13 Jun 2024 19:49:49 +0000 Subject: [PATCH 108/130] Upgrade Node SDK to spec 1.17.6 --- api.ts | 31 ++++++++++++++++++++++++++++--- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 ++-- package.json | 2 +- 7 files changed, 35 insertions(+), 10 deletions(-) diff --git a/api.ts b/api.ts index 8f95959..df28689 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.17.5 + * The version of the OpenAPI document: 1.17.6 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -1644,6 +1644,12 @@ export interface CurrentUser { * @memberof CurrentUser */ 'id': string; + /** + * + * @type {boolean} + * @memberof CurrentUser + */ + 'isBoopingEnabled'?: boolean; /** * * @type {boolean} @@ -1746,6 +1752,12 @@ export interface CurrentUser { * @memberof CurrentUser */ 'profilePicOverride': string; + /** + * + * @type {string} + * @memberof CurrentUser + */ + 'profilePicOverrideThumbnail': string; /** * * @type {string} @@ -2893,7 +2905,7 @@ export interface GroupLimitedMember { * @type {string} * @memberof GroupLimitedMember */ - 'joinedAt'?: string; + 'joinedAt'?: string | null; /** * * @type {GroupMemberStatus} @@ -3106,7 +3118,8 @@ export const GroupMemberStatus = { Member: 'member', Requested: 'requested', Invited: 'invited', - Banned: 'banned' + Banned: 'banned', + Userblocked: 'userblocked' } as const; export type GroupMemberStatus = typeof GroupMemberStatus[keyof typeof GroupMemberStatus]; @@ -6196,6 +6209,12 @@ export interface UpdateUserRequest { * @memberof UpdateUserRequest */ 'pronouns'?: string; + /** + * + * @type {boolean} + * @memberof UpdateUserRequest + */ + 'isBoopingEnabled'?: boolean; /** * MUST be a valid VRChat /file/ url. * @type {string} @@ -6420,6 +6439,12 @@ export interface User { * @memberof User */ 'profilePicOverride': string; + /** + * + * @type {string} + * @memberof User + */ + 'profilePicOverrideThumbnail': string; /** * * @type {string} diff --git a/base.ts b/base.ts index 2e11ba4..feb2a56 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.17.5 + * The version of the OpenAPI document: 1.17.6 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index f22857b..b2a7f6e 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.17.5 + * The version of the OpenAPI document: 1.17.6 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index 27059b9..e2cd549 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.17.5 + * The version of the OpenAPI document: 1.17.6 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index f5243fa..fe37aff 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.17.5 + * The version of the OpenAPI document: 1.17.6 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index 8b0d1cb..cfe3a6f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.17.5", + "version": "1.17.6", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.17.5", + "version": "1.17.6", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index d8e78e2..a008ac1 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.17.5", + "version": "1.17.6", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "repository": { From f73603efcc3ca010b56ca326ceba922c1a4f8366 Mon Sep 17 00:00:00 2001 From: VRCCat Date: Sun, 21 Jul 2024 01:20:45 +0000 Subject: [PATCH 109/130] Upgrade Node SDK to spec 1.18.0 --- api.ts | 8 +++++++- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 ++-- package.json | 2 +- 7 files changed, 14 insertions(+), 8 deletions(-) diff --git a/api.ts b/api.ts index df28689..795b557 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.17.6 + * The version of the OpenAPI document: 1.18.0 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -6433,6 +6433,12 @@ export interface User { * @memberof User */ 'note'?: string; + /** + * + * @type {string} + * @memberof User + */ + 'platform': string; /** * * @type {string} diff --git a/base.ts b/base.ts index feb2a56..8452d00 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.17.6 + * The version of the OpenAPI document: 1.18.0 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index b2a7f6e..98932cb 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.17.6 + * The version of the OpenAPI document: 1.18.0 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index e2cd549..9d69f21 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.17.6 + * The version of the OpenAPI document: 1.18.0 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index fe37aff..aeedeb8 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.17.6 + * The version of the OpenAPI document: 1.18.0 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index cfe3a6f..d71b333 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.17.6", + "version": "1.18.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.17.6", + "version": "1.18.0", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index a008ac1..1764dbc 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.17.6", + "version": "1.18.0", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "repository": { From adfaa07c60e35a3bac308de92572a6cfd71f8972 Mon Sep 17 00:00:00 2001 From: VRCCat Date: Mon, 22 Jul 2024 21:38:15 +0000 Subject: [PATCH 110/130] Upgrade Node SDK to spec 1.18.1 --- api.ts | 355 +++++++++++++++++++++++++++++----------------- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 +- package.json | 2 +- 7 files changed, 235 insertions(+), 134 deletions(-) diff --git a/api.ts b/api.ts index 795b557..36839a4 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.18.0 + * The version of the OpenAPI document: 1.18.1 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -58,6 +58,18 @@ export interface APIConfig { * @deprecated */ 'appName': string; + /** + * List of supported Languages + * @type {Array} + * @memberof APIConfig + */ + 'availableLanguageCodes': Array; + /** + * List of supported Languages + * @type {Array} + * @memberof APIConfig + */ + 'availableLanguages': Array; /** * Build tag of the API server * @type {string} @@ -82,6 +94,66 @@ export interface APIConfig { * @memberof APIConfig */ 'clientDisconnectTimeout': number; + /** + * Unknown + * @type {boolean} + * @memberof APIConfig + */ + 'clientNetDispatchThread'?: boolean; + /** + * Unknown + * @type {boolean} + * @memberof APIConfig + */ + 'clientNetInThread'?: boolean; + /** + * Unknown + * @type {boolean} + * @memberof APIConfig + */ + 'clientNetInThread2'?: boolean; + /** + * Unknown + * @type {boolean} + * @memberof APIConfig + */ + 'clientNetInThreadMobile'?: boolean; + /** + * Unknown + * @type {boolean} + * @memberof APIConfig + */ + 'clientNetInThreadMobile2'?: boolean; + /** + * Unknown + * @type {boolean} + * @memberof APIConfig + */ + 'clientNetOutThread'?: boolean; + /** + * Unknown + * @type {boolean} + * @memberof APIConfig + */ + 'clientNetOutThread2'?: boolean; + /** + * Unknown + * @type {boolean} + * @memberof APIConfig + */ + 'clientNetOutThreadMobile'?: boolean; + /** + * Unknown + * @type {boolean} + * @memberof APIConfig + */ + 'clientNetOutThreadMobile2'?: boolean; + /** + * Unknown + * @type {number} + * @memberof APIConfig + */ + 'clientQR'?: number; /** * Unknown * @type {number} @@ -106,6 +178,12 @@ export interface APIConfig { * @memberof APIConfig */ 'copyrightEmail': string; + /** + * Current version number of the Privacy Agreement + * @type {number} + * @memberof APIConfig + */ + 'currentPrivacyVersion'?: number; /** * Current version number of the Terms of Service * @type {number} @@ -125,19 +203,11 @@ export interface APIConfig { */ 'deploymentGroup': DeploymentGroup; /** - * Version number for game development build - * @type {string} - * @memberof APIConfig - * @deprecated - */ - 'devAppVersionStandalone': string; - /** - * Developer Download link - * @type {string} + * Unknown + * @type {Array} * @memberof APIConfig - * @deprecated */ - 'devDownloadLinkWindows': string; + 'devLanguageCodes'?: Array; /** * Link to download the development SDK, use downloadUrls instead * @type {string} @@ -153,18 +223,17 @@ export interface APIConfig { */ 'devSdkVersion': string; /** - * Version number for server development build + * Unknown, \"dis\" maybe for disconnect? * @type {string} * @memberof APIConfig - * @deprecated */ - 'devServerVersionStandalone': string; + 'dis-countdown': string; /** - * Unknown, \"dis\" maybe for disconnect? - * @type {string} + * Unknown + * @type {boolean} * @memberof APIConfig */ - 'dis-countdown': string; + 'disableAVProInProton'?: boolean; /** * Toggles if copying avatars should be disabled * @type {boolean} @@ -195,6 +264,12 @@ export interface APIConfig { * @memberof APIConfig */ 'disableEmail': boolean; + /** + * Unknown + * @type {boolean} + * @memberof APIConfig + */ + 'disableCaptcha'?: boolean; /** * Toggles if Analytics should be disabled. * @type {boolean} @@ -275,18 +350,29 @@ export interface APIConfig { */ 'dynamicWorldRows': Set; /** - * - * @type {APIConfigEvents} + * Unknown + * @type {string} * @memberof APIConfig */ - 'events': APIConfigEvents; + 'economyPauseEnd'?: string; /** * Unknown * @type {string} * @memberof APIConfig - * @deprecated */ - 'gearDemoRoomId': string; + 'economyPauseStart'?: string; + /** + * Unknown + * @type {number} + * @memberof APIConfig + */ + 'economyState'?: number; + /** + * + * @type {APIConfigEvents} + * @memberof APIConfig + */ + 'events': APIConfigEvents; /** * WorldID be \"offline\" on User profiles if you are not friends with that user. * @type {string} @@ -306,70 +392,29 @@ export interface APIConfig { */ 'hubWorldId': string; /** - * VRChat\'s job application email - * @type {string} + * A list of explicitly allowed origins that worlds can request images from via the Udon\'s [VRCImageDownloader#DownloadImage](https://creators.vrchat.com/worlds/udon/image-loading/#downloadimage). + * @type {Array} * @memberof APIConfig */ - 'jobsEmail': string; + 'imageHostUrlList': Array; /** - * MOTD + * VRChat\'s job application email * @type {string} * @memberof APIConfig - * @deprecated */ - 'messageOfTheDay': string; + 'jobsEmail': string; /** * VRChat\'s moderation related email * @type {string} * @memberof APIConfig */ 'moderationEmail': string; - /** - * Unknown - * @type {number} - * @memberof APIConfig - */ - 'moderationQueryPeriod': number; /** * Used in-game to notify a user they aren\'t allowed to select avatars in private worlds * @type {string} * @memberof APIConfig */ 'notAllowedToSelectAvatarInPrivateWorldMessage': string; - /** - * Extra [plugin](https://doc.photonengine.com/en-us/server/current/plugins/manual) to run in each instance - * @type {string} - * @memberof APIConfig - */ - 'plugin': string; - /** - * Version number for game release build - * @type {string} - * @memberof APIConfig - * @deprecated - */ - 'releaseAppVersionStandalone': string; - /** - * Link to download the release SDK - * @type {string} - * @memberof APIConfig - * @deprecated - */ - 'releaseSdkUrl': string; - /** - * Version of the release SDK - * @type {string} - * @memberof APIConfig - * @deprecated - */ - 'releaseSdkVersion': string; - /** - * Version number for server release build - * @type {string} - * @memberof APIConfig - * @deprecated - */ - 'releaseServerVersionStandalone': string; /** * Link to the developer FAQ * @type {string} @@ -400,6 +445,12 @@ export interface APIConfig { * @memberof APIConfig */ 'serverName': string; + /** + * A list of explicitly allowed origins that worlds can request strings from via the Udon\'s [VRCStringDownloader.LoadUrl](https://creators.vrchat.com/worlds/udon/string-loading/#ivrcstringdownload). + * @type {Array} + * @memberof APIConfig + */ + 'stringHostUrlList': Array; /** * VRChat\'s support email * @type {string} @@ -460,30 +511,6 @@ export interface APIConfig { * @memberof APIConfig */ 'useReliableUdpForVoice': boolean; - /** - * Unknown - * @type {number} - * @memberof APIConfig - */ - 'userUpdatePeriod': number; - /** - * Unknown - * @type {number} - * @memberof APIConfig - */ - 'userVerificationDelay': number; - /** - * Unknown - * @type {number} - * @memberof APIConfig - */ - 'userVerificationRetry': number; - /** - * Unknown - * @type {number} - * @memberof APIConfig - */ - 'userVerificationTimeout': number; /** * Download link for game on the Steam website. * @type {string} @@ -497,23 +524,17 @@ export interface APIConfig { */ 'whiteListedAssetUrls': Array; /** - * Unknown - * @type {number} - * @memberof APIConfig - */ - 'worldUpdatePeriod': number; - /** - * Currently used youtube-dl.exe hash in SHA-256-delimited format + * Currently used youtube-dl.exe version * @type {string} * @memberof APIConfig */ - 'player-url-resolver-hash': string; + 'player-url-resolver-version': string; /** - * Currently used youtube-dl.exe version + * Currently used youtube-dl.exe hash in SHA1-delimited format * @type {string} * @memberof APIConfig */ - 'player-url-resolver-version': string; + 'player-url-resolver-sha1': string; } /** * Public Announcement @@ -2161,7 +2182,7 @@ export interface FileData { * @type {string} * @memberof FileData */ - 'md5': string; + 'md5'?: string; /** * * @type {number} @@ -2489,6 +2510,12 @@ export interface Group { * @memberof Group */ 'tags'?: Array; + /** + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof Group + */ + 'transferTargetId'?: string; /** * * @type {Array} @@ -2501,6 +2528,18 @@ export interface Group { * @memberof Group */ 'createdAt'?: string; + /** + * + * @type {string} + * @memberof Group + */ + 'updatedAt'?: string; + /** + * + * @type {string} + * @memberof Group + */ + 'lastPostCreatedAt'?: string; /** * * @type {number} @@ -3155,6 +3194,24 @@ export interface GroupMyMember { * @memberof GroupMyMember */ 'roleIds'?: Array; + /** + * + * @type {string} + * @memberof GroupMyMember + */ + 'acceptedByDisplayName'?: string; + /** + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof GroupMyMember + */ + 'acceptedById'?: string; + /** + * + * @type {string} + * @memberof GroupMyMember + */ + 'createdAt'?: string; /** * * @type {string} @@ -3203,6 +3260,24 @@ export interface GroupMyMember { * @memberof GroupMyMember */ 'has2FA'?: boolean; + /** + * + * @type {boolean} + * @memberof GroupMyMember + */ + 'hasJoinedFromPurchase'?: boolean; + /** + * + * @type {string} + * @memberof GroupMyMember + */ + 'lastPostReadAt'?: string; + /** + * + * @type {Array} + * @memberof GroupMyMember + */ + 'mRoleIds'?: Array; /** * * @type {Array} @@ -5032,6 +5107,12 @@ export interface Permission { * @memberof Permission */ 'id': string; + /** + * + * @type {string} + * @memberof Permission + */ + 'ownerDisplayName': string; /** * * @type {string} @@ -5563,7 +5644,7 @@ export interface Transaction { 'isTokens'?: boolean; } /** - * + * Represents a single Transaction, which is likely between VRChat and Steam. * @export * @interface TransactionAgreement */ @@ -5580,6 +5661,12 @@ export interface TransactionAgreement { * @memberof TransactionAgreement */ 'itemId': number; + /** + * + * @type {string} + * @memberof TransactionAgreement + */ + 'agreement': string; /** * This is NOT TransactionStatus, but whatever Steam return. * @type {string} @@ -6630,6 +6717,12 @@ export interface UserSubscription { * @memberof UserSubscription */ 'status': TransactionStatus; + /** + * + * @type {string} + * @memberof UserSubscription + */ + 'starts'?: string; /** * * @type {string} @@ -6937,12 +7030,12 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf * @summary Check User Exists * @param {string} [email] Filter by email. * @param {string} [displayName] Filter by displayName. - * @param {string} [userId] Filter by UserID. + * @param {string} [username] Filter by Username. * @param {string} [excludeUserId] Exclude by UserID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - checkUserExists: async (email?: string, displayName?: string, userId?: string, excludeUserId?: string, options: AxiosRequestConfig = {}): Promise => { + checkUserExists: async (email?: string, displayName?: string, username?: string, excludeUserId?: string, options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/auth/exists`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -6963,8 +7056,8 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf localVarQueryParameter['displayName'] = displayName; } - if (userId !== undefined) { - localVarQueryParameter['userId'] = userId; + if (username !== undefined) { + localVarQueryParameter['username'] = username; } if (excludeUserId !== undefined) { @@ -7249,13 +7342,13 @@ export const AuthenticationApiFp = function(configuration?: Configuration) { * @summary Check User Exists * @param {string} [email] Filter by email. * @param {string} [displayName] Filter by displayName. - * @param {string} [userId] Filter by UserID. + * @param {string} [username] Filter by Username. * @param {string} [excludeUserId] Exclude by UserID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async checkUserExists(email?: string, displayName?: string, userId?: string, excludeUserId?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.checkUserExists(email, displayName, userId, excludeUserId, options); + async checkUserExists(email?: string, displayName?: string, username?: string, excludeUserId?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.checkUserExists(email, displayName, username, excludeUserId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** @@ -7347,13 +7440,13 @@ export const AuthenticationApiFactory = function (configuration?: Configuration, * @summary Check User Exists * @param {string} [email] Filter by email. * @param {string} [displayName] Filter by displayName. - * @param {string} [userId] Filter by UserID. + * @param {string} [username] Filter by Username. * @param {string} [excludeUserId] Exclude by UserID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - checkUserExists(email?: string, displayName?: string, userId?: string, excludeUserId?: string, options?: any): AxiosPromise { - return localVarFp.checkUserExists(email, displayName, userId, excludeUserId, options).then((request) => request(axios, basePath)); + checkUserExists(email?: string, displayName?: string, username?: string, excludeUserId?: string, options?: any): AxiosPromise { + return localVarFp.checkUserExists(email, displayName, username, excludeUserId, options).then((request) => request(axios, basePath)); }, /** * Deletes the account with given ID. Normal users only have permission to delete their own account. Account deletion is 14 days from this request, and will be cancelled if you do an authenticated request with the account afterwards. **VRC+ NOTE:** Despite the 14-days cooldown, any VRC+ subscription will be cancelled **immediately**. **METHOD NOTE:** Despite this being a Delete action, the method type required is PUT. @@ -7437,14 +7530,14 @@ export class AuthenticationApi extends BaseAPI { * @summary Check User Exists * @param {string} [email] Filter by email. * @param {string} [displayName] Filter by displayName. - * @param {string} [userId] Filter by UserID. + * @param {string} [username] Filter by Username. * @param {string} [excludeUserId] Exclude by UserID. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof AuthenticationApi */ - public checkUserExists(email?: string, displayName?: string, userId?: string, excludeUserId?: string, options?: AxiosRequestConfig) { - return AuthenticationApiFp(this.configuration).checkUserExists(email, displayName, userId, excludeUserId, options).then((request) => request(this.axios, this.basePath)); + public checkUserExists(email?: string, displayName?: string, username?: string, excludeUserId?: string, options?: AxiosRequestConfig) { + return AuthenticationApiFp(this.configuration).checkUserExists(email, displayName, username, excludeUserId, options).then((request) => request(this.axios, this.basePath)); } /** @@ -9904,7 +9997,7 @@ export const FilesApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async deleteFile(fileId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async deleteFile(fileId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.deleteFile(fileId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -10036,7 +10129,7 @@ export const FilesApiFactory = function (configuration?: Configuration, basePath * @param {*} [options] Override http request option. * @throws {RequiredError} */ - deleteFile(fileId: string, options?: any): AxiosPromise { + deleteFile(fileId: string, options?: any): AxiosPromise { return localVarFp.deleteFile(fileId, options).then((request) => request(axios, basePath)); }, /** @@ -17893,10 +17986,11 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. * @param {string} [platform] The platform the asset supports. + * @param {boolean} [fuzzy] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - searchWorlds: async (featured?: boolean, sort?: SortOption, user?: 'me', userId?: string, n?: number, order?: OrderOption, offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: ReleaseStatus, maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options: AxiosRequestConfig = {}): Promise => { + searchWorlds: async (featured?: boolean, sort?: SortOption, user?: 'me', userId?: string, n?: number, order?: OrderOption, offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: ReleaseStatus, maxUnityVersion?: string, minUnityVersion?: string, platform?: string, fuzzy?: boolean, options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/worlds`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -17967,6 +18061,10 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio localVarQueryParameter['platform'] = platform; } + if (fuzzy !== undefined) { + localVarQueryParameter['fuzzy'] = fuzzy; + } + setSearchParams(localVarUrlObj, localVarQueryParameter); @@ -18228,11 +18326,12 @@ export const WorldsApiFp = function(configuration?: Configuration) { * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. * @param {string} [platform] The platform the asset supports. + * @param {boolean} [fuzzy] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async searchWorlds(featured?: boolean, sort?: SortOption, user?: 'me', userId?: string, n?: number, order?: OrderOption, offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: ReleaseStatus, maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { - const localVarAxiosArgs = await localVarAxiosParamCreator.searchWorlds(featured, sort, user, userId, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options); + async searchWorlds(featured?: boolean, sort?: SortOption, user?: 'me', userId?: string, n?: number, order?: OrderOption, offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: ReleaseStatus, maxUnityVersion?: string, minUnityVersion?: string, platform?: string, fuzzy?: boolean, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.searchWorlds(featured, sort, user, userId, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, fuzzy, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** @@ -18422,11 +18521,12 @@ export const WorldsApiFactory = function (configuration?: Configuration, basePat * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. * @param {string} [platform] The platform the asset supports. + * @param {boolean} [fuzzy] * @param {*} [options] Override http request option. * @throws {RequiredError} */ - searchWorlds(featured?: boolean, sort?: SortOption, user?: 'me', userId?: string, n?: number, order?: OrderOption, offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: ReleaseStatus, maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: any): AxiosPromise> { - return localVarFp.searchWorlds(featured, sort, user, userId, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options).then((request) => request(axios, basePath)); + searchWorlds(featured?: boolean, sort?: SortOption, user?: 'me', userId?: string, n?: number, order?: OrderOption, offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: ReleaseStatus, maxUnityVersion?: string, minUnityVersion?: string, platform?: string, fuzzy?: boolean, options?: any): AxiosPromise> { + return localVarFp.searchWorlds(featured, sort, user, userId, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, fuzzy, options).then((request) => request(axios, basePath)); }, /** * Unpublish a world. @@ -18633,12 +18733,13 @@ export class WorldsApi extends BaseAPI { * @param {string} [maxUnityVersion] The maximum Unity version supported by the asset. * @param {string} [minUnityVersion] The minimum Unity version supported by the asset. * @param {string} [platform] The platform the asset supports. + * @param {boolean} [fuzzy] * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof WorldsApi */ - public searchWorlds(featured?: boolean, sort?: SortOption, user?: 'me', userId?: string, n?: number, order?: OrderOption, offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: ReleaseStatus, maxUnityVersion?: string, minUnityVersion?: string, platform?: string, options?: AxiosRequestConfig) { - return WorldsApiFp(this.configuration).searchWorlds(featured, sort, user, userId, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, options).then((request) => request(this.axios, this.basePath)); + public searchWorlds(featured?: boolean, sort?: SortOption, user?: 'me', userId?: string, n?: number, order?: OrderOption, offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: ReleaseStatus, maxUnityVersion?: string, minUnityVersion?: string, platform?: string, fuzzy?: boolean, options?: AxiosRequestConfig) { + return WorldsApiFp(this.configuration).searchWorlds(featured, sort, user, userId, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, fuzzy, options).then((request) => request(this.axios, this.basePath)); } /** diff --git a/base.ts b/base.ts index 8452d00..421a17b 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.18.0 + * The version of the OpenAPI document: 1.18.1 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index 98932cb..1aa7913 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.18.0 + * The version of the OpenAPI document: 1.18.1 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index 9d69f21..dfa2ece 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.18.0 + * The version of the OpenAPI document: 1.18.1 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index aeedeb8..7ccc8dd 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.18.0 + * The version of the OpenAPI document: 1.18.1 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index d71b333..0b4369b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.18.0", + "version": "1.18.1", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.18.0", + "version": "1.18.1", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index 1764dbc..f1aeb7e 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.18.0", + "version": "1.18.1", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "repository": { From bfd3b8fd7f18d1d00a934af851cb6c202dcb492c Mon Sep 17 00:00:00 2001 From: JelleJurre <76777936+jellejurre@users.noreply.github.com> Date: Sat, 31 Aug 2024 02:59:10 +0200 Subject: [PATCH 111/130] Update documentation (#11) * Improve example * Update example.js * Remove comma --- README.md | 22 +++++++++++++++++++--- example.js | 39 +++++++++++++++++++++++++++++++-------- 2 files changed, 50 insertions(+), 11 deletions(-) diff --git a/README.md b/README.md index f80094f..e7ddd46 100644 --- a/README.md +++ b/README.md @@ -26,20 +26,36 @@ npm install vrchat Below is an example on how to login to the API and fetch your own user information. ```javascript -// Step 1. We begin with creating a Configuration, which contains the username and password for authentication. +// Step 1. We begin with creating a Configuration, which contains the username and password for authentication, as well as an options dictionary, which contains the user agent header. const vrchat = require("vrchat"); + const configuration = new vrchat.Configuration({ username: "username", password: "password" }); +const options = { headers: { "User-Agent": "ExampleProgram/0.0.1 my@email.com"}}; + // Step 2. VRChat consists of several API's (WorldsApi, UsersApi, FilesApi, NotificationsApi, FriendsApi, etc...) // Here we instantiate the Authentication API which is required for logging in. const AuthenticationApi = new vrchat.AuthenticationApi(configuration); // Step 3. Calling getCurrentUser on Authentication API logs you in if the user isn't already logged in. -AuthenticationApi.getCurrentUser().then(resp => { - const currentUser = resp.data; +AuthenticationApi.getCurrentUser(options).then(async resp => { + var currentUser = resp.data; + + // Step 3.5. Calling email verify2fa if the account has 2FA disabled + if (currentUser["requiresTwoFactorAuth"] && currentUser["requiresTwoFactorAuth"][0] === "emailOtp") { + await AuthenticationApi.verify2FAEmailCode({ code: "123456" }, options) + currentUser = (await AuthenticationApi.getCurrentUser(options)).data; + } + + // Step 3.5. Calling verify2fa if the account has 2FA enabled + if (currentUser["requiresTwoFactorAuth"] && currentUser["requiresTwoFactorAuth"][0] === "totp") { + await AuthenticationApi.verify2FA({ code: "123456" }, options) + currentUser = (await AuthenticationApi.getCurrentUser(options)).data; + } + console.log(`Logged in as: ${currentUser.displayName}`); }); ``` diff --git a/example.js b/example.js index 4f1506d..369b9b3 100644 --- a/example.js +++ b/example.js @@ -1,22 +1,45 @@ const vrchat = require("vrchat"); +const readline = require("readline") + +const rl = readline.createInterface({ input: process.stdin, output: process.stdout }); +const prompt = (query) => new Promise((resolve) => rl.question(query, resolve)); + + const configuration = new vrchat.Configuration({ username: "username", password: "password" }); +const options = { headers: { "User-Agent": "ExampleProgram/0.0.1 my@email.com"}}; const AuthenticationApi = new vrchat.AuthenticationApi(configuration); const UsersApi = new vrchat.UsersApi(configuration); const SystemApi = new vrchat.SystemApi(configuration); -SystemApi.getCurrentOnlineUsers().then(resp => { - console.log(`Current Online Users: ${resp.data}`); +AuthenticationApi.getCurrentUser(options).then(async resp => { + var currentUser = resp.data; + + if (currentUser["requiresTwoFactorAuth"] && currentUser["requiresTwoFactorAuth"][0] === "emailOtp") { + await AuthenticationApi.verify2FAEmailCode({ code: await prompt("email Code\n") }, options) + currentUser = (await AuthenticationApi.getCurrentUser(options)).data; + } + if (currentUser["requiresTwoFactorAuth"] && currentUser["requiresTwoFactorAuth"][0] === "totp") { + await AuthenticationApi.verify2FA({ code: await prompt("2fa Code\n") }, options) + currentUser = (await AuthenticationApi.getCurrentUser(options)).data; + } - // Calling getCurrentUser on Authentication API logs you in if the user isn't already logged in. - AuthenticationApi.getCurrentUser().then(resp => { - console.log(`Logged in as: ${resp.data.displayName}`); + console.log(`Logged in as: ${currentUser.displayName}`); - UsersApi.getUser("usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469").then(resp => { - console.log(resp.data.displayName); // Should print out "tupper" + SystemApi.getCurrentOnlineUsers(options).then(resp => { + console.log(`Current Online Users: ${resp.data}`); + + // Calling getCurrentUser on Authentication API logs you in if the user isn't already logged in. + AuthenticationApi.getCurrentUser(options).then(resp => { + console.log(`Logged in as: ${resp.data.displayName}`); + + UsersApi.getUser("usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469", options).then(resp => { + console.log(resp.data.displayName); // Should print out "tupper" + }); }); }); -}); \ No newline at end of file +}); + From d8367d0d6383eb7dba8856b028ab1d0b106a379c Mon Sep 17 00:00:00 2001 From: VRCCat Date: Wed, 11 Sep 2024 01:10:18 +0000 Subject: [PATCH 112/130] Upgrade Node SDK to spec 1.18.1 --- api.ts | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/api.ts b/api.ts index 36839a4..ff08afd 100644 --- a/api.ts +++ b/api.ts @@ -2505,7 +2505,7 @@ export interface Group { */ 'joinState'?: GroupJoinState; /** - * + * * @type {Array} * @memberof Group */ @@ -2517,7 +2517,7 @@ export interface Group { */ 'transferTargetId'?: string; /** - * + * * @type {Array} * @memberof Group */ @@ -2539,7 +2539,7 @@ export interface Group { * @type {string} * @memberof Group */ - 'lastPostCreatedAt'?: string; + 'lastPostCreatedAt'?: string | null; /** * * @type {number} @@ -3199,7 +3199,7 @@ export interface GroupMyMember { * @type {string} * @memberof GroupMyMember */ - 'acceptedByDisplayName'?: string; + 'acceptedByDisplayName'?: string | null; /** * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} @@ -3271,7 +3271,7 @@ export interface GroupMyMember { * @type {string} * @memberof GroupMyMember */ - 'lastPostReadAt'?: string; + 'lastPostReadAt'?: string | null; /** * * @type {Array} @@ -4001,7 +4001,8 @@ export const InstanceRegion = { Us: 'us', Use: 'use', Eu: 'eu', - Jp: 'jp' + Jp: 'jp', + Unknown: 'unknown' } as const; export type InstanceRegion = typeof InstanceRegion[keyof typeof InstanceRegion]; @@ -6618,6 +6619,12 @@ export interface UserExists { * @memberof UserExists */ 'userExists': boolean; + /** + * Is the username valid? + * @type {boolean} + * @memberof UserExists + */ + 'nameOk': boolean; } /** * * \"online\" User is online in VRChat * \"active\" User is online, but not in VRChat * \"offline\" User is offline Always offline when returned through `getCurrentUser` (/auth/user). From eacf70319fe36e41758ce692b592479a96e463d9 Mon Sep 17 00:00:00 2001 From: VRCCat Date: Tue, 17 Sep 2024 18:39:03 +0000 Subject: [PATCH 113/130] Upgrade Node SDK to spec 1.18.3 --- api.ts | 62 ++++++++++++++++++++++++++++++++++++++++------- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 +-- package.json | 2 +- 7 files changed, 60 insertions(+), 16 deletions(-) diff --git a/api.ts b/api.ts index ff08afd..0c329b4 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.18.1 + * The version of the OpenAPI document: 1.18.3 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -1785,6 +1785,18 @@ export interface CurrentUser { * @memberof CurrentUser */ 'pronouns': string; + /** + * + * @type {string} + * @memberof CurrentUser + */ + 'queuedInstance'?: string | null; + /** + * + * @type {boolean} + * @memberof CurrentUser + */ + 'receiveMobileInvitations'?: boolean; /** * * @type {UserState} @@ -1883,6 +1895,12 @@ export interface CurrentUserPresence { * @memberof CurrentUserPresence */ 'avatarThumbnail'?: string | null; + /** + * + * @type {string} + * @memberof CurrentUserPresence + */ + 'currentAvatarTags'?: string; /** * * @type {string} @@ -1949,6 +1967,12 @@ export interface CurrentUserPresence { * @memberof CurrentUserPresence */ 'travelingToWorld'?: string; + /** + * + * @type {string} + * @memberof CurrentUserPresence + */ + 'userIcon'?: string | null; /** * WorldID be \"offline\" on User profiles if you are not friends with that user. * @type {string} @@ -5905,6 +5929,12 @@ export interface UnityPackage { * @memberof UnityPackage */ 'created_at'?: string; + /** + * + * @type {string} + * @memberof UnityPackage + */ + 'impostorizerVersion'?: string; /** * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. * @type {string} @@ -6503,6 +6533,12 @@ export interface User { * @memberof User */ 'last_login': string; + /** + * + * @type {string} + * @memberof User + */ + 'last_mobile'?: string | null; /** * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. * @type {string} @@ -6526,7 +6562,7 @@ export interface User { * @type {string} * @memberof User */ - 'platform': string; + 'platform'?: string; /** * * @type {string} @@ -11833,10 +11869,11 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio * @param {number} [n] The number of objects to return. * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {GroupSearchSort} [sort] The sort order of Group Member results + * @param {string} [roleId] Only returns members with a specific groupRoleId * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getGroupMembers: async (groupId: string, n?: number, offset?: number, sort?: GroupSearchSort, options: AxiosRequestConfig = {}): Promise => { + getGroupMembers: async (groupId: string, n?: number, offset?: number, sort?: GroupSearchSort, roleId?: string, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'groupId' is not null or undefined assertParamExists('getGroupMembers', 'groupId', groupId) const localVarPath = `/groups/{groupId}/members` @@ -11866,6 +11903,10 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio localVarQueryParameter['sort'] = sort; } + if (roleId !== undefined) { + localVarQueryParameter['roleId'] = roleId; + } + setSearchParams(localVarUrlObj, localVarQueryParameter); @@ -12878,11 +12919,12 @@ export const GroupsApiFp = function(configuration?: Configuration) { * @param {number} [n] The number of objects to return. * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {GroupSearchSort} [sort] The sort order of Group Member results + * @param {string} [roleId] Only returns members with a specific groupRoleId * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getGroupMembers(groupId: string, n?: number, offset?: number, sort?: GroupSearchSort, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getGroupMembers(groupId, n, offset, sort, options); + async getGroupMembers(groupId: string, n?: number, offset?: number, sort?: GroupSearchSort, roleId?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getGroupMembers(groupId, n, offset, sort, roleId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** @@ -13381,11 +13423,12 @@ export const GroupsApiFactory = function (configuration?: Configuration, basePat * @param {number} [n] The number of objects to return. * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {GroupSearchSort} [sort] The sort order of Group Member results + * @param {string} [roleId] Only returns members with a specific groupRoleId * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getGroupMembers(groupId: string, n?: number, offset?: number, sort?: GroupSearchSort, options?: any): AxiosPromise> { - return localVarFp.getGroupMembers(groupId, n, offset, sort, options).then((request) => request(axios, basePath)); + getGroupMembers(groupId: string, n?: number, offset?: number, sort?: GroupSearchSort, roleId?: string, options?: any): AxiosPromise> { + return localVarFp.getGroupMembers(groupId, n, offset, sort, roleId, options).then((request) => request(axios, basePath)); }, /** * Returns a List of all possible/available permissions for a Group. @@ -13917,12 +13960,13 @@ export class GroupsApi extends BaseAPI { * @param {number} [n] The number of objects to return. * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {GroupSearchSort} [sort] The sort order of Group Member results + * @param {string} [roleId] Only returns members with a specific groupRoleId * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof GroupsApi */ - public getGroupMembers(groupId: string, n?: number, offset?: number, sort?: GroupSearchSort, options?: AxiosRequestConfig) { - return GroupsApiFp(this.configuration).getGroupMembers(groupId, n, offset, sort, options).then((request) => request(this.axios, this.basePath)); + public getGroupMembers(groupId: string, n?: number, offset?: number, sort?: GroupSearchSort, roleId?: string, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).getGroupMembers(groupId, n, offset, sort, roleId, options).then((request) => request(this.axios, this.basePath)); } /** diff --git a/base.ts b/base.ts index 421a17b..752c4be 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.18.1 + * The version of the OpenAPI document: 1.18.3 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index 1aa7913..cdcb759 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.18.1 + * The version of the OpenAPI document: 1.18.3 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index dfa2ece..8e004ab 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.18.1 + * The version of the OpenAPI document: 1.18.3 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index 7ccc8dd..d139ede 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.18.1 + * The version of the OpenAPI document: 1.18.3 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index 0b4369b..ba50d14 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.18.1", + "version": "1.18.3", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.18.1", + "version": "1.18.3", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index f1aeb7e..36128e1 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.18.1", + "version": "1.18.3", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "repository": { From f0edef85e55dc81c59106f62f020ec0ca96cca93 Mon Sep 17 00:00:00 2001 From: VRCCat Date: Sun, 22 Sep 2024 23:31:50 +0000 Subject: [PATCH 114/130] Upgrade Node SDK to spec 1.18.4 --- api.ts | 3 ++- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 ++-- package.json | 2 +- 7 files changed, 9 insertions(+), 8 deletions(-) diff --git a/api.ts b/api.ts index 0c329b4..34b3d48 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.18.3 + * The version of the OpenAPI document: 1.18.4 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -5234,6 +5234,7 @@ export const Region = { Us: 'us', Use: 'use', Usw: 'usw', + Usx: 'usx', Eu: 'eu', Jp: 'jp', Unknown: 'unknown' diff --git a/base.ts b/base.ts index 752c4be..0569e91 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.18.3 + * The version of the OpenAPI document: 1.18.4 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index cdcb759..01f981d 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.18.3 + * The version of the OpenAPI document: 1.18.4 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index 8e004ab..c256c1e 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.18.3 + * The version of the OpenAPI document: 1.18.4 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index d139ede..d21f145 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.18.3 + * The version of the OpenAPI document: 1.18.4 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index ba50d14..12f2727 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.18.3", + "version": "1.18.4", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.18.3", + "version": "1.18.4", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index 36128e1..ffda6d7 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.18.3", + "version": "1.18.4", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "repository": { From 3c8916c7a88df6f76ffe47f58ec8a1a319ad54a5 Mon Sep 17 00:00:00 2001 From: VRCCat Date: Sat, 5 Oct 2024 22:16:49 +0000 Subject: [PATCH 115/130] Upgrade Node SDK to spec 1.18.5 --- api.ts | 973 +++++++++++++++++++++++++++++++++++++++------- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 +- package.json | 2 +- 7 files changed, 841 insertions(+), 146 deletions(-) diff --git a/api.ts b/api.ts index 34b3d48..557d541 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.18.4 + * The version of the OpenAPI document: 1.18.5 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -51,6 +51,18 @@ export interface APIConfig { * @memberof APIConfig */ 'announcements': Set; + /** + * Unknown + * @type {number} + * @memberof APIConfig + */ + 'analyticsSegment_NewUI_PctOfUsers': number; + /** + * Unknown + * @type {string} + * @memberof APIConfig + */ + 'analyticsSegment_NewUI_Salt': string; /** * Game name * @type {string} @@ -76,6 +88,12 @@ export interface APIConfig { * @memberof APIConfig */ 'buildVersionTag': string; + /** + * Unknown + * @type {number} + * @memberof APIConfig + */ + 'chatboxLogBufferSeconds': number; /** * apiKey to be used for all other requests * @type {string} @@ -100,6 +118,12 @@ export interface APIConfig { * @memberof APIConfig */ 'clientNetDispatchThread'?: boolean; + /** + * Unknown + * @type {boolean} + * @memberof APIConfig + */ + 'clientNetDispatchThreadMobile': boolean; /** * Unknown * @type {boolean} @@ -166,6 +190,12 @@ export interface APIConfig { * @memberof APIConfig */ 'clientSentCountAllowance': number; + /** + * + * @type {APIConfigConstants} + * @memberof APIConfig + */ + 'constants': APIConfigConstants; /** * VRChat\'s contact email * @type {string} @@ -373,6 +403,18 @@ export interface APIConfig { * @memberof APIConfig */ 'events': APIConfigEvents; + /** + * Unknown + * @type {boolean} + * @memberof APIConfig + */ + 'forceUseLatestWorld': boolean; + /** + * Unknown + * @type {string} + * @memberof APIConfig + */ + 'googleApiClientId': string; /** * WorldID be \"offline\" on User profiles if you are not friends with that user. * @type {string} @@ -403,6 +445,18 @@ export interface APIConfig { * @memberof APIConfig */ 'jobsEmail': string; + /** + * + * @type {APIConfigMinSupportedClientBuildNumber} + * @memberof APIConfig + */ + 'minSupportedClientBuildNumber': APIConfigMinSupportedClientBuildNumber; + /** + * Minimum Unity version required for uploading assets + * @type {string} + * @memberof APIConfig + */ + 'minimumUnityVersionForUploads': string; /** * VRChat\'s moderation related email * @type {string} @@ -415,6 +469,48 @@ export interface APIConfig { * @memberof APIConfig */ 'notAllowedToSelectAvatarInPrivateWorldMessage': string; + /** + * + * @type {APIConfigOfflineAnalysis} + * @memberof APIConfig + */ + 'offlineAnalysis': APIConfigOfflineAnalysis; + /** + * Unknown + * @type {Array} + * @memberof APIConfig + */ + 'photonNameserverOverrides': Array; + /** + * Unknown + * @type {Array} + * @memberof APIConfig + */ + 'photonPublicKeys': Array; + /** + * + * @type {APIConfigReportCategories} + * @memberof APIConfig + */ + 'reportCategories': APIConfigReportCategories; + /** + * URL to the report form + * @type {string} + * @memberof APIConfig + */ + 'reportFormUrl': string; + /** + * Options for reporting content + * @type {object} + * @memberof APIConfig + */ + 'reportOptions': object; + /** + * + * @type {APIConfigReportReasons} + * @memberof APIConfig + */ + 'reportReasons': APIConfigReportReasons; /** * Link to the developer FAQ * @type {string} @@ -457,6 +553,12 @@ export interface APIConfig { * @memberof APIConfig */ 'supportEmail': string; + /** + * Unknown + * @type {boolean} + * @memberof APIConfig + */ + 'timekeeping': boolean; /** * WorldID be \"offline\" on User profiles if you are not friends with that user. * @type {string} @@ -535,6 +637,24 @@ export interface APIConfig { * @memberof APIConfig */ 'player-url-resolver-sha1': string; + /** + * Unknown + * @type {number} + * @memberof APIConfig + */ + 'websocketMaxFriendsRefreshDelay': number; + /** + * Unknown + * @type {number} + * @memberof APIConfig + */ + 'websocketQuickReconnectTime': number; + /** + * Unknown + * @type {number} + * @memberof APIConfig + */ + 'websocketReconnectMaxDelay': number; } /** * Public Announcement @@ -555,6 +675,206 @@ export interface APIConfigAnnouncement { */ 'text': string; } +/** + * Constants + * @export + * @interface APIConfigConstants + */ +export interface APIConfigConstants { + /** + * + * @type {APIConfigConstantsGROUPS} + * @memberof APIConfigConstants + */ + 'GROUPS': APIConfigConstantsGROUPS; + /** + * + * @type {APIConfigConstantsINSTANCE} + * @memberof APIConfigConstants + */ + 'INSTANCE': APIConfigConstantsINSTANCE; + /** + * + * @type {APIConfigConstantsLANGUAGE} + * @memberof APIConfigConstants + */ + 'LANGUAGE': APIConfigConstantsLANGUAGE; +} +/** + * Group-related constants + * @export + * @interface APIConfigConstantsGROUPS + */ +export interface APIConfigConstantsGROUPS { + /** + * Maximum group capacity + * @type {number} + * @memberof APIConfigConstantsGROUPS + */ + 'CAPACITY'?: number; + /** + * Requirements for transferring group ownership + * @type {Array} + * @memberof APIConfigConstantsGROUPS + */ + 'GROUP_TRANSFER_REQUIREMENTS'?: Array; + /** + * Maximum number of invite requests + * @type {number} + * @memberof APIConfigConstantsGROUPS + */ + 'MAX_INVITES_REQUESTS'?: number; + /** + * Maximum number of joined groups + * @type {number} + * @memberof APIConfigConstantsGROUPS + */ + 'MAX_JOINED'?: number; + /** + * Maximum number of joined groups for VRChat Plus members + * @type {number} + * @memberof APIConfigConstantsGROUPS + */ + 'MAX_JOINED_PLUS'?: number; + /** + * Maximum number of supported languages + * @type {number} + * @memberof APIConfigConstantsGROUPS + */ + 'MAX_LANGUAGES'?: number; + /** + * Maximum number of group links + * @type {number} + * @memberof APIConfigConstantsGROUPS + */ + 'MAX_LINKS'?: number; + /** + * Maximum number of management roles in a group + * @type {number} + * @memberof APIConfigConstantsGROUPS + */ + 'MAX_MANAGEMENT_ROLES'?: number; + /** + * Maximum number of groups a user can own + * @type {number} + * @memberof APIConfigConstantsGROUPS + */ + 'MAX_OWNED'?: number; + /** + * Maximum number of roles in a group + * @type {number} + * @memberof APIConfigConstantsGROUPS + */ + 'MAX_ROLES'?: number; +} +/** + * Instance-related constants + * @export + * @interface APIConfigConstantsINSTANCE + */ +export interface APIConfigConstantsINSTANCE { + /** + * + * @type {APIConfigConstantsINSTANCEPOPULATIONBRACKETS} + * @memberof APIConfigConstantsINSTANCE + */ + 'POPULATION_BRACKETS'?: APIConfigConstantsINSTANCEPOPULATIONBRACKETS; +} +/** + * Population brackets based on instance population + * @export + * @interface APIConfigConstantsINSTANCEPOPULATIONBRACKETS + */ +export interface APIConfigConstantsINSTANCEPOPULATIONBRACKETS { + /** + * + * @type {APIConfigConstantsINSTANCEPOPULATIONBRACKETSCROWDED} + * @memberof APIConfigConstantsINSTANCEPOPULATIONBRACKETS + */ + 'CROWDED'?: APIConfigConstantsINSTANCEPOPULATIONBRACKETSCROWDED; + /** + * + * @type {APIConfigConstantsINSTANCEPOPULATIONBRACKETSFEW} + * @memberof APIConfigConstantsINSTANCEPOPULATIONBRACKETS + */ + 'FEW'?: APIConfigConstantsINSTANCEPOPULATIONBRACKETSFEW; + /** + * + * @type {APIConfigConstantsINSTANCEPOPULATIONBRACKETSMANY} + * @memberof APIConfigConstantsINSTANCEPOPULATIONBRACKETS + */ + 'MANY'?: APIConfigConstantsINSTANCEPOPULATIONBRACKETSMANY; +} +/** + * Crowded population range + * @export + * @interface APIConfigConstantsINSTANCEPOPULATIONBRACKETSCROWDED + */ +export interface APIConfigConstantsINSTANCEPOPULATIONBRACKETSCROWDED { + /** + * Maximum population for a crowded instance + * @type {number} + * @memberof APIConfigConstantsINSTANCEPOPULATIONBRACKETSCROWDED + */ + 'max'?: number; + /** + * Minimum population for a crowded instance + * @type {number} + * @memberof APIConfigConstantsINSTANCEPOPULATIONBRACKETSCROWDED + */ + 'min'?: number; +} +/** + * Few population range + * @export + * @interface APIConfigConstantsINSTANCEPOPULATIONBRACKETSFEW + */ +export interface APIConfigConstantsINSTANCEPOPULATIONBRACKETSFEW { + /** + * Maximum population for a few instance + * @type {number} + * @memberof APIConfigConstantsINSTANCEPOPULATIONBRACKETSFEW + */ + 'max'?: number; + /** + * Minimum population for a few instance + * @type {number} + * @memberof APIConfigConstantsINSTANCEPOPULATIONBRACKETSFEW + */ + 'min'?: number; +} +/** + * Many population range + * @export + * @interface APIConfigConstantsINSTANCEPOPULATIONBRACKETSMANY + */ +export interface APIConfigConstantsINSTANCEPOPULATIONBRACKETSMANY { + /** + * Maximum population for a many instance + * @type {number} + * @memberof APIConfigConstantsINSTANCEPOPULATIONBRACKETSMANY + */ + 'max'?: number; + /** + * Minimum population for a many instance + * @type {number} + * @memberof APIConfigConstantsINSTANCEPOPULATIONBRACKETSMANY + */ + 'min'?: number; +} +/** + * Language-related constants + * @export + * @interface APIConfigConstantsLANGUAGE + */ +export interface APIConfigConstantsLANGUAGE { + /** + * Supported spoken language options + * @type {{ [key: string]: string; }} + * @memberof APIConfigConstantsLANGUAGE + */ + 'SPOKEN_LANGUAGE_OPTIONS'?: { [key: string]: string; }; +} /** * Download links for various development assets. * @export @@ -573,92 +893,372 @@ export interface APIConfigDownloadURLList { * @type {string} * @memberof APIConfigDownloadURLList */ - 'sdk3-avatars': string; + 'sdk3-avatars': string; + /** + * Download link for SDK3 for Worlds + * @type {string} + * @memberof APIConfigDownloadURLList + */ + 'sdk3-worlds': string; + /** + * Download link for the Creator Companion + * @type {string} + * @memberof APIConfigDownloadURLList + */ + 'vcc': string; + /** + * Download link for ??? + * @type {string} + * @memberof APIConfigDownloadURLList + */ + 'bootstrap': string; +} +/** + * + * @export + * @interface APIConfigEvents + */ +export interface APIConfigEvents { + /** + * Unknown + * @type {number} + * @memberof APIConfigEvents + */ + 'distanceClose': number; + /** + * Unknown + * @type {number} + * @memberof APIConfigEvents + */ + 'distanceFactor': number; + /** + * Unknown + * @type {number} + * @memberof APIConfigEvents + */ + 'distanceFar': number; + /** + * Unknown + * @type {number} + * @memberof APIConfigEvents + */ + 'groupDistance': number; + /** + * Unknown + * @type {number} + * @memberof APIConfigEvents + */ + 'maximumBunchSize': number; + /** + * Unknown + * @type {number} + * @memberof APIConfigEvents + */ + 'notVisibleFactor': number; + /** + * Unknown + * @type {number} + * @memberof APIConfigEvents + */ + 'playerOrderBucketSize': number; + /** + * Unknown + * @type {number} + * @memberof APIConfigEvents + */ + 'playerOrderFactor': number; + /** + * Unknown + * @type {number} + * @memberof APIConfigEvents + */ + 'slowUpdateFactorThreshold': number; + /** + * Unknown + * @type {number} + * @memberof APIConfigEvents + */ + 'viewSegmentLength': number; +} +/** + * Minimum supported client build number for various platforms + * @export + * @interface APIConfigMinSupportedClientBuildNumber + */ +export interface APIConfigMinSupportedClientBuildNumber { + /** + * + * @type {PlatformBuildInfo} + * @memberof APIConfigMinSupportedClientBuildNumber + */ + 'AppStore': PlatformBuildInfo; + /** + * + * @type {PlatformBuildInfo} + * @memberof APIConfigMinSupportedClientBuildNumber + */ + 'Default': PlatformBuildInfo; + /** + * + * @type {PlatformBuildInfo} + * @memberof APIConfigMinSupportedClientBuildNumber + */ + 'Firebase': PlatformBuildInfo; + /** + * + * @type {PlatformBuildInfo} + * @memberof APIConfigMinSupportedClientBuildNumber + */ + 'FirebaseiOS': PlatformBuildInfo; + /** + * + * @type {PlatformBuildInfo} + * @memberof APIConfigMinSupportedClientBuildNumber + */ + 'GooglePlay': PlatformBuildInfo; + /** + * + * @type {PlatformBuildInfo} + * @memberof APIConfigMinSupportedClientBuildNumber + */ + 'PC': PlatformBuildInfo; + /** + * + * @type {PlatformBuildInfo} + * @memberof APIConfigMinSupportedClientBuildNumber + */ + 'PicoStore': PlatformBuildInfo; + /** + * + * @type {PlatformBuildInfo} + * @memberof APIConfigMinSupportedClientBuildNumber + */ + 'QuestAppLab': PlatformBuildInfo; + /** + * + * @type {PlatformBuildInfo} + * @memberof APIConfigMinSupportedClientBuildNumber + */ + 'QuestStore': PlatformBuildInfo; + /** + * + * @type {PlatformBuildInfo} + * @memberof APIConfigMinSupportedClientBuildNumber + */ + 'TestFlight': PlatformBuildInfo; + /** + * + * @type {PlatformBuildInfo} + * @memberof APIConfigMinSupportedClientBuildNumber + */ + 'XRElite': PlatformBuildInfo; +} +/** + * Whether to allow offline analysis + * @export + * @interface APIConfigOfflineAnalysis + */ +export interface APIConfigOfflineAnalysis { + /** + * Whether to allow offline analysis + * @type {boolean} + * @memberof APIConfigOfflineAnalysis + */ + 'android'?: boolean; + /** + * Whether to allow offline analysis + * @type {boolean} + * @memberof APIConfigOfflineAnalysis + */ + 'standalonewindows'?: boolean; +} +/** + * Categories available for reporting objectionable content + * @export + * @interface APIConfigReportCategories + */ +export interface APIConfigReportCategories { + /** + * + * @type {ReportCategory} + * @memberof APIConfigReportCategories + */ + 'avatar': ReportCategory; + /** + * + * @type {ReportCategory} + * @memberof APIConfigReportCategories + */ + 'behavior': ReportCategory; + /** + * + * @type {ReportCategory} + * @memberof APIConfigReportCategories + */ + 'chat': ReportCategory; + /** + * + * @type {ReportCategory} + * @memberof APIConfigReportCategories + */ + 'environment': ReportCategory; + /** + * + * @type {ReportCategory} + * @memberof APIConfigReportCategories + */ + 'groupstore': ReportCategory; + /** + * + * @type {ReportCategory} + * @memberof APIConfigReportCategories + */ + 'image': ReportCategory; + /** + * + * @type {ReportCategory} + * @memberof APIConfigReportCategories + */ + 'text': ReportCategory; + /** + * + * @type {ReportCategory} + * @memberof APIConfigReportCategories + */ + 'warnings': ReportCategory; + /** + * + * @type {ReportCategory} + * @memberof APIConfigReportCategories + */ + 'worldimage': ReportCategory; + /** + * + * @type {ReportCategory} + * @memberof APIConfigReportCategories + */ + 'worldstore': ReportCategory; +} +/** + * Reasons available for reporting users + * @export + * @interface APIConfigReportReasons + */ +export interface APIConfigReportReasons { + /** + * + * @type {ReportReason} + * @memberof APIConfigReportReasons + */ + 'billing': ReportReason; + /** + * + * @type {ReportReason} + * @memberof APIConfigReportReasons + */ + 'botting': ReportReason; + /** + * + * @type {ReportReason} + * @memberof APIConfigReportReasons + */ + 'cancellation': ReportReason; + /** + * + * @type {ReportReason} + * @memberof APIConfigReportReasons + */ + 'gore': ReportReason; + /** + * + * @type {ReportReason} + * @memberof APIConfigReportReasons + */ + 'hacking': ReportReason; + /** + * + * @type {ReportReason} + * @memberof APIConfigReportReasons + */ + 'harassing': ReportReason; /** - * Download link for SDK3 for Worlds - * @type {string} - * @memberof APIConfigDownloadURLList + * + * @type {ReportReason} + * @memberof APIConfigReportReasons */ - 'sdk3-worlds': string; + 'hateful': ReportReason; /** - * Download link for the Creator Companion - * @type {string} - * @memberof APIConfigDownloadURLList + * + * @type {ReportReason} + * @memberof APIConfigReportReasons */ - 'vcc': string; + 'impersonation': ReportReason; /** - * Download link for ??? - * @type {string} - * @memberof APIConfigDownloadURLList + * + * @type {ReportReason} + * @memberof APIConfigReportReasons */ - 'bootstrap': string; -} -/** - * - * @export - * @interface APIConfigEvents - */ -export interface APIConfigEvents { + 'inappropriate': ReportReason; /** - * Unknown - * @type {number} - * @memberof APIConfigEvents + * + * @type {ReportReason} + * @memberof APIConfigReportReasons */ - 'distanceClose': number; + 'leaking': ReportReason; /** - * Unknown - * @type {number} - * @memberof APIConfigEvents + * + * @type {ReportReason} + * @memberof APIConfigReportReasons */ - 'distanceFactor': number; + 'malicious': ReportReason; /** - * Unknown - * @type {number} - * @memberof APIConfigEvents + * + * @type {ReportReason} + * @memberof APIConfigReportReasons */ - 'distanceFar': number; + 'missing': ReportReason; /** - * Unknown - * @type {number} - * @memberof APIConfigEvents + * + * @type {ReportReason} + * @memberof APIConfigReportReasons */ - 'groupDistance': number; + 'nudity': ReportReason; /** - * Unknown - * @type {number} - * @memberof APIConfigEvents + * + * @type {ReportReason} + * @memberof APIConfigReportReasons */ - 'maximumBunchSize': number; + 'renewal': ReportReason; /** - * Unknown - * @type {number} - * @memberof APIConfigEvents + * + * @type {ReportReason} + * @memberof APIConfigReportReasons */ - 'notVisibleFactor': number; + 'security': ReportReason; /** - * Unknown - * @type {number} - * @memberof APIConfigEvents + * + * @type {ReportReason} + * @memberof APIConfigReportReasons */ - 'playerOrderBucketSize': number; + 'service': ReportReason; /** - * Unknown - * @type {number} - * @memberof APIConfigEvents + * + * @type {ReportReason} + * @memberof APIConfigReportReasons */ - 'playerOrderFactor': number; + 'sexual': ReportReason; /** - * Unknown - * @type {number} - * @memberof APIConfigEvents + * + * @type {ReportReason} + * @memberof APIConfigReportReasons */ - 'slowUpdateFactorThreshold': number; + 'threatening': ReportReason; /** - * Unknown - * @type {number} - * @memberof APIConfigEvents + * + * @type {ReportReason} + * @memberof APIConfigReportReasons */ - 'viewSegmentLength': number; + 'visuals': ReportReason; } /** * @@ -2420,6 +3020,12 @@ export interface FriendStatus { * @interface Group */ export interface Group { + /** + * + * @type {Array} + * @memberof Group + */ + 'badges'?: Array; /** * * @type {string} @@ -3024,6 +3630,18 @@ export interface GroupLimitedMember { * @interface GroupMember */ export interface GroupMember { + /** + * + * @type {string} + * @memberof GroupMember + */ + 'acceptedByDisplayName'?: string; + /** + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof GroupMember + */ + 'acceptedById'?: string; /** * * @type {string} @@ -3803,12 +4421,24 @@ export interface Instance { * @deprecated */ 'clientNumber': string; + /** + * + * @type {string} + * @memberof Instance + */ + 'displayName': string | null; /** * * @type {boolean} * @memberof Instance */ 'full': boolean; + /** + * + * @type {number} + * @memberof Instance + */ + 'gameServerVersion': number; /** * InstanceID can be \"offline\" on User profiles if you are not friends with that user and \"private\" if you are friends and user is in private instance. * @type {string} @@ -3821,6 +4451,12 @@ export interface Instance { * @memberof Instance */ 'instanceId': string; + /** + * + * @type {string} + * @memberof Instance + */ + 'instancePersistenceEnabled': string | null; /** * InstanceID can be \"offline\" on User profiles if you are not friends with that user and \"private\" if you are friends and user is in private instance. * @type {string} @@ -3863,6 +4499,12 @@ export interface Instance { * @memberof Instance */ 'platforms': InstancePlatforms; + /** + * + * @type {string} + * @memberof Instance + */ + 'playerPersistenceEnabled': string | null; /** * * @type {InstanceRegion} @@ -4008,6 +4650,12 @@ export interface InstancePlatforms { * @memberof InstancePlatforms */ 'android': number; + /** + * + * @type {number} + * @memberof InstancePlatforms + */ + 'ios'?: number; /** * * @type {number} @@ -4049,7 +4697,7 @@ export interface InstanceShortNameResponse { * @type {string} * @memberof InstanceShortNameResponse */ - 'shortName'?: string; + 'shortName'?: string | null; } /** * @@ -4457,6 +5105,12 @@ export interface LimitedUser { * @memberof LimitedUser */ 'last_platform': string; + /** + * + * @type {string} + * @memberof LimitedUser + */ + 'last_login'?: string | null; /** * * @type {string} @@ -4742,6 +5396,12 @@ export interface LimitedWorld { * @memberof LimitedWorld */ 'releaseStatus': ReleaseStatus; + /** + * + * @type {string} + * @memberof LimitedWorld + */ + 'storeId': string | null; /** * * @type {Array} @@ -5120,12 +5780,42 @@ export interface PastDisplayName { */ 'updated_at': string; } +/** + * Avatar Performance ratings. + * @export + * @enum {string} + */ + +export const PerformanceRatings = { + None: 'None', + Excellent: 'Excellent', + Good: 'Good', + Medium: 'Medium', + Poor: 'Poor', + VeryPoor: 'VeryPoor' +} as const; + +export type PerformanceRatings = typeof PerformanceRatings[keyof typeof PerformanceRatings]; + + /** * * @export * @interface Permission */ export interface Permission { + /** + * + * @type {string} + * @memberof Permission + */ + 'displayName'?: string; + /** + * + * @type {string} + * @memberof Permission + */ + 'description'?: string; /** * * @type {string} @@ -5150,6 +5840,12 @@ export interface Permission { * @memberof Permission */ 'ownerId': string; + /** + * + * @type {string} + * @memberof Permission + */ + 'type'?: string; /** * * @type {object} @@ -5157,6 +5853,25 @@ export interface Permission { */ 'data'?: object; } +/** + * Build information for a platform + * @export + * @interface PlatformBuildInfo + */ +export interface PlatformBuildInfo { + /** + * Minimum build number required for the platform + * @type {number} + * @memberof PlatformBuildInfo + */ + 'minBuildNumber': number; + /** + * Redirection URL for updating the app + * @type {string} + * @memberof PlatformBuildInfo + */ + 'redirectionAddress': string; +} /** * * @export @@ -5259,6 +5974,44 @@ export const ReleaseStatus = { export type ReleaseStatus = typeof ReleaseStatus[keyof typeof ReleaseStatus]; +/** + * A category used for reporting content + * @export + * @interface ReportCategory + */ +export interface ReportCategory { + /** + * The label of the report category + * @type {string} + * @memberof ReportCategory + */ + 'text': string; + /** + * The tooltip that describes the category + * @type {string} + * @memberof ReportCategory + */ + 'tooltip': string; +} +/** + * A reason used for reporting users + * @export + * @interface ReportReason + */ +export interface ReportReason { + /** + * The label or name of the report reason + * @type {string} + * @memberof ReportReason + */ + 'text': string; + /** + * A brief explanation of what this reason entails + * @type {string} + * @memberof ReportReason + */ + 'tooltip': string; +} /** * * @export @@ -5936,6 +6689,12 @@ export interface UnityPackage { * @memberof UnityPackage */ 'impostorizerVersion'?: string; + /** + * + * @type {PerformanceRatings} + * @memberof UnityPackage + */ + 'performanceRating'?: PerformanceRatings; /** * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. * @type {string} @@ -5966,6 +6725,12 @@ export interface UnityPackage { * @memberof UnityPackage */ 'unityVersion': string; + /** + * + * @type {string} + * @memberof UnityPackage + */ + 'worldSignature'?: string | null; /** * * @type {string} @@ -6661,7 +7426,7 @@ export interface UserExists { * @type {boolean} * @memberof UserExists */ - 'nameOk': boolean; + 'nameOk'?: boolean; } /** * * \"online\" User is online in VRChat * \"active\" User is online, but not in VRChat * \"offline\" User is offline Always offline when returned through `getCurrentUser` (/auth/user). @@ -6987,6 +7752,12 @@ export interface World { * @memberof World */ 'releaseStatus': ReleaseStatus; + /** + * + * @type {string} + * @memberof World + */ + 'storeId': string | null; /** * * @type {Array} @@ -14390,46 +15161,6 @@ export const InstancesApiAxiosParamCreator = function (configuration?: Configura - setSearchParams(localVarUrlObj, localVarQueryParameter); - let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; - localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - - return { - url: toPathString(localVarUrlObj), - options: localVarRequestOptions, - }; - }, - /** - * Sends an invite to the instance to yourself. - * @summary Send Self Invite - * @param {string} worldId Must be a valid world ID. - * @param {string} instanceId Must be a valid instance ID. - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - sendSelfInvite: async (worldId: string, instanceId: string, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'worldId' is not null or undefined - assertParamExists('sendSelfInvite', 'worldId', worldId) - // verify required parameter 'instanceId' is not null or undefined - assertParamExists('sendSelfInvite', 'instanceId', instanceId) - const localVarPath = `/instances/{worldId}:{instanceId}/invite` - .replace(`{${"worldId"}}`, encodeURIComponent(String(worldId))) - .replace(`{${"instanceId"}}`, encodeURIComponent(String(instanceId))); - // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); - let baseOptions; - if (configuration) { - baseOptions = configuration.baseOptions; - } - - const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; - const localVarHeaderParameter = {} as any; - const localVarQueryParameter = {} as any; - - // authentication authCookie required - - - setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -14509,18 +15240,6 @@ export const InstancesApiFp = function(configuration?: Configuration) { const localVarAxiosArgs = await localVarAxiosParamCreator.getShortName(worldId, instanceId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, - /** - * Sends an invite to the instance to yourself. - * @summary Send Self Invite - * @param {string} worldId Must be a valid world ID. - * @param {string} instanceId Must be a valid instance ID. - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - async sendSelfInvite(worldId: string, instanceId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.sendSelfInvite(worldId, instanceId, options); - return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); - }, } }; @@ -14586,17 +15305,6 @@ export const InstancesApiFactory = function (configuration?: Configuration, base getShortName(worldId: string, instanceId: string, options?: any): AxiosPromise { return localVarFp.getShortName(worldId, instanceId, options).then((request) => request(axios, basePath)); }, - /** - * Sends an invite to the instance to yourself. - * @summary Send Self Invite - * @param {string} worldId Must be a valid world ID. - * @param {string} instanceId Must be a valid instance ID. - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - sendSelfInvite(worldId: string, instanceId: string, options?: any): AxiosPromise { - return localVarFp.sendSelfInvite(worldId, instanceId, options).then((request) => request(axios, basePath)); - }, }; }; @@ -14671,19 +15379,6 @@ export class InstancesApi extends BaseAPI { public getShortName(worldId: string, instanceId: string, options?: AxiosRequestConfig) { return InstancesApiFp(this.configuration).getShortName(worldId, instanceId, options).then((request) => request(this.axios, this.basePath)); } - - /** - * Sends an invite to the instance to yourself. - * @summary Send Self Invite - * @param {string} worldId Must be a valid world ID. - * @param {string} instanceId Must be a valid instance ID. - * @param {*} [options] Override http request option. - * @throws {RequiredError} - * @memberof InstancesApi - */ - public sendSelfInvite(worldId: string, instanceId: string, options?: AxiosRequestConfig) { - return InstancesApiFp(this.configuration).sendSelfInvite(worldId, instanceId, options).then((request) => request(this.axios, this.basePath)); - } } diff --git a/base.ts b/base.ts index 0569e91..92eeac6 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.18.4 + * The version of the OpenAPI document: 1.18.5 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index 01f981d..0242c47 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.18.4 + * The version of the OpenAPI document: 1.18.5 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index c256c1e..d7c70b8 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.18.4 + * The version of the OpenAPI document: 1.18.5 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index d21f145..c4a1359 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.18.4 + * The version of the OpenAPI document: 1.18.5 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index 12f2727..4292db4 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.18.4", + "version": "1.18.5", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.18.4", + "version": "1.18.5", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index ffda6d7..f226b0a 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.18.4", + "version": "1.18.5", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "repository": { From bf582b91214fbf69ce77bee4f16fa8849faef4dc Mon Sep 17 00:00:00 2001 From: VRCCat Date: Sun, 20 Oct 2024 22:21:53 +0000 Subject: [PATCH 116/130] Upgrade Node SDK to spec 1.18.6 --- api.ts | 839 ++++++++++++++++++++++++++++++++++++---------- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 +- package.json | 2 +- 7 files changed, 670 insertions(+), 183 deletions(-) diff --git a/api.ts b/api.ts index 557d541..32d85a9 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.18.5 + * The version of the OpenAPI document: 1.18.6 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -2783,6 +2783,181 @@ export const FavoriteType = { export type FavoriteType = typeof FavoriteType[keyof typeof FavoriteType]; +/** + * + * @export + * @interface FavoritedWorld + */ +export interface FavoritedWorld { + /** + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof FavoritedWorld + */ + 'authorId': string; + /** + * + * @type {string} + * @memberof FavoritedWorld + */ + 'authorName': string; + /** + * + * @type {number} + * @memberof FavoritedWorld + */ + 'capacity': number; + /** + * + * @type {string} + * @memberof FavoritedWorld + */ + 'description': string; + /** + * + * @type {number} + * @memberof FavoritedWorld + */ + 'recommendedCapacity'?: number; + /** + * + * @type {string} + * @memberof FavoritedWorld + */ + 'created_at': string; + /** + * + * @type {number} + * @memberof FavoritedWorld + */ + 'favorites': number; + /** + * + * @type {string} + * @memberof FavoritedWorld + */ + 'favoriteGroup': string; + /** + * + * @type {string} + * @memberof FavoritedWorld + */ + 'favoriteId': string; + /** + * + * @type {boolean} + * @memberof FavoritedWorld + */ + 'featured': boolean; + /** + * + * @type {number} + * @memberof FavoritedWorld + */ + 'visits'?: number; + /** + * + * @type {number} + * @memberof FavoritedWorld + */ + 'heat': number; + /** + * WorldID be \"offline\" on User profiles if you are not friends with that user. + * @type {string} + * @memberof FavoritedWorld + */ + 'id': string; + /** + * + * @type {string} + * @memberof FavoritedWorld + */ + 'imageUrl': string; + /** + * + * @type {string} + * @memberof FavoritedWorld + */ + 'labsPublicationDate': string; + /** + * + * @type {string} + * @memberof FavoritedWorld + */ + 'name': string; + /** + * + * @type {number} + * @memberof FavoritedWorld + */ + 'occupants': number; + /** + * + * @type {string} + * @memberof FavoritedWorld + */ + 'organization': string; + /** + * + * @type {number} + * @memberof FavoritedWorld + */ + 'popularity': number; + /** + * + * @type {string} + * @memberof FavoritedWorld + */ + 'previewYoutubeId'?: string | null; + /** + * + * @type {string} + * @memberof FavoritedWorld + */ + 'publicationDate': string; + /** + * + * @type {ReleaseStatus} + * @memberof FavoritedWorld + */ + 'releaseStatus': ReleaseStatus; + /** + * + * @type {Array} + * @memberof FavoritedWorld + */ + 'tags': Array; + /** + * + * @type {string} + * @memberof FavoritedWorld + */ + 'thumbnailImageUrl': string; + /** + * + * @type {Array} + * @memberof FavoritedWorld + */ + 'unityPackages': Array; + /** + * + * @type {string} + * @memberof FavoritedWorld + */ + 'updated_at': string; + /** + * + * @type {Array} + * @memberof FavoritedWorld + */ + 'udonProducts'?: Array; + /** + * + * @type {number} + * @memberof FavoritedWorld + */ + 'version': number; +} /** * * @export @@ -3635,13 +3810,13 @@ export interface GroupMember { * @type {string} * @memberof GroupMember */ - 'acceptedByDisplayName'?: string; + 'acceptedByDisplayName'?: string | null; /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * * @type {string} * @memberof GroupMember */ - 'acceptedById'?: string; + 'acceptedById'?: string | null; /** * * @type {string} @@ -3843,11 +4018,11 @@ export interface GroupMyMember { */ 'acceptedByDisplayName'?: string | null; /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * * @type {string} * @memberof GroupMyMember */ - 'acceptedById'?: string; + 'acceptedById'?: string | null; /** * * @type {string} @@ -4813,6 +4988,104 @@ export interface InviteResponse { */ 'responseSlot': number; } +/** + * + * @export + * @interface Jam + */ +export interface Jam { + /** + * + * @type {string} + * @memberof Jam + */ + 'description': string; + /** + * + * @type {string} + * @memberof Jam + */ + 'id': string; + /** + * + * @type {boolean} + * @memberof Jam + */ + 'isVisible': boolean; + /** + * + * @type {string} + * @memberof Jam + */ + 'moreInfo': string; + /** + * One of: - submissions_open - closed + * @type {string} + * @memberof Jam + */ + 'state': string; + /** + * + * @type {JamStateChangeDates} + * @memberof Jam + */ + 'stateChangeDates': JamStateChangeDates; + /** + * + * @type {string} + * @memberof Jam + */ + 'submissionContentGateDate': string | null; + /** + * + * @type {boolean} + * @memberof Jam + */ + 'submissionContentGated': boolean; + /** + * + * @type {string} + * @memberof Jam + */ + 'title': string; + /** + * + * @type {string} + * @memberof Jam + */ + 'updated_at': string; +} +/** + * + * @export + * @interface JamStateChangeDates + */ +export interface JamStateChangeDates { + /** + * + * @type {string} + * @memberof JamStateChangeDates + */ + 'closed'?: string | null; + /** + * + * @type {string} + * @memberof JamStateChangeDates + */ + 'submissionsClosed'?: string | null; + /** + * + * @type {string} + * @memberof JamStateChangeDates + */ + 'submissionsOpened'?: string | null; + /** + * + * @type {string} + * @memberof JamStateChangeDates + */ + 'winnersSelected'?: string | null; +} /** * * @export @@ -5396,12 +5669,6 @@ export interface LimitedWorld { * @memberof LimitedWorld */ 'releaseStatus': ReleaseStatus; - /** - * - * @type {string} - * @memberof LimitedWorld - */ - 'storeId': string | null; /** * * @type {Array} @@ -6243,57 +6510,106 @@ export type SortOption = typeof SortOption[keyof typeof SortOption]; /** * * @export - * @interface Subscription + * @interface Submission */ -export interface Subscription { +export interface Submission { /** - * + * Either world ID or avatar ID * @type {string} - * @memberof Subscription + * @memberof Submission */ - 'id': string; + 'contentId': string; /** * * @type {string} - * @memberof Subscription + * @memberof Submission */ - 'steamItemId': string; + 'created_at': string; /** * * @type {string} - * @memberof Subscription + * @memberof Submission */ - 'oculusSku'?: string; + 'description': string; /** * * @type {string} - * @memberof Subscription + * @memberof Submission */ - 'googleProductId'?: string; + 'id': string; /** * * @type {string} - * @memberof Subscription + * @memberof Submission */ - 'googlePlanId'?: string; + 'jamId': string; /** * + * @type {number} + * @memberof Submission + */ + 'ratingScore'?: number; + /** + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof Subscription + * @memberof Submission */ - 'picoSku'?: string; + 'submitterId': string; +} +/** + * + * @export + * @interface Subscription + */ +export interface Subscription { /** * - * @type {number} + * @type {string} * @memberof Subscription */ - 'amount': number; + 'id': string; /** * * @type {string} * @memberof Subscription */ - 'description': string; + 'steamItemId': string; + /** + * + * @type {string} + * @memberof Subscription + */ + 'oculusSku'?: string; + /** + * + * @type {string} + * @memberof Subscription + */ + 'googleProductId'?: string; + /** + * + * @type {string} + * @memberof Subscription + */ + 'googlePlanId'?: string; + /** + * + * @type {string} + * @memberof Subscription + */ + 'picoSku'?: string; + /** + * + * @type {number} + * @memberof Subscription + */ + 'amount': number; + /** + * + * @type {string} + * @memberof Subscription + */ + 'description': string; /** * * @type {SubscriptionPeriod} @@ -7752,12 +8068,6 @@ export interface World { * @memberof World */ 'releaseStatus': ReleaseStatus; - /** - * - * @type {string} - * @memberof World - */ - 'storeId': string | null; /** * * @type {Array} @@ -16060,6 +16370,252 @@ export class InviteApi extends BaseAPI { } +/** + * JamsApi - axios parameter creator + * @export + */ +export const JamsApiAxiosParamCreator = function (configuration?: Configuration) { + return { + /** + * Returns a jam. + * @summary Show jam information + * @param {string} jamId Must be a valid query ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getJam: async (jamId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'jamId' is not null or undefined + assertParamExists('getJam', 'jamId', jamId) + const localVarPath = `/jams/{jamId}` + .replace(`{${"jamId"}}`, encodeURIComponent(String(jamId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Returns all submissions of a jam. + * @summary Show jam submissions + * @param {string} jamId Must be a valid query ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getJamSubmissions: async (jamId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'jamId' is not null or undefined + assertParamExists('getJamSubmissions', 'jamId', jamId) + const localVarPath = `/jams/{jamId}/submissions` + .replace(`{${"jamId"}}`, encodeURIComponent(String(jamId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Lists World Jams or Avatar Jams, both currently running and ones that have ended. `isActive` is used to select only active or already ended jams. `type` is used to select only world or avatar jams, and can only take `world` or `avatar`. `` + * @summary Show jams list + * @param {string} [type] Only show jams of this type (`avatar` or `world`). + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getJams: async (type?: string, options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/jams`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + if (type !== undefined) { + localVarQueryParameter['type'] = type; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + } +}; + +/** + * JamsApi - functional programming interface + * @export + */ +export const JamsApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = JamsApiAxiosParamCreator(configuration) + return { + /** + * Returns a jam. + * @summary Show jam information + * @param {string} jamId Must be a valid query ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getJam(jamId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getJam(jamId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Returns all submissions of a jam. + * @summary Show jam submissions + * @param {string} jamId Must be a valid query ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getJamSubmissions(jamId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getJamSubmissions(jamId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Lists World Jams or Avatar Jams, both currently running and ones that have ended. `isActive` is used to select only active or already ended jams. `type` is used to select only world or avatar jams, and can only take `world` or `avatar`. `` + * @summary Show jams list + * @param {string} [type] Only show jams of this type (`avatar` or `world`). + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getJams(type?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getJams(type, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + } +}; + +/** + * JamsApi - factory interface + * @export + */ +export const JamsApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = JamsApiFp(configuration) + return { + /** + * Returns a jam. + * @summary Show jam information + * @param {string} jamId Must be a valid query ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getJam(jamId: string, options?: any): AxiosPromise { + return localVarFp.getJam(jamId, options).then((request) => request(axios, basePath)); + }, + /** + * Returns all submissions of a jam. + * @summary Show jam submissions + * @param {string} jamId Must be a valid query ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getJamSubmissions(jamId: string, options?: any): AxiosPromise> { + return localVarFp.getJamSubmissions(jamId, options).then((request) => request(axios, basePath)); + }, + /** + * Lists World Jams or Avatar Jams, both currently running and ones that have ended. `isActive` is used to select only active or already ended jams. `type` is used to select only world or avatar jams, and can only take `world` or `avatar`. `` + * @summary Show jams list + * @param {string} [type] Only show jams of this type (`avatar` or `world`). + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getJams(type?: string, options?: any): AxiosPromise> { + return localVarFp.getJams(type, options).then((request) => request(axios, basePath)); + }, + }; +}; + +/** + * JamsApi - object-oriented interface + * @export + * @class JamsApi + * @extends {BaseAPI} + */ +export class JamsApi extends BaseAPI { + /** + * Returns a jam. + * @summary Show jam information + * @param {string} jamId Must be a valid query ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof JamsApi + */ + public getJam(jamId: string, options?: AxiosRequestConfig) { + return JamsApiFp(this.configuration).getJam(jamId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Returns all submissions of a jam. + * @summary Show jam submissions + * @param {string} jamId Must be a valid query ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof JamsApi + */ + public getJamSubmissions(jamId: string, options?: AxiosRequestConfig) { + return JamsApiFp(this.configuration).getJamSubmissions(jamId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Lists World Jams or Avatar Jams, both currently running and ones that have ended. `isActive` is used to select only active or already ended jams. `type` is used to select only world or avatar jams, and can only take `world` or `avatar`. `` + * @summary Show jams list + * @param {string} [type] Only show jams of this type (`avatar` or `world`). + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof JamsApi + */ + public getJams(type?: string, options?: AxiosRequestConfig) { + return JamsApiFp(this.configuration).getJams(type, options).then((request) => request(this.axios, this.basePath)); + } +} + + /** * NotificationsApi - axios parameter creator * @export @@ -16161,6 +16717,42 @@ export const NotificationsApiAxiosParamCreator = function (configuration?: Confi + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get a notification by notification `not_` ID. + * @summary Show notification + * @param {string} notificationId Must be a valid notification ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getNotification: async (notificationId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'notificationId' is not null or undefined + assertParamExists('getNotification', 'notificationId', notificationId) + const localVarPath = `/auth/user/notifications/{notificationId}` + .replace(`{${"notificationId"}}`, encodeURIComponent(String(notificationId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -16310,6 +16902,17 @@ export const NotificationsApiFp = function(configuration?: Configuration) { const localVarAxiosArgs = await localVarAxiosParamCreator.deleteNotification(notificationId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, + /** + * Get a notification by notification `not_` ID. + * @summary Show notification + * @param {string} notificationId Must be a valid notification ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getNotification(notificationId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getNotification(notificationId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** * Retrieve all of the current user\'s notifications. * @summary List Notifications @@ -16376,6 +16979,16 @@ export const NotificationsApiFactory = function (configuration?: Configuration, deleteNotification(notificationId: string, options?: any): AxiosPromise { return localVarFp.deleteNotification(notificationId, options).then((request) => request(axios, basePath)); }, + /** + * Get a notification by notification `not_` ID. + * @summary Show notification + * @param {string} notificationId Must be a valid notification ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getNotification(notificationId: string, options?: any): AxiosPromise { + return localVarFp.getNotification(notificationId, options).then((request) => request(axios, basePath)); + }, /** * Retrieve all of the current user\'s notifications. * @summary List Notifications @@ -16446,6 +17059,18 @@ export class NotificationsApi extends BaseAPI { return NotificationsApiFp(this.configuration).deleteNotification(notificationId, options).then((request) => request(this.axios, this.basePath)); } + /** + * Get a notification by notification `not_` ID. + * @summary Show notification + * @param {string} notificationId Must be a valid notification ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof NotificationsApi + */ + public getNotification(notificationId: string, options?: AxiosRequestConfig) { + return NotificationsApiFp(this.configuration).getNotification(notificationId, options).then((request) => request(this.axios, this.basePath)); + } + /** * Retrieve all of the current user\'s notifications. * @summary List Notifications @@ -16675,78 +17300,6 @@ export const PlayermoderationApiAxiosParamCreator = function (configuration?: Co - setSearchParams(localVarUrlObj, localVarQueryParameter); - let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; - localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - - return { - url: toPathString(localVarUrlObj), - options: localVarRequestOptions, - }; - }, - /** - * Deletes a specific player moderation based on it\'s `pmod_` ID. The website uses `unmoderateUser` instead. You can delete the same player moderation multiple times successfully. - * @summary Delete Player Moderation - * @param {string} playerModerationId Must be a valid `pmod_` ID. - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - deletePlayerModeration: async (playerModerationId: string, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'playerModerationId' is not null or undefined - assertParamExists('deletePlayerModeration', 'playerModerationId', playerModerationId) - const localVarPath = `/auth/user/playermoderations/{playerModerationId}` - .replace(`{${"playerModerationId"}}`, encodeURIComponent(String(playerModerationId))); - // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); - let baseOptions; - if (configuration) { - baseOptions = configuration.baseOptions; - } - - const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; - const localVarHeaderParameter = {} as any; - const localVarQueryParameter = {} as any; - - // authentication authCookie required - - - - setSearchParams(localVarUrlObj, localVarQueryParameter); - let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; - localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - - return { - url: toPathString(localVarUrlObj), - options: localVarRequestOptions, - }; - }, - /** - * Returns a single Player Moderation. This returns the exact same amount of information as the more generalised `getPlayerModerations`. - * @summary Get Player Moderation - * @param {string} playerModerationId Must be a valid `pmod_` ID. - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - getPlayerModeration: async (playerModerationId: string, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'playerModerationId' is not null or undefined - assertParamExists('getPlayerModeration', 'playerModerationId', playerModerationId) - const localVarPath = `/auth/user/playermoderations/{playerModerationId}` - .replace(`{${"playerModerationId"}}`, encodeURIComponent(String(playerModerationId))); - // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); - let baseOptions; - if (configuration) { - baseOptions = configuration.baseOptions; - } - - const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; - const localVarHeaderParameter = {} as any; - const localVarQueryParameter = {} as any; - - // authentication authCookie required - - - setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -16894,28 +17447,6 @@ export const PlayermoderationApiFp = function(configuration?: Configuration) { const localVarAxiosArgs = await localVarAxiosParamCreator.clearAllPlayerModerations(options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, - /** - * Deletes a specific player moderation based on it\'s `pmod_` ID. The website uses `unmoderateUser` instead. You can delete the same player moderation multiple times successfully. - * @summary Delete Player Moderation - * @param {string} playerModerationId Must be a valid `pmod_` ID. - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - async deletePlayerModeration(playerModerationId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.deletePlayerModeration(playerModerationId, options); - return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); - }, - /** - * Returns a single Player Moderation. This returns the exact same amount of information as the more generalised `getPlayerModerations`. - * @summary Get Player Moderation - * @param {string} playerModerationId Must be a valid `pmod_` ID. - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - async getPlayerModeration(playerModerationId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getPlayerModeration(playerModerationId, options); - return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); - }, /** * Returns a list of all player moderations made by **you**. This endpoint does not have pagination, and will return *all* results. Use query parameters to limit your query if needed. * @summary Search Player Moderations @@ -16969,26 +17500,6 @@ export const PlayermoderationApiFactory = function (configuration?: Configuratio clearAllPlayerModerations(options?: any): AxiosPromise { return localVarFp.clearAllPlayerModerations(options).then((request) => request(axios, basePath)); }, - /** - * Deletes a specific player moderation based on it\'s `pmod_` ID. The website uses `unmoderateUser` instead. You can delete the same player moderation multiple times successfully. - * @summary Delete Player Moderation - * @param {string} playerModerationId Must be a valid `pmod_` ID. - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - deletePlayerModeration(playerModerationId: string, options?: any): AxiosPromise { - return localVarFp.deletePlayerModeration(playerModerationId, options).then((request) => request(axios, basePath)); - }, - /** - * Returns a single Player Moderation. This returns the exact same amount of information as the more generalised `getPlayerModerations`. - * @summary Get Player Moderation - * @param {string} playerModerationId Must be a valid `pmod_` ID. - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - getPlayerModeration(playerModerationId: string, options?: any): AxiosPromise { - return localVarFp.getPlayerModeration(playerModerationId, options).then((request) => request(axios, basePath)); - }, /** * Returns a list of all player moderations made by **you**. This endpoint does not have pagination, and will return *all* results. Use query parameters to limit your query if needed. * @summary Search Player Moderations @@ -17041,30 +17552,6 @@ export class PlayermoderationApi extends BaseAPI { return PlayermoderationApiFp(this.configuration).clearAllPlayerModerations(options).then((request) => request(this.axios, this.basePath)); } - /** - * Deletes a specific player moderation based on it\'s `pmod_` ID. The website uses `unmoderateUser` instead. You can delete the same player moderation multiple times successfully. - * @summary Delete Player Moderation - * @param {string} playerModerationId Must be a valid `pmod_` ID. - * @param {*} [options] Override http request option. - * @throws {RequiredError} - * @memberof PlayermoderationApi - */ - public deletePlayerModeration(playerModerationId: string, options?: AxiosRequestConfig) { - return PlayermoderationApiFp(this.configuration).deletePlayerModeration(playerModerationId, options).then((request) => request(this.axios, this.basePath)); - } - - /** - * Returns a single Player Moderation. This returns the exact same amount of information as the more generalised `getPlayerModerations`. - * @summary Get Player Moderation - * @param {string} playerModerationId Must be a valid `pmod_` ID. - * @param {*} [options] Override http request option. - * @throws {RequiredError} - * @memberof PlayermoderationApi - */ - public getPlayerModeration(playerModerationId: string, options?: AxiosRequestConfig) { - return PlayermoderationApiFp(this.configuration).getPlayerModeration(playerModerationId, options).then((request) => request(this.axios, this.basePath)); - } - /** * Returns a list of all player moderations made by **you**. This endpoint does not have pagination, and will return *all* results. Use query parameters to limit your query if needed. * @summary Search Player Moderations @@ -18972,7 +19459,7 @@ export const WorldsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getFavoritedWorlds(featured?: boolean, sort?: SortOption, n?: number, order?: OrderOption, offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: ReleaseStatus, maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + async getFavoritedWorlds(featured?: boolean, sort?: SortOption, n?: number, order?: OrderOption, offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: ReleaseStatus, maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.getFavoritedWorlds(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -19174,7 +19661,7 @@ export const WorldsApiFactory = function (configuration?: Configuration, basePat * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFavoritedWorlds(featured?: boolean, sort?: SortOption, n?: number, order?: OrderOption, offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: ReleaseStatus, maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any): AxiosPromise> { + getFavoritedWorlds(featured?: boolean, sort?: SortOption, n?: number, order?: OrderOption, offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: ReleaseStatus, maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any): AxiosPromise> { return localVarFp.getFavoritedWorlds(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options).then((request) => request(axios, basePath)); }, /** diff --git a/base.ts b/base.ts index 92eeac6..0acf761 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.18.5 + * The version of the OpenAPI document: 1.18.6 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index 0242c47..d5efa25 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.18.5 + * The version of the OpenAPI document: 1.18.6 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index d7c70b8..d348352 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.18.5 + * The version of the OpenAPI document: 1.18.6 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index c4a1359..cc0716f 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.18.5 + * The version of the OpenAPI document: 1.18.6 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index 4292db4..285179e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.18.5", + "version": "1.18.6", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.18.5", + "version": "1.18.6", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index f226b0a..9a5e670 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.18.5", + "version": "1.18.6", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "repository": { From 04f972a85345f9ecf7f9219b55abd614d47e32b2 Mon Sep 17 00:00:00 2001 From: VRCCat Date: Thu, 7 Nov 2024 02:57:56 +0000 Subject: [PATCH 117/130] Upgrade Node SDK to spec 1.18.7 --- api.ts | 2 +- base.ts | 4 ++-- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 ++-- package.json | 2 +- 7 files changed, 9 insertions(+), 9 deletions(-) diff --git a/api.ts b/api.ts index 32d85a9..1424a15 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.18.6 + * The version of the OpenAPI document: 1.18.7 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/base.ts b/base.ts index 0acf761..f8113d7 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.18.6 + * The version of the OpenAPI document: 1.18.7 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -17,7 +17,7 @@ import { Configuration } from "./configuration"; // @ts-ignore import globalAxios, { AxiosPromise, AxiosInstance, AxiosRequestConfig } from 'axios'; -export const BASE_PATH = "https://vrchat.com/api/1".replace(/\/+$/, ""); +export const BASE_PATH = "https://api.vrchat.cloud/api/1".replace(/\/+$/, ""); /** * diff --git a/common.ts b/common.ts index d5efa25..18d24c6 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.18.6 + * The version of the OpenAPI document: 1.18.7 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index d348352..1ce28e2 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.18.6 + * The version of the OpenAPI document: 1.18.7 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index cc0716f..2262de1 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.18.6 + * The version of the OpenAPI document: 1.18.7 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index 285179e..77981e9 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.18.6", + "version": "1.18.7", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.18.6", + "version": "1.18.7", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index 9a5e670..c5c6c4f 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.18.6", + "version": "1.18.7", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "repository": { From ef0fc2ca2cfc2ac708d28ca84728a740cb01d693 Mon Sep 17 00:00:00 2001 From: VRCCat Date: Thu, 7 Nov 2024 10:17:27 +0000 Subject: [PATCH 118/130] Upgrade Node SDK to spec 1.18.8 --- api.ts | 152 +++++++++++++++++++++++++++++++++++++++++++++- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 +- package.json | 2 +- 7 files changed, 156 insertions(+), 10 deletions(-) diff --git a/api.ts b/api.ts index 1424a15..3e84496 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.18.7 + * The version of the OpenAPI document: 1.18.8 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -45,6 +45,18 @@ export interface APIConfig { * @memberof APIConfig */ 'address': string; + /** + * + * @type {boolean} + * @memberof APIConfig + */ + 'ageVerificationP': boolean; + /** + * + * @type {boolean} + * @memberof APIConfig + */ + 'ageVerificationStatusVisible': boolean; /** * Public Announcements * @type {Set} @@ -82,6 +94,12 @@ export interface APIConfig { * @memberof APIConfig */ 'availableLanguages': Array; + /** + * + * @type {APIConfigAvatarPerfLimiter} + * @memberof APIConfig + */ + 'avatarPerfLimiter': APIConfigAvatarPerfLimiter; /** * Build tag of the API server * @type {string} @@ -226,6 +244,12 @@ export interface APIConfig { * @memberof APIConfig */ 'defaultAvatar': string; + /** + * + * @type {string} + * @memberof APIConfig + */ + 'defaultStickerSet': string; /** * * @type {DeploymentGroup} @@ -553,6 +577,12 @@ export interface APIConfig { * @memberof APIConfig */ 'supportEmail': string; + /** + * VRChat\'s support form + * @type {string} + * @memberof APIConfig + */ + 'supportFormUrl': string; /** * Unknown * @type {boolean} @@ -675,6 +705,49 @@ export interface APIConfigAnnouncement { */ 'text': string; } +/** + * + * @export + * @interface APIConfigAvatarPerfLimiter + */ +export interface APIConfigAvatarPerfLimiter { + /** + * + * @type {PerformanceLimiterInfo} + * @memberof APIConfigAvatarPerfLimiter + */ + 'AndroidMobile': PerformanceLimiterInfo; + /** + * + * @type {PerformanceLimiterInfo} + * @memberof APIConfigAvatarPerfLimiter + */ + 'PC': PerformanceLimiterInfo; + /** + * + * @type {PerformanceLimiterInfo} + * @memberof APIConfigAvatarPerfLimiter + */ + 'Pico': PerformanceLimiterInfo; + /** + * + * @type {PerformanceLimiterInfo} + * @memberof APIConfigAvatarPerfLimiter + */ + 'Quest': PerformanceLimiterInfo; + /** + * + * @type {PerformanceLimiterInfo} + * @memberof APIConfigAvatarPerfLimiter + */ + 'XRElite': PerformanceLimiterInfo; + /** + * + * @type {PerformanceLimiterInfo} + * @memberof APIConfigAvatarPerfLimiter + */ + 'iOSMobile': PerformanceLimiterInfo; +} /** * Constants * @export @@ -1096,6 +1169,12 @@ export interface APIConfigReportCategories { * @memberof APIConfigReportCategories */ 'chat': ReportCategory; + /** + * + * @type {ReportCategory} + * @memberof APIConfigReportCategories + */ + 'emoji'?: ReportCategory; /** * * @type {ReportCategory} @@ -1120,6 +1199,12 @@ export interface APIConfigReportCategories { * @memberof APIConfigReportCategories */ 'text': ReportCategory; + /** + * + * @type {ReportCategory} + * @memberof APIConfigReportCategories + */ + 'sticker'?: ReportCategory; /** * * @type {ReportCategory} @@ -2108,6 +2193,18 @@ export interface CurrentUser { * @memberof CurrentUser */ 'activeFriends'?: Array; + /** + * + * @type {string} + * @memberof CurrentUser + */ + 'ageVerificationStatus': string; + /** + * + * @type {boolean} + * @memberof CurrentUser + */ + 'ageVerified': boolean; /** * * @type {boolean} @@ -2265,6 +2362,12 @@ export interface CurrentUser { * @memberof CurrentUser */ 'id': string; + /** + * + * @type {boolean} + * @memberof CurrentUser + */ + 'isAdult': boolean; /** * * @type {boolean} @@ -2945,6 +3048,12 @@ export interface FavoritedWorld { * @memberof FavoritedWorld */ 'updated_at': string; + /** + * + * @type {Array} + * @memberof FavoritedWorld + */ + 'urlList': Array; /** * * @type {Array} @@ -4577,6 +4686,12 @@ export interface Instance { * @memberof Instance */ 'active': boolean; + /** + * + * @type {string} + * @memberof Instance + */ + 'ageGate'?: string | null; /** * * @type {boolean} @@ -4676,10 +4791,10 @@ export interface Instance { 'platforms': InstancePlatforms; /** * - * @type {string} + * @type {boolean} * @memberof Instance */ - 'playerPersistenceEnabled': string | null; + 'playerPersistenceEnabled': boolean | null; /** * * @type {InstanceRegion} @@ -6047,6 +6162,25 @@ export interface PastDisplayName { */ 'updated_at': string; } +/** + * Info about the performance limits on a platform + * @export + * @interface PerformanceLimiterInfo + */ +export interface PerformanceLimiterInfo { + /** + * + * @type {boolean} + * @memberof PerformanceLimiterInfo + */ + 'allowed': boolean; + /** + * Maximum amount of seats. -1 means no limit. + * @type {number} + * @memberof PerformanceLimiterInfo + */ + 'maxSeats': number; +} /** * Avatar Performance ratings. * @export @@ -7513,6 +7647,12 @@ export interface UpdateWorldRequest { * @interface User */ export interface User { + /** + * + * @type {string} + * @memberof User + */ + 'ageVerificationStatus': string; /** * * @type {boolean} @@ -8092,6 +8232,12 @@ export interface World { * @memberof World */ 'updated_at': string; + /** + * + * @type {Array} + * @memberof World + */ + 'urlList'?: Array; /** * * @type {number} diff --git a/base.ts b/base.ts index f8113d7..c6c10ab 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.18.7 + * The version of the OpenAPI document: 1.18.8 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index 18d24c6..6d9aeea 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.18.7 + * The version of the OpenAPI document: 1.18.8 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index 1ce28e2..2bc955a 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.18.7 + * The version of the OpenAPI document: 1.18.8 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index 2262de1..70c5c33 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.18.7 + * The version of the OpenAPI document: 1.18.8 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index 77981e9..9445fc8 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.18.7", + "version": "1.18.8", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.18.7", + "version": "1.18.8", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index c5c6c4f..02695ac 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.18.7", + "version": "1.18.8", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "repository": { From 2f31e8baddd2698009ef4426004c9d32cf65e85d Mon Sep 17 00:00:00 2001 From: JelleJurre <76777936+jellejurre@users.noreply.github.com> Date: Mon, 25 Nov 2024 19:10:27 +0100 Subject: [PATCH 119/130] Improve examples (#13) * Use baseOptions * Refactor example and add cookie examples --- cookies_load.js | 21 +++++++++++++++++++++ cookies_store.js | 40 ++++++++++++++++++++++++++++++++++++++++ example.js | 43 +++++++++++++++++++++---------------------- 3 files changed, 82 insertions(+), 22 deletions(-) create mode 100644 cookies_load.js create mode 100644 cookies_store.js diff --git a/cookies_load.js b/cookies_load.js new file mode 100644 index 0000000..7f23375 --- /dev/null +++ b/cookies_load.js @@ -0,0 +1,21 @@ +const vrchat = require("vrchat"); + +const configuration = new vrchat.Configuration({ + username: "username", + password: "password", + baseOptions: { + headers: { + "User-Agent": "ExampleProgram/0.0.1 my@email.com" + "Cookie": "auth=[AUTH_COOKIE_HERE]; twoFactorAuth=[TWO_FACTOR_AUTH_COOKIE_HERE]}" + } + } +}); + +const AuthenticationApi = new vrchat.AuthenticationApi(configuration); + +async function main() { + const currentUser = (await AuthenticationApi.getCurrentUser()).data; + console.log(`Logged in as: ${currentUser.displayName}`); +} + +main(); diff --git a/cookies_store.js b/cookies_store.js new file mode 100644 index 0000000..27d4133 --- /dev/null +++ b/cookies_store.js @@ -0,0 +1,40 @@ +const vrchat = require("vrchat"); + +const readline = require("readline") +import globalAxios from "axios" + +const rl = readline.createInterface({ input: process.stdin, output: process.stdout }); +const prompt = (query) => new Promise((resolve) => rl.question(query, resolve)); + + +const configuration = new vrchat.Configuration({ + username: "username", + password: "password", + baseOptions: { + headers: { "User-Agent": "ExampleProgram/0.0.1 my@email.com"} + } +}); + + +const authenticationApi = new AuthenticationApi(configuration); + +async function main() { + var currentUser = (await authenticationApi.getCurrentUser()).data + + if (currentUser["requiresTwoFactorAuth"] && currentUser["requiresTwoFactorAuth"][0] === "emailOtp") { + await authenticationApi.verify2FAEmailCode({ code: await prompt("email Code\n") }) + currentUser = (await authenticationApi.getCurrentUser()).data; + } + if (currentUser["requiresTwoFactorAuth"] && currentUser["requiresTwoFactorAuth"][0] === "totp") { + await authenticationApi.verify2FA({ code: await prompt("2fa Code\n") }) + currentUser = (await authenticationApi.getCurrentUser()).data; + } + + console.log(`Logged in as: ${currentUser.displayName}`); + + const store = globalAxios.defaults.jar.store.idx["api.vrchat.cloud"]["/"]; + console.log(`auth=${store["auth"]["value"]}`) + console.log(`twoFactorAuth=${store["twoFactorAuth"]["value"]}`) +} + +main(); diff --git a/example.js b/example.js index 369b9b3..ed53a02 100644 --- a/example.js +++ b/example.js @@ -7,39 +7,38 @@ const prompt = (query) => new Promise((resolve) => rl.question(query, resolve)); const configuration = new vrchat.Configuration({ username: "username", - password: "password" + password: "password", + baseOptions: { + headers: { "User-Agent": "ExampleProgram/0.0.1 my@email.com"} + } }); -const options = { headers: { "User-Agent": "ExampleProgram/0.0.1 my@email.com"}}; -const AuthenticationApi = new vrchat.AuthenticationApi(configuration); -const UsersApi = new vrchat.UsersApi(configuration); -const SystemApi = new vrchat.SystemApi(configuration); +const authenticationApi = new vrchat.AuthenticationApi(configuration); +const usersApi = new vrchat.UsersApi(configuration); +const systemApi = new vrchat.SystemApi(configuration); -AuthenticationApi.getCurrentUser(options).then(async resp => { - var currentUser = resp.data; +async function main() { + var currentUser = (await authenticationApi.getCurrentUser()).data; if (currentUser["requiresTwoFactorAuth"] && currentUser["requiresTwoFactorAuth"][0] === "emailOtp") { - await AuthenticationApi.verify2FAEmailCode({ code: await prompt("email Code\n") }, options) - currentUser = (await AuthenticationApi.getCurrentUser(options)).data; + await authenticationApi.verify2FAEmailCode({ code: await prompt("email Code\n") }) + currentUser = (await authenticationApi.getCurrentUser()).data; } if (currentUser["requiresTwoFactorAuth"] && currentUser["requiresTwoFactorAuth"][0] === "totp") { - await AuthenticationApi.verify2FA({ code: await prompt("2fa Code\n") }, options) - currentUser = (await AuthenticationApi.getCurrentUser(options)).data; + await authenticationApi.verify2FA({ code: await prompt("2fa Code\n") }) + currentUser = (await authenticationApi.getCurrentUser()).data; } console.log(`Logged in as: ${currentUser.displayName}`); - SystemApi.getCurrentOnlineUsers(options).then(resp => { - console.log(`Current Online Users: ${resp.data}`); + const currentOnlineUsers = (await systemApi.getCurrentOnlineUsers()).data; + console.log(`Current Online Users: ${resp.data}`); + + const tupperUser = (await usersApi.getUser("usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469")).data; + console.log(resp.data.displayName); +} + +main(); - // Calling getCurrentUser on Authentication API logs you in if the user isn't already logged in. - AuthenticationApi.getCurrentUser(options).then(resp => { - console.log(`Logged in as: ${resp.data.displayName}`); - UsersApi.getUser("usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469", options).then(resp => { - console.log(resp.data.displayName); // Should print out "tupper" - }); - }); - }); -}); From 09a8b48c4ffec2806806cd1c282dd47975ca1f04 Mon Sep 17 00:00:00 2001 From: VRCCat Date: Mon, 20 Jan 2025 23:49:02 +0000 Subject: [PATCH 120/130] Upgrade Node SDK to spec 1.18.9 --- api.ts | 6176 +++++++++++++++++++++++++++++++-------------- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 +- package.json | 2 +- 7 files changed, 4283 insertions(+), 1907 deletions(-) diff --git a/api.ts b/api.ts index 3e84496..f800fd8 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.18.8 + * The version of the OpenAPI document: 1.18.9 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -1433,6 +1433,21 @@ export interface AddGroupGalleryImageRequest { */ 'fileId': string; } +/** + * + * @export + * @enum {string} + */ + +export const AgeVerificationStatus = { + hidden: 'hidden', + verified: 'verified', + plus18: '18+' +} as const; + +export type AgeVerificationStatus = typeof AgeVerificationStatus[keyof typeof AgeVerificationStatus]; + + /** * * @export @@ -1505,6 +1520,12 @@ export interface Avatar { * @memberof Avatar */ 'releaseStatus': ReleaseStatus; + /** + * + * @type {AvatarStyles} + * @memberof Avatar + */ + 'styles': AvatarStyles; /** * * @type {Array} @@ -1549,6 +1570,31 @@ export interface Avatar { */ 'version': number; } +/** + * + * @export + * @interface AvatarStyles + */ +export interface AvatarStyles { + /** + * + * @type {string} + * @memberof AvatarStyles + */ + 'primary'?: string | null; + /** + * + * @type {string} + * @memberof AvatarStyles + */ + 'secondary'?: string | null; + /** + * + * @type {Array} + * @memberof AvatarStyles + */ + 'supplementary'?: Array; +} /** * **Deprecation:** `Object` has unknown usage/fields, and is always empty. Use normal `Url` field instead. * @export @@ -1617,6 +1663,31 @@ export interface Badge { */ 'updatedAt'?: string | null; } +/** + * + * @export + * @interface Balance + */ +export interface Balance { + /** + * + * @type {number} + * @memberof Balance + */ + 'balance': number; + /** + * + * @type {boolean} + * @memberof Balance + */ + 'noTransactions'?: boolean; + /** + * + * @type {boolean} + * @memberof Balance + */ + 'tiliaResponse'?: boolean; +} /** * * @export @@ -1991,8 +2062,38 @@ export interface CreateGroupRoleRequest { * @type {Array} * @memberof CreateGroupRoleRequest */ - 'permissions'?: Array; + 'permissions'?: Array; } + +export const CreateGroupRoleRequestPermissionsEnum = { + group_all: '\\*', + group_announcement_manage: 'group-announcement-manage', + group_audit_view: 'group-audit-view', + group_bans_manage: 'group-bans-manage', + group_data_manage: 'group-data-manage', + group_default_role_manage: 'group-default-role-manage', + group_galleries_manage: 'group-galleries-manage', + group_instance_age_gated_create: 'group-instance-age-gated-create', + group_instance_join: 'group-instance-join', + group_instance_manage: 'group-instance-manage', + group_instance_moderate: 'group-instance-moderate', + group_instance_open_create: 'group-instance-open-create', + group_instance_plus_create: 'group-instance-plus-create', + group_instance_plus_portal: 'group-instance-plus-portal', + group_instance_plus_portal_unlocked: 'group-instance-plus-portal-unlocked', + group_instance_public_create: 'group-instance-public-create', + group_instance_queue_priority: 'group-instance-queue-priority', + group_instance_restricted_create: 'group-instance-restricted-create', + group_invites_manage: 'group-invites-manage', + group_members_manage: 'group-members-manage', + group_members_remove: 'group-members-remove', + group_members_viewall: 'group-members-viewall', + group_roles_assign: 'group-roles-assign', + group_roles_manage: 'group-roles-manage' +} as const; + +export type CreateGroupRoleRequestPermissionsEnum = typeof CreateGroupRoleRequestPermissionsEnum[keyof typeof CreateGroupRoleRequestPermissionsEnum]; + /** * * @export @@ -2195,10 +2296,10 @@ export interface CurrentUser { 'activeFriends'?: Array; /** * - * @type {string} + * @type {AgeVerificationStatus} * @memberof CurrentUser */ - 'ageVerificationStatus': string; + 'ageVerificationStatus': AgeVerificationStatus; /** * * @type {boolean} @@ -2856,6 +2957,31 @@ export interface FavoriteGroup { */ 'visibility': FavoriteGroupVisibility; } +/** + * + * @export + * @interface FavoriteGroupLimits + */ +export interface FavoriteGroupLimits { + /** + * + * @type {number} + * @memberof FavoriteGroupLimits + */ + 'avatar': number; + /** + * + * @type {number} + * @memberof FavoriteGroupLimits + */ + 'friend': number; + /** + * + * @type {number} + * @memberof FavoriteGroupLimits + */ + 'world': number; +} /** * * @export @@ -2871,6 +2997,37 @@ export const FavoriteGroupVisibility = { export type FavoriteGroupVisibility = typeof FavoriteGroupVisibility[keyof typeof FavoriteGroupVisibility]; +/** + * + * @export + * @interface FavoriteLimits + */ +export interface FavoriteLimits { + /** + * + * @type {number} + * @memberof FavoriteLimits + */ + 'defaultMaxFavoriteGroups': number; + /** + * + * @type {number} + * @memberof FavoriteLimits + */ + 'defaultMaxFavoritesPerGroup': number; + /** + * + * @type {FavoriteGroupLimits} + * @memberof FavoriteLimits + */ + 'maxFavoriteGroups': FavoriteGroupLimits; + /** + * + * @type {FavoriteGroupLimits} + * @memberof FavoriteLimits + */ + 'maxFavoritesPerGroup': FavoriteGroupLimits; +} /** * * @export @@ -3070,1924 +3227,2696 @@ export interface FavoritedWorld { /** * * @export - * @interface FileData + * @interface Feedback */ -export interface FileData { +export interface Feedback { + /** + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof Feedback + */ + 'commenterId': string; /** * * @type {string} - * @memberof FileData + * @memberof Feedback */ - 'category': FileDataCategoryEnum; + 'commenterName': string; + /** + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof Feedback + */ + 'contentAuthorId': string; /** * * @type {string} - * @memberof FileData + * @memberof Feedback */ - 'fileName': string; + 'contentAuthorName': string | null; /** * * @type {string} - * @memberof FileData + * @memberof Feedback */ - 'md5'?: string; + 'contentId': string; + /** + * + * @type {string} + * @memberof Feedback + */ + 'contentName'?: string; + /** + * + * @type {string} + * @memberof Feedback + */ + 'contentType': string; /** * * @type {number} - * @memberof FileData + * @memberof Feedback */ - 'sizeInBytes': number; + 'contentVersion': number | null; /** * - * @type {FileStatus} - * @memberof FileData + * @type {string} + * @memberof Feedback */ - 'status': FileStatus; + 'description'?: string | null; /** * * @type {string} - * @memberof FileData + * @memberof Feedback */ - 'uploadId': string; + 'id': string; /** * * @type {string} - * @memberof FileData + * @memberof Feedback */ - 'url': string; -} - -export const FileDataCategoryEnum = { - Multipart: 'multipart', - Queued: 'queued', - Simple: 'simple' -} as const; - -export type FileDataCategoryEnum = typeof FileDataCategoryEnum[keyof typeof FileDataCategoryEnum]; - -/** - * - * @export - * @enum {string} - */ - -export const FileStatus = { - Waiting: 'waiting', - Complete: 'complete', - None: 'none', - Queued: 'queued' -} as const; - -export type FileStatus = typeof FileStatus[keyof typeof FileStatus]; - - -/** - * - * @export - * @interface FileUploadURL - */ -export interface FileUploadURL { + 'reason': string; + /** + * + * @type {Array} + * @memberof Feedback + */ + 'tags': Array; /** * * @type {string} - * @memberof FileUploadURL + * @memberof Feedback */ - 'url': string; + 'type': string; } /** * * @export - * @interface FileVersion + * @interface FileAnalysis */ -export interface FileVersion { +export interface FileAnalysis { /** * - * @type {string} - * @memberof FileVersion + * @type {FileAnalysisAvatarStats} + * @memberof FileAnalysis */ - 'created_at': string; - /** - * Usually only present if `true` - * @type {boolean} - * @memberof FileVersion - */ - 'deleted'?: boolean; + 'avatarStats': FileAnalysisAvatarStats; /** * - * @type {FileData} - * @memberof FileVersion + * @type {string} + * @memberof FileAnalysis */ - 'delta'?: FileData; + 'created_at'?: string; /** * - * @type {FileData} - * @memberof FileVersion + * @type {number} + * @memberof FileAnalysis */ - 'file'?: FileData; + 'fileSize': number; /** * - * @type {FileData} - * @memberof FileVersion + * @type {boolean} + * @memberof FileAnalysis */ - 'signature'?: FileData; + 'success': boolean; /** * - * @type {FileStatus} - * @memberof FileVersion - */ - 'status': FileStatus; - /** - * Incremental version counter, can only be increased. * @type {number} - * @memberof FileVersion + * @memberof FileAnalysis */ - 'version': number; + 'uncompressedSize': number; } /** * * @export - * @interface FileVersionUploadStatus + * @interface FileAnalysisAvatarStats */ -export interface FileVersionUploadStatus { +export interface FileAnalysisAvatarStats { /** * - * @type {string} - * @memberof FileVersionUploadStatus + * @type {number} + * @memberof FileAnalysisAvatarStats */ - 'uploadId': string; + 'animatorCount': number; /** * - * @type {string} - * @memberof FileVersionUploadStatus + * @type {number} + * @memberof FileAnalysisAvatarStats */ - 'fileName': string; + 'audioSourceCount': number; /** * * @type {number} - * @memberof FileVersionUploadStatus + * @memberof FileAnalysisAvatarStats */ - 'nextPartNumber': number; + 'blendShapeCount': number; /** * * @type {number} - * @memberof FileVersionUploadStatus + * @memberof FileAnalysisAvatarStats */ - 'maxParts': number; + 'boneCount': number; /** * - * @type {Array} - * @memberof FileVersionUploadStatus + * @type {Array} + * @memberof FileAnalysisAvatarStats */ - 'parts': Array; + 'bounds': Array; /** - * Unknown - * @type {Array} - * @memberof FileVersionUploadStatus + * + * @type {number} + * @memberof FileAnalysisAvatarStats */ - 'etags': Array; -} -/** - * - * @export - * @interface FinishFileDataUploadRequest - */ -export interface FinishFileDataUploadRequest { + 'cameraCount'?: number; /** - * Array of ETags uploaded. - * @type {Set} - * @memberof FinishFileDataUploadRequest + * + * @type {number} + * @memberof FileAnalysisAvatarStats */ - 'etags'?: Set; + 'clothCount': number; /** - * Always a zero in string form, despite how many parts uploaded. - * @type {string} - * @memberof FinishFileDataUploadRequest - * @deprecated + * + * @type {number} + * @memberof FileAnalysisAvatarStats */ - 'nextPartNumber': string; + 'constraintCount': number; /** - * Always a zero in string form, despite how many parts uploaded. - * @type {string} - * @memberof FinishFileDataUploadRequest - * @deprecated + * + * @type {number} + * @memberof FileAnalysisAvatarStats */ - 'maxParts': string; -} -/** - * - * @export - * @interface FriendStatus - */ -export interface FriendStatus { + 'contactCount': number; /** * * @type {boolean} - * @memberof FriendStatus + * @memberof FileAnalysisAvatarStats */ - 'incomingRequest': boolean; + 'customExpressions': boolean; /** * * @type {boolean} - * @memberof FriendStatus + * @memberof FileAnalysisAvatarStats */ - 'isFriend': boolean; + 'customizeAnimationLayers': boolean; /** * * @type {boolean} - * @memberof FriendStatus + * @memberof FileAnalysisAvatarStats */ - 'outgoingRequest': boolean; -} -/** - * - * @export - * @interface Group - */ -export interface Group { + 'enableEyeLook': boolean; /** * - * @type {Array} - * @memberof Group + * @type {number} + * @memberof FileAnalysisAvatarStats */ - 'badges'?: Array; + 'lightCount': number; /** * - * @type {string} - * @memberof Group + * @type {number} + * @memberof FileAnalysisAvatarStats */ - 'id'?: string; + 'lineRendererCount': number; /** * - * @type {string} - * @memberof Group + * @type {number} + * @memberof FileAnalysisAvatarStats */ - 'name'?: string; + 'lipSync': number; /** * - * @type {string} - * @memberof Group + * @type {number} + * @memberof FileAnalysisAvatarStats */ - 'shortCode'?: string; + 'materialCount': number; /** * - * @type {string} - * @memberof Group + * @type {number} + * @memberof FileAnalysisAvatarStats */ - 'discriminator'?: string; + 'materialSlotsUsed': number; /** * - * @type {string} - * @memberof Group + * @type {number} + * @memberof FileAnalysisAvatarStats */ - 'description'?: string; + 'meshCount': number; /** * - * @type {string} - * @memberof Group + * @type {number} + * @memberof FileAnalysisAvatarStats */ - 'iconUrl'?: string | null; + 'meshIndices': number; /** * - * @type {string} - * @memberof Group + * @type {number} + * @memberof FileAnalysisAvatarStats */ - 'bannerUrl'?: string | null; + 'meshParticleMaxPolygons': number; /** * - * @type {GroupPrivacy} - * @memberof Group + * @type {number} + * @memberof FileAnalysisAvatarStats */ - 'privacy'?: GroupPrivacy; + 'meshPolygons': number; /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. - * @type {string} - * @memberof Group + * + * @type {number} + * @memberof FileAnalysisAvatarStats */ - 'ownerId'?: string; + 'meshVertices': number; /** * - * @type {string} - * @memberof Group + * @type {boolean} + * @memberof FileAnalysisAvatarStats */ - 'rules'?: string | null; + 'particleCollisionEnabled': boolean; /** * - * @type {Array} - * @memberof Group + * @type {number} + * @memberof FileAnalysisAvatarStats */ - 'links'?: Array; + 'particleSystemCount': number; /** * - * @type {Array} - * @memberof Group + * @type {boolean} + * @memberof FileAnalysisAvatarStats */ - 'languages'?: Array; + 'particleTrailsEnabled': boolean; /** * - * @type {string} - * @memberof Group + * @type {number} + * @memberof FileAnalysisAvatarStats */ - 'iconId'?: string | null; + 'physBoneColliderCount': number; /** * - * @type {string} - * @memberof Group + * @type {number} + * @memberof FileAnalysisAvatarStats */ - 'bannerId'?: string | null; + 'physBoneCollisionCheckCount': number; /** * * @type {number} - * @memberof Group + * @memberof FileAnalysisAvatarStats */ - 'memberCount'?: number; + 'physBoneComponentCount': number; /** * - * @type {string} - * @memberof Group + * @type {number} + * @memberof FileAnalysisAvatarStats */ - 'memberCountSyncedAt'?: string; + 'physBoneTransformCount': number; /** * - * @type {boolean} - * @memberof Group + * @type {number} + * @memberof FileAnalysisAvatarStats */ - 'isVerified'?: boolean; + 'physicsColliders': number; /** * - * @type {GroupJoinState} - * @memberof Group + * @type {number} + * @memberof FileAnalysisAvatarStats */ - 'joinState'?: GroupJoinState; + 'physicsRigidbodies': number; /** * - * @type {Array} - * @memberof Group + * @type {number} + * @memberof FileAnalysisAvatarStats */ - 'tags'?: Array; + 'skinnedMeshCount': number; /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. - * @type {string} - * @memberof Group + * + * @type {number} + * @memberof FileAnalysisAvatarStats */ - 'transferTargetId'?: string; + 'skinnedMeshIndices': number; /** * - * @type {Array} - * @memberof Group + * @type {number} + * @memberof FileAnalysisAvatarStats */ - 'galleries'?: Array; + 'skinnedMeshPolygons': number; /** * - * @type {string} - * @memberof Group + * @type {number} + * @memberof FileAnalysisAvatarStats */ - 'createdAt'?: string; + 'skinnedMeshVertices': number; /** * - * @type {string} - * @memberof Group + * @type {number} + * @memberof FileAnalysisAvatarStats */ - 'updatedAt'?: string; + 'totalClothVertices': number; /** * - * @type {string} - * @memberof Group + * @type {number} + * @memberof FileAnalysisAvatarStats */ - 'lastPostCreatedAt'?: string | null; + 'totalIndices': number; /** * * @type {number} - * @memberof Group + * @memberof FileAnalysisAvatarStats */ - 'onlineMemberCount'?: number; + 'totalMaxParticles': number; /** * - * @type {GroupMemberStatus} - * @memberof Group + * @type {number} + * @memberof FileAnalysisAvatarStats */ - 'membershipStatus'?: GroupMemberStatus; + 'totalPolygons': number; /** * - * @type {GroupMyMember} - * @memberof Group + * @type {number} + * @memberof FileAnalysisAvatarStats */ - 'myMember'?: GroupMyMember; + 'totalTextureUsage': number; /** - * Only returned if ?includeRoles=true is specified. - * @type {Array} - * @memberof Group + * + * @type {number} + * @memberof FileAnalysisAvatarStats */ - 'roles'?: Array | null; + 'totalVertices': number; + /** + * + * @type {number} + * @memberof FileAnalysisAvatarStats + */ + 'trailRendererCount': number; + /** + * + * @type {boolean} + * @memberof FileAnalysisAvatarStats + */ + 'writeDefaultsUsed': boolean; } -/** - * Group access type when the instance type is \"group\" - * @export - * @enum {string} - */ - -export const GroupAccessType = { - Public: 'public', - Plus: 'plus', - Members: 'members' -} as const; - -export type GroupAccessType = typeof GroupAccessType[keyof typeof GroupAccessType]; - - /** * * @export - * @interface GroupAnnouncement + * @interface FileData */ -export interface GroupAnnouncement { +export interface FileData { /** * * @type {string} - * @memberof GroupAnnouncement + * @memberof FileData */ - 'id'?: string; + 'category': FileDataCategoryEnum; /** * * @type {string} - * @memberof GroupAnnouncement - */ - 'groupId'?: string; - /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. - * @type {string} - * @memberof GroupAnnouncement + * @memberof FileData */ - 'authorId'?: string; + 'fileName': string; /** * * @type {string} - * @memberof GroupAnnouncement + * @memberof FileData */ - 'title'?: string | null; + 'md5'?: string; /** * - * @type {string} - * @memberof GroupAnnouncement + * @type {number} + * @memberof FileData */ - 'text'?: string | null; + 'sizeInBytes': number; /** * - * @type {string} - * @memberof GroupAnnouncement + * @type {FileStatus} + * @memberof FileData */ - 'imageId'?: string; + 'status': FileStatus; /** * * @type {string} - * @memberof GroupAnnouncement + * @memberof FileData */ - 'imageUrl'?: string | null; + 'uploadId': string; /** * * @type {string} - * @memberof GroupAnnouncement + * @memberof FileData */ - 'createdAt'?: string | null; + 'url': string; +} + +export const FileDataCategoryEnum = { + Multipart: 'multipart', + Queued: 'queued', + Simple: 'simple' +} as const; + +export type FileDataCategoryEnum = typeof FileDataCategoryEnum[keyof typeof FileDataCategoryEnum]; + +/** + * + * @export + * @enum {string} + */ + +export const FileStatus = { + Waiting: 'waiting', + Complete: 'complete', + None: 'none', + Queued: 'queued' +} as const; + +export type FileStatus = typeof FileStatus[keyof typeof FileStatus]; + + +/** + * + * @export + * @interface FileUploadURL + */ +export interface FileUploadURL { /** * * @type {string} - * @memberof GroupAnnouncement + * @memberof FileUploadURL */ - 'updatedAt'?: string | null; + 'url': string; } /** * * @export - * @interface GroupAuditLogEntry + * @interface FileVersion */ -export interface GroupAuditLogEntry { +export interface FileVersion { /** * * @type {string} - * @memberof GroupAuditLogEntry + * @memberof FileVersion */ - 'id'?: string; + 'created_at': string; + /** + * Usually only present if `true` + * @type {boolean} + * @memberof FileVersion + */ + 'deleted'?: boolean; /** * - * @type {string} - * @memberof GroupAuditLogEntry + * @type {FileData} + * @memberof FileVersion */ - 'created_at'?: string; + 'delta'?: FileData; /** * - * @type {string} - * @memberof GroupAuditLogEntry + * @type {FileData} + * @memberof FileVersion */ - 'groupId'?: string; + 'file'?: FileData; /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. - * @type {string} - * @memberof GroupAuditLogEntry + * + * @type {FileData} + * @memberof FileVersion */ - 'actorId'?: string; + 'signature'?: FileData; /** * - * @type {string} - * @memberof GroupAuditLogEntry + * @type {FileStatus} + * @memberof FileVersion */ - 'actorDisplayName'?: string; + 'status': FileStatus; /** - * Typically GroupID or GroupRoleID, but could be other types of IDs. - * @type {string} - * @memberof GroupAuditLogEntry + * Incremental version counter, can only be increased. + * @type {number} + * @memberof FileVersion */ - 'targetId'?: string; + 'version': number; +} +/** + * + * @export + * @interface FileVersionUploadStatus + */ +export interface FileVersionUploadStatus { /** - * The type of event that occurred. This is a string that is prefixed with the type of object that the event occurred on. For example, a group role update event would be prefixed with `group.role`. + * * @type {string} - * @memberof GroupAuditLogEntry + * @memberof FileVersionUploadStatus */ - 'eventType'?: string; + 'uploadId': string; /** - * A human-readable description of the event. + * * @type {string} - * @memberof GroupAuditLogEntry + * @memberof FileVersionUploadStatus */ - 'description'?: string; + 'fileName': string; /** - * The data associated with the event. The format of this data is dependent on the event type. - * @type {object} - * @memberof GroupAuditLogEntry + * + * @type {number} + * @memberof FileVersionUploadStatus */ - 'data'?: object; + 'nextPartNumber': number; + /** + * + * @type {number} + * @memberof FileVersionUploadStatus + */ + 'maxParts': number; + /** + * + * @type {Array} + * @memberof FileVersionUploadStatus + */ + 'parts': Array; + /** + * Unknown + * @type {Array} + * @memberof FileVersionUploadStatus + */ + 'etags': Array; } /** * * @export - * @interface GroupGallery + * @interface FinishFileDataUploadRequest */ -export interface GroupGallery { +export interface FinishFileDataUploadRequest { /** - * - * @type {string} - * @memberof GroupGallery + * Array of ETags uploaded. + * @type {Set} + * @memberof FinishFileDataUploadRequest */ - 'id'?: string; + 'etags'?: Set; /** - * Name of the gallery. + * Always a zero in string form, despite how many parts uploaded. * @type {string} - * @memberof GroupGallery + * @memberof FinishFileDataUploadRequest + * @deprecated */ - 'name'?: string; + 'nextPartNumber': string; /** - * Description of the gallery. + * Always a zero in string form, despite how many parts uploaded. * @type {string} - * @memberof GroupGallery + * @memberof FinishFileDataUploadRequest + * @deprecated */ - 'description'?: string; + 'maxParts': string; +} +/** + * + * @export + * @interface FriendStatus + */ +export interface FriendStatus { /** - * Whether the gallery is members only. + * * @type {boolean} - * @memberof GroupGallery - */ - 'membersOnly'?: boolean; - /** - * - * @type {Array} - * @memberof GroupGallery - */ - 'roleIdsToView'?: Array | null; - /** - * - * @type {Array} - * @memberof GroupGallery + * @memberof FriendStatus */ - 'roleIdsToSubmit'?: Array | null; + 'incomingRequest': boolean; /** - * - * @type {Array} - * @memberof GroupGallery + * + * @type {boolean} + * @memberof FriendStatus */ - 'roleIdsToAutoApprove'?: Array | null; + 'isFriend': boolean; /** - * - * @type {Array} - * @memberof GroupGallery + * + * @type {boolean} + * @memberof FriendStatus */ - 'roleIdsToManage'?: Array | null; + 'outgoingRequest': boolean; +} +/** + * + * @export + * @interface GetUserGroupInstances200Response + */ +export interface GetUserGroupInstances200Response { /** * * @type {string} - * @memberof GroupGallery + * @memberof GetUserGroupInstances200Response */ - 'createdAt'?: string; + 'fetchedAt'?: string; /** * - * @type {string} - * @memberof GroupGallery + * @type {Array} + * @memberof GetUserGroupInstances200Response */ - 'updatedAt'?: string; + 'instances'?: Array; } /** * * @export - * @interface GroupGalleryImage + * @interface Group */ -export interface GroupGalleryImage { +export interface Group { + /** + * + * @type {boolean} + * @memberof Group + */ + 'ageVerificationSlotsAvailable'?: boolean; /** * * @type {string} - * @memberof GroupGalleryImage + * @memberof Group + */ + 'ageVerificationBetaCode'?: string; + /** + * + * @type {number} + * @memberof Group + */ + 'ageVerificationBetaSlots'?: number; + /** + * + * @type {Array} + * @memberof Group + */ + 'badges'?: Array; + /** + * + * @type {string} + * @memberof Group */ 'id'?: string; /** * * @type {string} - * @memberof GroupGalleryImage + * @memberof Group */ - 'groupId'?: string; + 'name'?: string; /** * * @type {string} - * @memberof GroupGalleryImage + * @memberof Group */ - 'galleryId'?: string; + 'shortCode'?: string; /** * * @type {string} - * @memberof GroupGalleryImage + * @memberof Group */ - 'fileId'?: string; + 'discriminator'?: string; /** * * @type {string} - * @memberof GroupGalleryImage + * @memberof Group */ - 'imageUrl'?: string; + 'description'?: string; /** * * @type {string} - * @memberof GroupGalleryImage + * @memberof Group */ - 'createdAt'?: string; + 'iconUrl'?: string | null; /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * * @type {string} - * @memberof GroupGalleryImage + * @memberof Group */ - 'submittedByUserId'?: string; + 'bannerUrl'?: string | null; /** * - * @type {boolean} - * @memberof GroupGalleryImage + * @type {GroupPrivacy} + * @memberof Group */ - 'approved'?: boolean; + 'privacy'?: GroupPrivacy; /** * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof GroupGalleryImage + * @memberof Group */ - 'approvedByUserId'?: string; + 'ownerId'?: string; /** * * @type {string} - * @memberof GroupGalleryImage + * @memberof Group */ - 'approvedAt'?: string; -} -/** - * - * @export - * @interface GroupInstance - */ -export interface GroupInstance { + 'rules'?: string | null; /** * - * @type {string} - * @memberof GroupInstance + * @type {Array} + * @memberof Group */ - 'instanceId': string; + 'links'?: Array; /** - * InstanceID can be \"offline\" on User profiles if you are not friends with that user and \"private\" if you are friends and user is in private instance. + * + * @type {Array} + * @memberof Group + */ + 'languages'?: Array; + /** + * * @type {string} - * @memberof GroupInstance + * @memberof Group */ - 'location': string; + 'iconId'?: string | null; /** * - * @type {World} - * @memberof GroupInstance + * @type {string} + * @memberof Group */ - 'world': World; + 'bannerId'?: string | null; /** * * @type {number} - * @memberof GroupInstance + * @memberof Group */ - 'memberCount': number; -} -/** - * - * @export - * @enum {string} - */ - -export const GroupJoinRequestAction = { - Accept: 'accept', - Reject: 'reject' -} as const; - -export type GroupJoinRequestAction = typeof GroupJoinRequestAction[keyof typeof GroupJoinRequestAction]; - - -/** - * - * @export - * @enum {string} - */ - -export const GroupJoinState = { - Closed: 'closed', - Invite: 'invite', - Request: 'request', - Open: 'open' -} as const; - -export type GroupJoinState = typeof GroupJoinState[keyof typeof GroupJoinState]; - - -/** - * - * @export - * @interface GroupLimitedMember - */ -export interface GroupLimitedMember { + 'memberCount'?: number; /** * * @type {string} - * @memberof GroupLimitedMember + * @memberof Group */ - 'id'?: string; + 'memberCountSyncedAt'?: string; /** * - * @type {string} - * @memberof GroupLimitedMember - */ - 'groupId'?: string; - /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. - * @type {string} - * @memberof GroupLimitedMember - */ - 'userId'?: string; - /** - * Whether the user is representing the group. This makes the group show up above the name tag in-game. * @type {boolean} - * @memberof GroupLimitedMember + * @memberof Group */ - 'isRepresenting'?: boolean; + 'isVerified'?: boolean; /** * - * @type {Array} - * @memberof GroupLimitedMember + * @type {GroupJoinState} + * @memberof Group */ - 'roleIds'?: Array; + 'joinState'?: GroupJoinState; /** * * @type {Array} - * @memberof GroupLimitedMember + * @memberof Group */ - 'mRoleIds'?: Array; + 'tags'?: Array; /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof GroupLimitedMember + * @memberof Group */ - 'joinedAt'?: string | null; + 'transferTargetId'?: string; /** * - * @type {GroupMemberStatus} - * @memberof GroupLimitedMember + * @type {Array} + * @memberof Group */ - 'membershipStatus'?: GroupMemberStatus; + 'galleries'?: Array; /** * * @type {string} - * @memberof GroupLimitedMember + * @memberof Group */ - 'visibility'?: string; + 'createdAt'?: string; /** * - * @type {boolean} - * @memberof GroupLimitedMember - */ - 'isSubscribedToAnnouncements'?: boolean; - /** - * Only visible via the /groups/:groupId/members endpoint, **not** when fetching a specific user. * @type {string} - * @memberof GroupLimitedMember + * @memberof Group */ - 'createdAt'?: string | null; + 'updatedAt'?: string; /** - * Only visible via the /groups/:groupId/members endpoint, **not** when fetching a specific user. + * * @type {string} - * @memberof GroupLimitedMember + * @memberof Group */ - 'bannedAt'?: string | null; + 'lastPostCreatedAt'?: string | null; /** - * Only visible via the /groups/:groupId/members endpoint, **not** when fetching a specific user. - * @type {string} - * @memberof GroupLimitedMember + * + * @type {number} + * @memberof Group */ - 'managerNotes'?: string | null; + 'onlineMemberCount'?: number; /** * - * @type {string} - * @memberof GroupLimitedMember + * @type {GroupMemberStatus} + * @memberof Group */ - 'lastPostReadAt'?: string | null; + 'membershipStatus'?: GroupMemberStatus; /** * - * @type {boolean} - * @memberof GroupLimitedMember + * @type {GroupMyMember} + * @memberof Group */ - 'hasJoinedFromPurchase'?: boolean; + 'myMember'?: GroupMyMember; + /** + * Only returned if ?includeRoles=true is specified. + * @type {Array} + * @memberof Group + */ + 'roles'?: Array | null; } +/** + * Group access type when the instance type is \"group\" + * @export + * @enum {string} + */ + +export const GroupAccessType = { + Public: 'public', + Plus: 'plus', + Members: 'members' +} as const; + +export type GroupAccessType = typeof GroupAccessType[keyof typeof GroupAccessType]; + + /** * * @export - * @interface GroupMember + * @interface GroupAnnouncement */ -export interface GroupMember { +export interface GroupAnnouncement { /** * * @type {string} - * @memberof GroupMember + * @memberof GroupAnnouncement */ - 'acceptedByDisplayName'?: string | null; + 'id'?: string; /** * * @type {string} - * @memberof GroupMember + * @memberof GroupAnnouncement */ - 'acceptedById'?: string | null; + 'groupId'?: string; /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof GroupMember + * @memberof GroupAnnouncement */ - 'id'?: string; + 'authorId'?: string; /** * * @type {string} - * @memberof GroupMember + * @memberof GroupAnnouncement */ - 'groupId'?: string; + 'title'?: string | null; /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * * @type {string} - * @memberof GroupMember + * @memberof GroupAnnouncement */ - 'userId'?: string; + 'text'?: string | null; /** - * Whether the user is representing the group. This makes the group show up above the name tag in-game. - * @type {boolean} - * @memberof GroupMember + * + * @type {string} + * @memberof GroupAnnouncement */ - 'isRepresenting'?: boolean; + 'imageId'?: string; /** * - * @type {GroupMemberLimitedUser} - * @memberof GroupMember + * @type {string} + * @memberof GroupAnnouncement */ - 'user'?: GroupMemberLimitedUser; + 'imageUrl'?: string | null; /** * - * @type {Array} - * @memberof GroupMember + * @type {string} + * @memberof GroupAnnouncement */ - 'roleIds'?: Array; + 'createdAt'?: string | null; /** * - * @type {Array} - * @memberof GroupMember + * @type {string} + * @memberof GroupAnnouncement */ - 'mRoleIds'?: Array; + 'updatedAt'?: string | null; +} +/** + * + * @export + * @interface GroupAuditLogEntry + */ +export interface GroupAuditLogEntry { /** * * @type {string} - * @memberof GroupMember + * @memberof GroupAuditLogEntry */ - 'joinedAt'?: string | null; + 'id'?: string; /** * - * @type {GroupMemberStatus} - * @memberof GroupMember + * @type {string} + * @memberof GroupAuditLogEntry */ - 'membershipStatus'?: GroupMemberStatus; + 'created_at'?: string; /** * * @type {string} - * @memberof GroupMember + * @memberof GroupAuditLogEntry */ - 'visibility'?: string; + 'groupId'?: string; /** - * - * @type {boolean} - * @memberof GroupMember + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof GroupAuditLogEntry */ - 'isSubscribedToAnnouncements'?: boolean; + 'actorId'?: string; /** - * Only visible via the /groups/:groupId/members endpoint, **not** when fetching a specific user. + * * @type {string} - * @memberof GroupMember + * @memberof GroupAuditLogEntry */ - 'createdAt'?: string | null; + 'actorDisplayName'?: string; /** - * Only visible via the /groups/:groupId/members endpoint, **not** when fetching a specific user. + * Typically a UserID, GroupID, GroupRoleID, or Location, but could be other types of IDs. * @type {string} - * @memberof GroupMember + * @memberof GroupAuditLogEntry */ - 'bannedAt'?: string | null; + 'targetId'?: string; /** - * Only visible via the /groups/:groupId/members endpoint, **not** when fetching a specific user. + * The type of event that occurred. This is a string that is prefixed with the type of object that the event occurred on. For example, a group role update event would be prefixed with `group.role`. * @type {string} - * @memberof GroupMember + * @memberof GroupAuditLogEntry */ - 'managerNotes'?: string | null; + 'eventType'?: string; /** - * + * A human-readable description of the event. * @type {string} - * @memberof GroupMember + * @memberof GroupAuditLogEntry */ - 'lastPostReadAt'?: string | null; + 'description'?: string; /** - * - * @type {boolean} - * @memberof GroupMember + * The data associated with the event. The format of this data is dependent on the event type. + * @type {object} + * @memberof GroupAuditLogEntry */ - 'hasJoinedFromPurchase'?: boolean; + 'data'?: object; } /** - * Only visible via the /groups/:groupId/members endpoint, **not** when fetching a specific user. + * * @export - * @interface GroupMemberLimitedUser + * @interface GroupGallery */ -export interface GroupMemberLimitedUser { +export interface GroupGallery { /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * * @type {string} - * @memberof GroupMemberLimitedUser + * @memberof GroupGallery */ 'id'?: string; /** - * + * Name of the gallery. * @type {string} - * @memberof GroupMemberLimitedUser + * @memberof GroupGallery */ - 'displayName'?: string; + 'name'?: string; /** - * + * Description of the gallery. * @type {string} - * @memberof GroupMemberLimitedUser + * @memberof GroupGallery */ - 'thumbnailUrl'?: string | null; + 'description'?: string; /** - * - * @type {string} - * @memberof GroupMemberLimitedUser + * Whether the gallery is members only. + * @type {boolean} + * @memberof GroupGallery */ - 'iconUrl'?: string; + 'membersOnly'?: boolean; /** - * - * @type {string} - * @memberof GroupMemberLimitedUser + * + * @type {Array} + * @memberof GroupGallery */ - 'profilePicOverride'?: string; + 'roleIdsToView'?: Array | null; + /** + * + * @type {Array} + * @memberof GroupGallery + */ + 'roleIdsToSubmit'?: Array | null; + /** + * + * @type {Array} + * @memberof GroupGallery + */ + 'roleIdsToAutoApprove'?: Array | null; + /** + * + * @type {Array} + * @memberof GroupGallery + */ + 'roleIdsToManage'?: Array | null; /** * * @type {string} - * @memberof GroupMemberLimitedUser + * @memberof GroupGallery */ - 'currentAvatarThumbnailImageUrl'?: string | null; + 'createdAt'?: string; /** * - * @type {Array} - * @memberof GroupMemberLimitedUser + * @type {string} + * @memberof GroupGallery */ - 'currentAvatarTags'?: Array; + 'updatedAt'?: string; } /** * * @export - * @enum {string} - */ - -export const GroupMemberStatus = { - Inactive: 'inactive', - Member: 'member', - Requested: 'requested', - Invited: 'invited', - Banned: 'banned', - Userblocked: 'userblocked' -} as const; - -export type GroupMemberStatus = typeof GroupMemberStatus[keyof typeof GroupMemberStatus]; - - -/** - * - * @export - * @interface GroupMyMember + * @interface GroupGalleryImage */ -export interface GroupMyMember { +export interface GroupGalleryImage { /** * * @type {string} - * @memberof GroupMyMember + * @memberof GroupGalleryImage */ 'id'?: string; /** * * @type {string} - * @memberof GroupMyMember + * @memberof GroupGalleryImage */ 'groupId'?: string; - /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. - * @type {string} - * @memberof GroupMyMember - */ - 'userId'?: string; - /** - * - * @type {Array} - * @memberof GroupMyMember - */ - 'roleIds'?: Array; /** * * @type {string} - * @memberof GroupMyMember + * @memberof GroupGalleryImage */ - 'acceptedByDisplayName'?: string | null; + 'galleryId'?: string; /** * * @type {string} - * @memberof GroupMyMember + * @memberof GroupGalleryImage */ - 'acceptedById'?: string | null; + 'fileId'?: string; /** * * @type {string} - * @memberof GroupMyMember + * @memberof GroupGalleryImage */ - 'createdAt'?: string; + 'imageUrl'?: string; /** * * @type {string} - * @memberof GroupMyMember + * @memberof GroupGalleryImage */ - 'managerNotes'?: string; + 'createdAt'?: string; /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof GroupMyMember + * @memberof GroupGalleryImage */ - 'membershipStatus'?: string; + 'submittedByUserId'?: string; /** * * @type {boolean} - * @memberof GroupMyMember + * @memberof GroupGalleryImage */ - 'isSubscribedToAnnouncements'?: boolean; + 'approved'?: boolean; /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof GroupMyMember - */ - 'visibility'?: string; - /** - * - * @type {boolean} - * @memberof GroupMyMember + * @memberof GroupGalleryImage */ - 'isRepresenting'?: boolean; + 'approvedByUserId'?: string; /** * * @type {string} - * @memberof GroupMyMember + * @memberof GroupGalleryImage */ - 'joinedAt'?: string; + 'approvedAt'?: string; +} +/** + * + * @export + * @interface GroupInstance + */ +export interface GroupInstance { /** * * @type {string} - * @memberof GroupMyMember - */ - 'bannedAt'?: string | null; - /** - * - * @type {boolean} - * @memberof GroupMyMember - */ - 'has2FA'?: boolean; - /** - * - * @type {boolean} - * @memberof GroupMyMember + * @memberof GroupInstance */ - 'hasJoinedFromPurchase'?: boolean; + 'instanceId': string; /** - * + * InstanceID can be \"offline\" on User profiles if you are not friends with that user and \"private\" if you are friends and user is in private instance. * @type {string} - * @memberof GroupMyMember + * @memberof GroupInstance */ - 'lastPostReadAt'?: string | null; + 'location': string; /** * - * @type {Array} - * @memberof GroupMyMember + * @type {World} + * @memberof GroupInstance */ - 'mRoleIds'?: Array; + 'world': World; /** * - * @type {Array} - * @memberof GroupMyMember + * @type {number} + * @memberof GroupInstance */ - 'permissions'?: Array; + 'memberCount': number; } /** - * A permission that can be granted to a role in a group. + * * @export - * @interface GroupPermission + * @enum {string} */ -export interface GroupPermission { - /** - * The name of the permission. - * @type {string} - * @memberof GroupPermission - */ - 'name'?: string; - /** - * The display name of the permission. - * @type {string} - * @memberof GroupPermission - */ - 'displayName'?: string; - /** - * Human-readable description of the permission. - * @type {string} - * @memberof GroupPermission - */ - 'help'?: string; - /** - * Whether this permission is a \"management\" permission. - * @type {boolean} - * @memberof GroupPermission - */ - 'isManagementPermission'?: boolean; - /** - * Whether the user is allowed to add this permission to a role. - * @type {boolean} - * @memberof GroupPermission - */ - 'allowedToAdd'?: boolean; -} + +export const GroupJoinRequestAction = { + Accept: 'accept', + Reject: 'reject' +} as const; + +export type GroupJoinRequestAction = typeof GroupJoinRequestAction[keyof typeof GroupJoinRequestAction]; + + /** * * @export - * @interface GroupPost + * @enum {string} */ -export interface GroupPost { + +export const GroupJoinState = { + Closed: 'closed', + Invite: 'invite', + Request: 'request', + Open: 'open' +} as const; + +export type GroupJoinState = typeof GroupJoinState[keyof typeof GroupJoinState]; + + +/** + * + * @export + * @interface GroupLimitedMember + */ +export interface GroupLimitedMember { /** * * @type {string} - * @memberof GroupPost + * @memberof GroupLimitedMember */ 'id'?: string; /** * * @type {string} - * @memberof GroupPost + * @memberof GroupLimitedMember */ 'groupId'?: string; /** * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof GroupPost + * @memberof GroupLimitedMember */ - 'authorId'?: string; + 'userId'?: string; /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. - * @type {string} - * @memberof GroupPost + * Whether the user is representing the group. This makes the group show up above the name tag in-game. + * @type {boolean} + * @memberof GroupLimitedMember */ - 'editorId'?: string; + 'isRepresenting'?: boolean; /** * - * @type {GroupPostVisibility} - * @memberof GroupPost - */ - 'visibility'?: GroupPostVisibility; + * @type {Array} + * @memberof GroupLimitedMember + */ + 'roleIds'?: Array; /** - * + * * @type {Array} - * @memberof GroupPost + * @memberof GroupLimitedMember */ - 'roleId'?: Array; + 'mRoleIds'?: Array; /** * * @type {string} - * @memberof GroupPost + * @memberof GroupLimitedMember */ - 'title'?: string; + 'joinedAt'?: string | null; /** * - * @type {string} - * @memberof GroupPost + * @type {GroupMemberStatus} + * @memberof GroupLimitedMember */ - 'text'?: string; + 'membershipStatus'?: GroupMemberStatus; /** * * @type {string} - * @memberof GroupPost + * @memberof GroupLimitedMember */ - 'imageId'?: string; + 'visibility'?: string; /** * + * @type {boolean} + * @memberof GroupLimitedMember + */ + 'isSubscribedToAnnouncements'?: boolean; + /** + * Only visible via the /groups/:groupId/members endpoint, **not** when fetching a specific user. * @type {string} - * @memberof GroupPost + * @memberof GroupLimitedMember */ - 'imageUrl'?: string | null; + 'createdAt'?: string | null; /** - * + * Only visible via the /groups/:groupId/members endpoint, **not** when fetching a specific user. * @type {string} - * @memberof GroupPost + * @memberof GroupLimitedMember */ - 'createdAt'?: string; + 'bannedAt'?: string | null; + /** + * Only visible via the /groups/:groupId/members endpoint, **not** when fetching a specific user. + * @type {string} + * @memberof GroupLimitedMember + */ + 'managerNotes'?: string | null; /** * * @type {string} - * @memberof GroupPost + * @memberof GroupLimitedMember */ - 'updatedAt'?: string; + 'lastPostReadAt'?: string | null; + /** + * + * @type {boolean} + * @memberof GroupLimitedMember + */ + 'hasJoinedFromPurchase'?: boolean; } /** * * @export - * @enum {string} - */ - -export const GroupPostVisibility = { - Group: 'group', - Public: 'public' -} as const; - -export type GroupPostVisibility = typeof GroupPostVisibility[keyof typeof GroupPostVisibility]; - - -/** - * - * @export - * @enum {string} - */ - -export const GroupPrivacy = { - Default: 'default', - Private: 'private' -} as const; - -export type GroupPrivacy = typeof GroupPrivacy[keyof typeof GroupPrivacy]; - - -/** - * - * @export - * @interface GroupRole + * @interface GroupMember */ -export interface GroupRole { +export interface GroupMember { /** * * @type {string} - * @memberof GroupRole + * @memberof GroupMember */ - 'id'?: string; + 'acceptedByDisplayName'?: string | null; /** * * @type {string} - * @memberof GroupRole + * @memberof GroupMember */ - 'groupId'?: string; + 'acceptedById'?: string | null; /** * * @type {string} - * @memberof GroupRole + * @memberof GroupMember */ - 'name'?: string; + 'id'?: string; /** * * @type {string} - * @memberof GroupRole + * @memberof GroupMember */ - 'description'?: string; + 'groupId'?: string; /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof GroupMember + */ + 'userId'?: string; + /** + * Whether the user is representing the group. This makes the group show up above the name tag in-game. * @type {boolean} - * @memberof GroupRole + * @memberof GroupMember */ - 'isSelfAssignable'?: boolean; + 'isRepresenting'?: boolean; + /** + * + * @type {GroupMemberLimitedUser} + * @memberof GroupMember + */ + 'user'?: GroupMemberLimitedUser; /** * * @type {Array} - * @memberof GroupRole + * @memberof GroupMember */ - 'permissions'?: Array; + 'roleIds'?: Array; /** * - * @type {boolean} - * @memberof GroupRole + * @type {Array} + * @memberof GroupMember */ - 'isManagementRole'?: boolean; + 'mRoleIds'?: Array; /** * - * @type {boolean} - * @memberof GroupRole + * @type {string} + * @memberof GroupMember */ - 'requiresTwoFactor'?: boolean; + 'joinedAt'?: string | null; /** * - * @type {boolean} - * @memberof GroupRole + * @type {GroupMemberStatus} + * @memberof GroupMember */ - 'requiresPurchase'?: boolean; + 'membershipStatus'?: GroupMemberStatus; /** * - * @type {number} - * @memberof GroupRole + * @type {string} + * @memberof GroupMember */ - 'order'?: number; + 'visibility'?: string; /** * + * @type {boolean} + * @memberof GroupMember + */ + 'isSubscribedToAnnouncements'?: boolean; + /** + * Only visible via the /groups/:groupId/members endpoint, **not** when fetching a specific user. * @type {string} - * @memberof GroupRole + * @memberof GroupMember */ - 'createdAt'?: string; + 'createdAt'?: string | null; + /** + * Only visible via the /groups/:groupId/members endpoint, **not** when fetching a specific user. + * @type {string} + * @memberof GroupMember + */ + 'bannedAt'?: string | null; + /** + * Only visible via the /groups/:groupId/members endpoint, **not** when fetching a specific user. + * @type {string} + * @memberof GroupMember + */ + 'managerNotes'?: string | null; /** * * @type {string} - * @memberof GroupRole + * @memberof GroupMember */ - 'updatedAt'?: string; + 'lastPostReadAt'?: string | null; + /** + * + * @type {boolean} + * @memberof GroupMember + */ + 'hasJoinedFromPurchase'?: boolean; } /** - * + * Only visible via the /groups/:groupId/members endpoint, **not** when fetching a specific user. * @export - * @enum {string} + * @interface GroupMemberLimitedUser */ - -export const GroupRoleTemplate = { - Default: 'default', - ManagedFree: 'managedFree', - ManagedInvite: 'managedInvite', - ManagedRequest: 'managedRequest' -} as const; - -export type GroupRoleTemplate = typeof GroupRoleTemplate[keyof typeof GroupRoleTemplate]; - - +export interface GroupMemberLimitedUser { + /** + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof GroupMemberLimitedUser + */ + 'id'?: string; + /** + * + * @type {string} + * @memberof GroupMemberLimitedUser + */ + 'displayName'?: string; + /** + * + * @type {string} + * @memberof GroupMemberLimitedUser + */ + 'thumbnailUrl'?: string | null; + /** + * + * @type {string} + * @memberof GroupMemberLimitedUser + */ + 'iconUrl'?: string; + /** + * + * @type {string} + * @memberof GroupMemberLimitedUser + */ + 'profilePicOverride'?: string; + /** + * + * @type {string} + * @memberof GroupMemberLimitedUser + */ + 'currentAvatarThumbnailImageUrl'?: string | null; + /** + * + * @type {Array} + * @memberof GroupMemberLimitedUser + */ + 'currentAvatarTags'?: Array; +} /** * * @export * @enum {string} */ -export const GroupSearchSort = { - Asc: 'joinedAt:asc', - Desc: 'joinedAt:desc' +export const GroupMemberStatus = { + Inactive: 'inactive', + Member: 'member', + Requested: 'requested', + Invited: 'invited', + Banned: 'banned', + Userblocked: 'userblocked' } as const; -export type GroupSearchSort = typeof GroupSearchSort[keyof typeof GroupSearchSort]; +export type GroupMemberStatus = typeof GroupMemberStatus[keyof typeof GroupMemberStatus]; /** * * @export - * @enum {string} + * @interface GroupMyMember */ - -export const GroupUserVisibility = { - Visible: 'visible', - Hidden: 'hidden', - Friends: 'friends' -} as const; - -export type GroupUserVisibility = typeof GroupUserVisibility[keyof typeof GroupUserVisibility]; - - -/** - * - * @export - * @interface InfoPush - */ -export interface InfoPush { +export interface GroupMyMember { /** * * @type {string} - * @memberof InfoPush + * @memberof GroupMyMember */ - 'id': string; + 'id'?: string; /** * - * @type {boolean} - * @memberof InfoPush + * @type {string} + * @memberof GroupMyMember */ - 'isEnabled': boolean; + 'groupId'?: string; /** - * - * @type {ReleaseStatus} - * @memberof InfoPush + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof GroupMyMember */ - 'releaseStatus': ReleaseStatus; + 'userId'?: string; /** * - * @type {number} - * @memberof InfoPush - */ - 'priority': number; - /** - * * @type {Array} - * @memberof InfoPush + * @memberof GroupMyMember */ - 'tags': Array; + 'roleIds'?: Array; /** * - * @type {InfoPushData} - * @memberof InfoPush - */ - 'data': InfoPushData; - /** - * Unknown usage, MD5 * @type {string} - * @memberof InfoPush + * @memberof GroupMyMember */ - 'hash': string; + 'acceptedByDisplayName'?: string | null; /** * * @type {string} - * @memberof InfoPush + * @memberof GroupMyMember */ - 'createdAt': string; + 'acceptedById'?: string | null; /** * * @type {string} - * @memberof InfoPush + * @memberof GroupMyMember */ - 'updatedAt': string; + 'createdAt'?: string; /** * * @type {string} - * @memberof InfoPush + * @memberof GroupMyMember */ - 'startDate'?: string; + 'managerNotes'?: string; /** * * @type {string} - * @memberof InfoPush + * @memberof GroupMyMember */ - 'endDate'?: string; -} -/** - * - * @export - * @interface InfoPushData - */ -export interface InfoPushData { + 'membershipStatus'?: string; /** * - * @type {DynamicContentRow} - * @memberof InfoPushData + * @type {boolean} + * @memberof GroupMyMember */ - 'contentList'?: DynamicContentRow; + 'isSubscribedToAnnouncements'?: boolean; /** * * @type {string} - * @memberof InfoPushData + * @memberof GroupMyMember */ - 'description'?: string; + 'visibility'?: string; + /** + * + * @type {boolean} + * @memberof GroupMyMember + */ + 'isRepresenting'?: boolean; /** * * @type {string} - * @memberof InfoPushData + * @memberof GroupMyMember */ - 'imageUrl'?: string; + 'joinedAt'?: string; /** * * @type {string} - * @memberof InfoPushData + * @memberof GroupMyMember */ - 'name'?: string; + 'bannedAt'?: string | null; /** * - * @type {InfoPushDataClickable} - * @memberof InfoPushData + * @type {boolean} + * @memberof GroupMyMember */ - 'onPressed'?: InfoPushDataClickable; + 'has2FA'?: boolean; /** * - * @type {string} - * @memberof InfoPushData + * @type {boolean} + * @memberof GroupMyMember */ - 'template'?: string; + 'hasJoinedFromPurchase'?: boolean; /** * * @type {string} - * @memberof InfoPushData + * @memberof GroupMyMember */ - 'version'?: string; + 'lastPostReadAt'?: string | null; /** * - * @type {InfoPushDataArticle} - * @memberof InfoPushData + * @type {Array} + * @memberof GroupMyMember */ - 'article'?: InfoPushDataArticle; -} -/** - * - * @export - * @interface InfoPushDataArticle - */ -export interface InfoPushDataArticle { + 'mRoleIds'?: Array; /** * - * @type {InfoPushDataArticleContent} - * @memberof InfoPushDataArticle + * @type {Array} + * @memberof GroupMyMember */ - 'content'?: InfoPushDataArticleContent; + 'permissions'?: Array; } + +export const GroupMyMemberPermissionsEnum = { + group_all: '\\*', + group_announcement_manage: 'group-announcement-manage', + group_audit_view: 'group-audit-view', + group_bans_manage: 'group-bans-manage', + group_data_manage: 'group-data-manage', + group_default_role_manage: 'group-default-role-manage', + group_galleries_manage: 'group-galleries-manage', + group_instance_age_gated_create: 'group-instance-age-gated-create', + group_instance_join: 'group-instance-join', + group_instance_manage: 'group-instance-manage', + group_instance_moderate: 'group-instance-moderate', + group_instance_open_create: 'group-instance-open-create', + group_instance_plus_create: 'group-instance-plus-create', + group_instance_plus_portal: 'group-instance-plus-portal', + group_instance_plus_portal_unlocked: 'group-instance-plus-portal-unlocked', + group_instance_public_create: 'group-instance-public-create', + group_instance_queue_priority: 'group-instance-queue-priority', + group_instance_restricted_create: 'group-instance-restricted-create', + group_invites_manage: 'group-invites-manage', + group_members_manage: 'group-members-manage', + group_members_remove: 'group-members-remove', + group_members_viewall: 'group-members-viewall', + group_roles_assign: 'group-roles-assign', + group_roles_manage: 'group-roles-manage' +} as const; + +export type GroupMyMemberPermissionsEnum = typeof GroupMyMemberPermissionsEnum[keyof typeof GroupMyMemberPermissionsEnum]; + /** - * + * A permission that can be granted to a role in a group. * @export - * @interface InfoPushDataArticleContent + * @interface GroupPermission */ -export interface InfoPushDataArticleContent { +export interface GroupPermission { /** - * + * The name of the permission. * @type {string} - * @memberof InfoPushDataArticleContent + * @memberof GroupPermission */ - 'text'?: string; + 'name'?: string; /** - * + * The display name of the permission. * @type {string} - * @memberof InfoPushDataArticleContent + * @memberof GroupPermission */ - 'imageUrl'?: string; + 'displayName'?: string; /** - * - * @type {InfoPushDataClickable} - * @memberof InfoPushDataArticleContent + * Human-readable description of the permission. + * @type {string} + * @memberof GroupPermission */ - 'onPressed'?: InfoPushDataClickable; + 'help'?: string; + /** + * Whether this permission is a \"management\" permission. + * @type {boolean} + * @memberof GroupPermission + */ + 'isManagementPermission'?: boolean; + /** + * Whether the user is allowed to add this permission to a role. + * @type {boolean} + * @memberof GroupPermission + */ + 'allowedToAdd'?: boolean; } /** * * @export - * @interface InfoPushDataClickable + * @interface GroupPost */ -export interface InfoPushDataClickable { +export interface GroupPost { /** * * @type {string} - * @memberof InfoPushDataClickable + * @memberof GroupPost */ - 'command': InfoPushDataClickableCommandEnum; + 'id'?: string; /** - * In case of OpenURL, this would contain the link. - * @type {Array} - * @memberof InfoPushDataClickable + * + * @type {string} + * @memberof GroupPost */ - 'parameters'?: Array; -} - -export const InfoPushDataClickableCommandEnum = { - OpenUrl: 'OpenURL', - OpenVrcPlusMenu: 'OpenVRCPlusMenu', - OpenSafetyMenu: 'OpenSafetyMenu', - CannedWorldSearch: 'CannedWorldSearch' -} as const; - -export type InfoPushDataClickableCommandEnum = typeof InfoPushDataClickableCommandEnum[keyof typeof InfoPushDataClickableCommandEnum]; - -/** - * * `hidden` field is only present if InstanceType is `hidden` aka \"Friends+\", and is instance creator. * `friends` field is only present if InstanceType is `friends` aka \"Friends\", and is instance creator. * `private` field is only present if InstanceType is `private` aka \"Invite\" or \"Invite+\", and is instance creator. - * @export - * @interface Instance - */ -export interface Instance { + 'groupId'?: string; /** - * - * @type {boolean} - * @memberof Instance + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof GroupPost */ - 'active': boolean; + 'authorId'?: string; /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof Instance + * @memberof GroupPost */ - 'ageGate'?: string | null; + 'editorId'?: string; /** * - * @type {boolean} - * @memberof Instance + * @type {GroupPostVisibility} + * @memberof GroupPost */ - 'canRequestInvite': boolean; + 'visibility'?: GroupPostVisibility; /** - * - * @type {number} - * @memberof Instance + * + * @type {Array} + * @memberof GroupPost */ - 'capacity': number; + 'roleId'?: Array; /** - * Always returns \"unknown\". + * * @type {string} - * @memberof Instance - * @deprecated + * @memberof GroupPost */ - 'clientNumber': string; + 'title'?: string; /** * * @type {string} - * @memberof Instance + * @memberof GroupPost */ - 'displayName': string | null; + 'text'?: string; /** * - * @type {boolean} - * @memberof Instance + * @type {string} + * @memberof GroupPost */ - 'full': boolean; + 'imageId'?: string; /** * - * @type {number} - * @memberof Instance + * @type {string} + * @memberof GroupPost + */ + 'imageUrl'?: string | null; + /** + * + * @type {string} + * @memberof GroupPost + */ + 'createdAt'?: string; + /** + * + * @type {string} + * @memberof GroupPost + */ + 'updatedAt'?: string; +} +/** + * + * @export + * @enum {string} + */ + +export const GroupPostVisibility = { + Group: 'group', + Public: 'public' +} as const; + +export type GroupPostVisibility = typeof GroupPostVisibility[keyof typeof GroupPostVisibility]; + + +/** + * + * @export + * @enum {string} + */ + +export const GroupPrivacy = { + Default: 'default', + Private: 'private' +} as const; + +export type GroupPrivacy = typeof GroupPrivacy[keyof typeof GroupPrivacy]; + + +/** + * + * @export + * @interface GroupRole + */ +export interface GroupRole { + /** + * + * @type {string} + * @memberof GroupRole + */ + 'id'?: string; + /** + * + * @type {string} + * @memberof GroupRole + */ + 'groupId'?: string; + /** + * + * @type {string} + * @memberof GroupRole + */ + 'name'?: string; + /** + * + * @type {string} + * @memberof GroupRole + */ + 'description'?: string; + /** + * + * @type {boolean} + * @memberof GroupRole + */ + 'isSelfAssignable'?: boolean; + /** + * + * @type {Array} + * @memberof GroupRole + */ + 'permissions'?: Array; + /** + * + * @type {boolean} + * @memberof GroupRole + */ + 'isManagementRole'?: boolean; + /** + * + * @type {boolean} + * @memberof GroupRole + */ + 'requiresTwoFactor'?: boolean; + /** + * + * @type {boolean} + * @memberof GroupRole + */ + 'requiresPurchase'?: boolean; + /** + * + * @type {number} + * @memberof GroupRole + */ + 'order'?: number; + /** + * + * @type {string} + * @memberof GroupRole + */ + 'createdAt'?: string; + /** + * + * @type {string} + * @memberof GroupRole + */ + 'updatedAt'?: string; +} + +export const GroupRolePermissionsEnum = { + group_all: '\\*', + group_announcement_manage: 'group-announcement-manage', + group_audit_view: 'group-audit-view', + group_bans_manage: 'group-bans-manage', + group_data_manage: 'group-data-manage', + group_default_role_manage: 'group-default-role-manage', + group_galleries_manage: 'group-galleries-manage', + group_instance_age_gated_create: 'group-instance-age-gated-create', + group_instance_join: 'group-instance-join', + group_instance_manage: 'group-instance-manage', + group_instance_moderate: 'group-instance-moderate', + group_instance_open_create: 'group-instance-open-create', + group_instance_plus_create: 'group-instance-plus-create', + group_instance_plus_portal: 'group-instance-plus-portal', + group_instance_plus_portal_unlocked: 'group-instance-plus-portal-unlocked', + group_instance_public_create: 'group-instance-public-create', + group_instance_queue_priority: 'group-instance-queue-priority', + group_instance_restricted_create: 'group-instance-restricted-create', + group_invites_manage: 'group-invites-manage', + group_members_manage: 'group-members-manage', + group_members_remove: 'group-members-remove', + group_members_viewall: 'group-members-viewall', + group_roles_assign: 'group-roles-assign', + group_roles_manage: 'group-roles-manage' +} as const; + +export type GroupRolePermissionsEnum = typeof GroupRolePermissionsEnum[keyof typeof GroupRolePermissionsEnum]; + +/** + * + * @export + * @enum {string} + */ + +export const GroupRoleTemplate = { + Default: 'default', + ManagedFree: 'managedFree', + ManagedInvite: 'managedInvite', + ManagedRequest: 'managedRequest' +} as const; + +export type GroupRoleTemplate = typeof GroupRoleTemplate[keyof typeof GroupRoleTemplate]; + + +/** + * + * @export + * @enum {string} + */ + +export const GroupSearchSort = { + Asc: 'joinedAt:asc', + Desc: 'joinedAt:desc' +} as const; + +export type GroupSearchSort = typeof GroupSearchSort[keyof typeof GroupSearchSort]; + + +/** + * + * @export + * @enum {string} + */ + +export const GroupUserVisibility = { + Visible: 'visible', + Hidden: 'hidden', + Friends: 'friends' +} as const; + +export type GroupUserVisibility = typeof GroupUserVisibility[keyof typeof GroupUserVisibility]; + + +/** + * + * @export + * @interface InfoPush + */ +export interface InfoPush { + /** + * + * @type {string} + * @memberof InfoPush + */ + 'id': string; + /** + * + * @type {boolean} + * @memberof InfoPush + */ + 'isEnabled': boolean; + /** + * + * @type {ReleaseStatus} + * @memberof InfoPush + */ + 'releaseStatus': ReleaseStatus; + /** + * + * @type {number} + * @memberof InfoPush + */ + 'priority': number; + /** + * + * @type {Array} + * @memberof InfoPush + */ + 'tags': Array; + /** + * + * @type {InfoPushData} + * @memberof InfoPush + */ + 'data': InfoPushData; + /** + * Unknown usage, MD5 + * @type {string} + * @memberof InfoPush + */ + 'hash': string; + /** + * + * @type {string} + * @memberof InfoPush + */ + 'createdAt': string; + /** + * + * @type {string} + * @memberof InfoPush + */ + 'updatedAt': string; + /** + * + * @type {string} + * @memberof InfoPush + */ + 'startDate'?: string; + /** + * + * @type {string} + * @memberof InfoPush + */ + 'endDate'?: string; +} +/** + * + * @export + * @interface InfoPushData + */ +export interface InfoPushData { + /** + * + * @type {DynamicContentRow} + * @memberof InfoPushData + */ + 'contentList'?: DynamicContentRow; + /** + * + * @type {string} + * @memberof InfoPushData + */ + 'description'?: string; + /** + * + * @type {string} + * @memberof InfoPushData + */ + 'imageUrl'?: string; + /** + * + * @type {string} + * @memberof InfoPushData + */ + 'name'?: string; + /** + * + * @type {InfoPushDataClickable} + * @memberof InfoPushData + */ + 'onPressed'?: InfoPushDataClickable; + /** + * + * @type {string} + * @memberof InfoPushData + */ + 'template'?: string; + /** + * + * @type {string} + * @memberof InfoPushData + */ + 'version'?: string; + /** + * + * @type {InfoPushDataArticle} + * @memberof InfoPushData + */ + 'article'?: InfoPushDataArticle; +} +/** + * + * @export + * @interface InfoPushDataArticle + */ +export interface InfoPushDataArticle { + /** + * + * @type {InfoPushDataArticleContent} + * @memberof InfoPushDataArticle + */ + 'content'?: InfoPushDataArticleContent; +} +/** + * + * @export + * @interface InfoPushDataArticleContent + */ +export interface InfoPushDataArticleContent { + /** + * + * @type {string} + * @memberof InfoPushDataArticleContent + */ + 'text'?: string; + /** + * + * @type {string} + * @memberof InfoPushDataArticleContent + */ + 'imageUrl'?: string; + /** + * + * @type {InfoPushDataClickable} + * @memberof InfoPushDataArticleContent + */ + 'onPressed'?: InfoPushDataClickable; +} +/** + * + * @export + * @interface InfoPushDataClickable + */ +export interface InfoPushDataClickable { + /** + * + * @type {string} + * @memberof InfoPushDataClickable + */ + 'command': InfoPushDataClickableCommandEnum; + /** + * In case of OpenURL, this would contain the link. + * @type {Array} + * @memberof InfoPushDataClickable + */ + 'parameters'?: Array; +} + +export const InfoPushDataClickableCommandEnum = { + OpenUrl: 'OpenURL', + OpenVrcPlusMenu: 'OpenVRCPlusMenu', + OpenSafetyMenu: 'OpenSafetyMenu', + CannedWorldSearch: 'CannedWorldSearch' +} as const; + +export type InfoPushDataClickableCommandEnum = typeof InfoPushDataClickableCommandEnum[keyof typeof InfoPushDataClickableCommandEnum]; + +/** + * * `hidden` field is only present if InstanceType is `hidden` aka \"Friends+\", and is instance creator. * `friends` field is only present if InstanceType is `friends` aka \"Friends\", and is instance creator. * `private` field is only present if InstanceType is `private` aka \"Invite\" or \"Invite+\", and is instance creator. + * @export + * @interface Instance + */ +export interface Instance { + /** + * + * @type {boolean} + * @memberof Instance + */ + 'active': boolean; + /** + * + * @type {boolean} + * @memberof Instance + */ + 'ageGate'?: boolean | null; + /** + * + * @type {boolean} + * @memberof Instance + */ + 'canRequestInvite': boolean; + /** + * + * @type {number} + * @memberof Instance + */ + 'capacity': number; + /** + * Always returns \"unknown\". + * @type {string} + * @memberof Instance + * @deprecated + */ + 'clientNumber': string; + /** + * + * @type {string} + * @memberof Instance + */ + 'displayName': string | null; + /** + * + * @type {boolean} + * @memberof Instance + */ + 'full': boolean; + /** + * + * @type {number} + * @memberof Instance + */ + 'gameServerVersion': number; + /** + * InstanceID can be \"offline\" on User profiles if you are not friends with that user and \"private\" if you are friends and user is in private instance. + * @type {string} + * @memberof Instance + */ + 'id': string; + /** + * + * @type {string} + * @memberof Instance + */ + 'instanceId': string; + /** + * + * @type {string} + * @memberof Instance + */ + 'instancePersistenceEnabled': string | null; + /** + * InstanceID can be \"offline\" on User profiles if you are not friends with that user and \"private\" if you are friends and user is in private instance. + * @type {string} + * @memberof Instance + */ + 'location': string; + /** + * + * @type {number} + * @memberof Instance + */ + 'n_users': number; + /** + * + * @type {string} + * @memberof Instance + */ + 'name': string; + /** + * A groupId if the instance type is \"group\", null if instance type is public, or a userId otherwise + * @type {string} + * @memberof Instance + */ + 'ownerId'?: string | null; + /** + * + * @type {boolean} + * @memberof Instance + */ + 'permanent': boolean; + /** + * + * @type {Region} + * @memberof Instance + */ + 'photonRegion': Region; + /** + * + * @type {InstancePlatforms} + * @memberof Instance + */ + 'platforms': InstancePlatforms; + /** + * + * @type {boolean} + * @memberof Instance + */ + 'playerPersistenceEnabled': boolean | null; + /** + * + * @type {InstanceRegion} + * @memberof Instance + */ + 'region': InstanceRegion; + /** + * + * @type {string} + * @memberof Instance + */ + 'secureName': string; + /** + * + * @type {string} + * @memberof Instance + */ + 'shortName'?: string | null; + /** + * The tags array on Instances usually contain the language tags of the people in the instance. + * @type {Array} + * @memberof Instance + */ + 'tags': Array; + /** + * + * @type {InstanceType} + * @memberof Instance */ - 'gameServerVersion': number; + 'type': InstanceType; /** - * InstanceID can be \"offline\" on User profiles if you are not friends with that user and \"private\" if you are friends and user is in private instance. + * WorldID be \"offline\" on User profiles if you are not friends with that user. * @type {string} * @memberof Instance */ - 'id': string; + 'worldId': string; /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} * @memberof Instance */ - 'instanceId': string; + 'hidden'?: string; /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} * @memberof Instance */ - 'instancePersistenceEnabled': string | null; + 'friends'?: string; /** - * InstanceID can be \"offline\" on User profiles if you are not friends with that user and \"private\" if you are friends and user is in private instance. + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} * @memberof Instance */ - 'location': string; + 'private'?: string; + /** + * + * @type {boolean} + * @memberof Instance + */ + 'queueEnabled': boolean; /** * * @type {number} * @memberof Instance */ - 'n_users': number; + 'queueSize': number; /** * - * @type {string} + * @type {number} * @memberof Instance */ - 'name': string; + 'recommendedCapacity': number; /** - * A groupId if the instance type is \"group\", null if instance type is public, or a userId otherwise - * @type {string} + * + * @type {boolean} * @memberof Instance */ - 'ownerId'?: string | null; + 'roleRestricted'?: boolean; /** * * @type {boolean} * @memberof Instance */ - 'permanent': boolean; + 'strict': boolean; /** * - * @type {Region} + * @type {number} * @memberof Instance */ - 'photonRegion': Region; + 'userCount': number; /** * - * @type {InstancePlatforms} + * @type {World} * @memberof Instance */ - 'platforms': InstancePlatforms; + 'world': World; + /** + * The users field is present on instances created by the requesting user. + * @type {Array} + * @memberof Instance + */ + 'users'?: Array; + /** + * + * @type {GroupAccessType} + * @memberof Instance + */ + 'groupAccessType'?: GroupAccessType; /** * * @type {boolean} * @memberof Instance */ - 'playerPersistenceEnabled': boolean | null; + 'hasCapacityForYou'?: boolean; /** * - * @type {InstanceRegion} + * @type {string} * @memberof Instance */ - 'region': InstanceRegion; + 'nonce'?: string; /** * * @type {string} * @memberof Instance */ + 'closedAt'?: string | null; + /** + * + * @type {boolean} + * @memberof Instance + */ + 'hardClose'?: boolean | null; +} +/** + * + * @export + * @interface InstancePlatforms + */ +export interface InstancePlatforms { + /** + * + * @type {number} + * @memberof InstancePlatforms + */ + 'android': number; + /** + * + * @type {number} + * @memberof InstancePlatforms + */ + 'ios'?: number; + /** + * + * @type {number} + * @memberof InstancePlatforms + */ + 'standalonewindows': number; +} +/** + * Instance region + * @export + * @enum {string} + */ + +export const InstanceRegion = { + Us: 'us', + Use: 'use', + Eu: 'eu', + Jp: 'jp', + Unknown: 'unknown' +} as const; + +export type InstanceRegion = typeof InstanceRegion[keyof typeof InstanceRegion]; + + +/** + * + * @export + * @interface InstanceShortNameResponse + */ +export interface InstanceShortNameResponse { + /** + * + * @type {string} + * @memberof InstanceShortNameResponse + */ 'secureName': string; /** * * @type {string} - * @memberof Instance + * @memberof InstanceShortNameResponse */ 'shortName'?: string | null; +} +/** + * + * @export + * @enum {string} + */ + +export const InstanceType = { + Public: 'public', + Hidden: 'hidden', + Friends: 'friends', + Private: 'private', + Group: 'group' +} as const; + +export type InstanceType = typeof InstanceType[keyof typeof InstanceType]; + + +/** + * + * @export + * @interface InviteMessage + */ +export interface InviteMessage { /** - * The tags array on Instances usually contain the language tags of the people in the instance. - * @type {Array} - * @memberof Instance + * + * @type {boolean} + * @memberof InviteMessage */ - 'tags': Array; + 'canBeUpdated': boolean; /** * - * @type {InstanceType} - * @memberof Instance + * @type {string} + * @memberof InviteMessage */ - 'type': InstanceType; + 'id': string; /** - * WorldID be \"offline\" on User profiles if you are not friends with that user. + * * @type {string} - * @memberof Instance + * @memberof InviteMessage */ - 'worldId': string; + 'message': string; /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * + * @type {InviteMessageType} + * @memberof InviteMessage + */ + 'messageType': InviteMessageType; + /** + * Changes to 60 when updated, although probably server-side configurable. + * @type {number} + * @memberof InviteMessage + */ + 'remainingCooldownMinutes': number; + /** + * + * @type {number} + * @memberof InviteMessage + */ + 'slot': number; + /** + * * @type {string} - * @memberof Instance + * @memberof InviteMessage */ - 'hidden'?: string; + 'updatedAt': string; +} +/** + * + * @export + * @enum {string} + */ + +export const InviteMessageType = { + Message: 'message', + Response: 'response', + Request: 'request', + RequestResponse: 'requestResponse' +} as const; + +export type InviteMessageType = typeof InviteMessageType[keyof typeof InviteMessageType]; + + +/** + * + * @export + * @interface InviteRequest + */ +export interface InviteRequest { /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * InstanceID can be \"offline\" on User profiles if you are not friends with that user and \"private\" if you are friends and user is in private instance. + * @type {string} + * @memberof InviteRequest + */ + 'instanceId': string; + /** + * + * @type {number} + * @memberof InviteRequest + */ + 'messageSlot'?: number; +} +/** + * + * @export + * @interface InviteResponse + */ +export interface InviteResponse { + /** + * + * @type {number} + * @memberof InviteResponse + */ + 'responseSlot': number; +} +/** + * + * @export + * @interface Jam + */ +export interface Jam { + /** + * * @type {string} - * @memberof Instance + * @memberof Jam */ - 'friends'?: string; + 'description': string; /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * * @type {string} - * @memberof Instance + * @memberof Jam */ - 'private'?: string; + 'id': string; /** * * @type {boolean} - * @memberof Instance + * @memberof Jam */ - 'queueEnabled': boolean; + 'isVisible': boolean; /** * - * @type {number} - * @memberof Instance + * @type {string} + * @memberof Jam */ - 'queueSize': number; + 'moreInfo': string; /** - * - * @type {number} - * @memberof Instance + * One of: - submissions_open - closed + * @type {string} + * @memberof Jam */ - 'recommendedCapacity': number; + 'state': string; /** * - * @type {boolean} - * @memberof Instance + * @type {JamStateChangeDates} + * @memberof Jam */ - 'roleRestricted'?: boolean; + 'stateChangeDates': JamStateChangeDates; /** * - * @type {boolean} - * @memberof Instance + * @type {string} + * @memberof Jam */ - 'strict': boolean; + 'submissionContentGateDate': string | null; /** * - * @type {number} - * @memberof Instance + * @type {boolean} + * @memberof Jam */ - 'userCount': number; + 'submissionContentGated': boolean; /** * - * @type {World} - * @memberof Instance - */ - 'world': World; - /** - * The users field is present on instances created by the requesting user. - * @type {Array} - * @memberof Instance + * @type {string} + * @memberof Jam */ - 'users'?: Array; + 'title': string; /** * - * @type {GroupAccessType} - * @memberof Instance + * @type {string} + * @memberof Jam */ - 'groupAccessType'?: GroupAccessType; + 'updated_at': string; +} +/** + * + * @export + * @interface JamStateChangeDates + */ +export interface JamStateChangeDates { /** * - * @type {boolean} - * @memberof Instance + * @type {string} + * @memberof JamStateChangeDates */ - 'hasCapacityForYou'?: boolean; + 'closed'?: string | null; /** * * @type {string} - * @memberof Instance + * @memberof JamStateChangeDates */ - 'nonce'?: string; + 'submissionsClosed'?: string | null; /** * * @type {string} - * @memberof Instance + * @memberof JamStateChangeDates */ - 'closedAt'?: string | null; + 'submissionsOpened'?: string | null; /** * - * @type {boolean} - * @memberof Instance + * @type {string} + * @memberof JamStateChangeDates */ - 'hardClose'?: boolean | null; + 'winnersSelected'?: string | null; } /** * * @export - * @interface InstancePlatforms + * @interface License */ -export interface InstancePlatforms { +export interface License { + /** + * Either a AvatarID, LicenseGroupID, PermissionID or ProductID. This depends on the `forType` field. + * @type {string} + * @memberof License + */ + 'forId': string; /** * - * @type {number} - * @memberof InstancePlatforms + * @type {LicenseType} + * @memberof License */ - 'android': number; + 'forType': LicenseType; /** * - * @type {number} - * @memberof InstancePlatforms + * @type {string} + * @memberof License */ - 'ios'?: number; + 'forName': string; /** * - * @type {number} - * @memberof InstancePlatforms + * @type {LicenseAction} + * @memberof License */ - 'standalonewindows': number; + 'forAction': LicenseAction; } /** - * Instance region + * * @export * @enum {string} */ -export const InstanceRegion = { - Us: 'us', - Use: 'use', - Eu: 'eu', - Jp: 'jp', - Unknown: 'unknown' +export const LicenseAction = { + Wear: 'wear', + Have: 'have' } as const; -export type InstanceRegion = typeof InstanceRegion[keyof typeof InstanceRegion]; +export type LicenseAction = typeof LicenseAction[keyof typeof LicenseAction]; /** * * @export - * @interface InstanceShortNameResponse + * @interface LicenseGroup */ -export interface InstanceShortNameResponse { +export interface LicenseGroup { /** * * @type {string} - * @memberof InstanceShortNameResponse + * @memberof LicenseGroup */ - 'secureName': string; + 'id': string; /** * * @type {string} - * @memberof InstanceShortNameResponse + * @memberof LicenseGroup */ - 'shortName'?: string | null; + 'name': string; + /** + * + * @type {string} + * @memberof LicenseGroup + */ + 'description': string; + /** + * + * @type {Array} + * @memberof LicenseGroup + */ + 'licenses': Array; } /** * @@ -4995,1332 +5924,1420 @@ export interface InstanceShortNameResponse { * @enum {string} */ -export const InstanceType = { - Public: 'public', - Hidden: 'hidden', - Friends: 'friends', - Private: 'private', - Group: 'group' +export const LicenseType = { + Avatar: 'avatar', + LicenseGroup: 'licenseGroup', + Permission: 'permission', + Product: 'product' } as const; -export type InstanceType = typeof InstanceType[keyof typeof InstanceType]; +export type LicenseType = typeof LicenseType[keyof typeof LicenseType]; /** * * @export - * @interface InviteMessage + * @interface LimitedGroup */ -export interface InviteMessage { +export interface LimitedGroup { /** * - * @type {boolean} - * @memberof InviteMessage + * @type {string} + * @memberof LimitedGroup */ - 'canBeUpdated': boolean; + 'id'?: string; /** * * @type {string} - * @memberof InviteMessage + * @memberof LimitedGroup */ - 'id': string; + 'name'?: string; /** * * @type {string} - * @memberof InviteMessage + * @memberof LimitedGroup */ - 'message': string; + 'shortCode'?: string; /** * - * @type {InviteMessageType} - * @memberof InviteMessage + * @type {string} + * @memberof LimitedGroup */ - 'messageType': InviteMessageType; + 'discriminator'?: string; /** - * Changes to 60 when updated, although probably server-side configurable. + * + * @type {string} + * @memberof LimitedGroup + */ + 'description'?: string; + /** + * + * @type {string} + * @memberof LimitedGroup + */ + 'iconUrl'?: string | null; + /** + * + * @type {string} + * @memberof LimitedGroup + */ + 'bannerUrl'?: string | null; + /** + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof LimitedGroup + */ + 'ownerId'?: string; + /** + * + * @type {string} + * @memberof LimitedGroup + */ + 'rules'?: string | null; + /** + * + * @type {string} + * @memberof LimitedGroup + */ + 'iconId'?: string | null; + /** + * + * @type {string} + * @memberof LimitedGroup + */ + 'bannerId'?: string | null; + /** + * * @type {number} - * @memberof InviteMessage + * @memberof LimitedGroup + */ + 'memberCount'?: number; + /** + * + * @type {Array} + * @memberof LimitedGroup + */ + 'tags'?: Array; + /** + * + * @type {string} + * @memberof LimitedGroup + */ + 'createdAt'?: string; + /** + * + * @type {GroupMemberStatus} + * @memberof LimitedGroup */ - 'remainingCooldownMinutes': number; + 'membershipStatus'?: GroupMemberStatus; /** * - * @type {number} - * @memberof InviteMessage + * @type {boolean} + * @memberof LimitedGroup */ - 'slot': number; + 'isSearchable'?: boolean; /** - * - * @type {string} - * @memberof InviteMessage + * + * @type {Array} + * @memberof LimitedGroup */ - 'updatedAt': string; + 'galleries'?: Array; } /** * * @export - * @enum {string} - */ - -export const InviteMessageType = { - Message: 'message', - Response: 'response', - Request: 'request', - RequestResponse: 'requestResponse' -} as const; - -export type InviteMessageType = typeof InviteMessageType[keyof typeof InviteMessageType]; - - -/** - * - * @export - * @interface InviteRequest + * @interface LimitedUnityPackage */ -export interface InviteRequest { +export interface LimitedUnityPackage { /** - * InstanceID can be \"offline\" on User profiles if you are not friends with that user and \"private\" if you are friends and user is in private instance. + * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. * @type {string} - * @memberof InviteRequest - */ - 'instanceId': string; - /** - * - * @type {number} - * @memberof InviteRequest + * @memberof LimitedUnityPackage */ - 'messageSlot'?: number; -} -/** - * - * @export - * @interface InviteResponse - */ -export interface InviteResponse { + 'platform': string; /** * - * @type {number} - * @memberof InviteResponse + * @type {string} + * @memberof LimitedUnityPackage */ - 'responseSlot': number; + 'unityVersion': string; } /** * * @export - * @interface Jam + * @interface LimitedUser */ -export interface Jam { - /** - * - * @type {string} - * @memberof Jam - */ - 'description': string; +export interface LimitedUser { /** * * @type {string} - * @memberof Jam + * @memberof LimitedUser */ - 'id': string; + 'bio'?: string; /** - * - * @type {boolean} - * @memberof Jam + * + * @type {Array} + * @memberof LimitedUser */ - 'isVisible': boolean; + 'bioLinks'?: Array; /** - * + * When profilePicOverride is not empty, use it instead. * @type {string} - * @memberof Jam + * @memberof LimitedUser */ - 'moreInfo': string; + 'currentAvatarImageUrl'?: string; /** - * One of: - submissions_open - closed + * When profilePicOverride is not empty, use it instead. * @type {string} - * @memberof Jam + * @memberof LimitedUser */ - 'state': string; + 'currentAvatarThumbnailImageUrl'?: string; /** * - * @type {JamStateChangeDates} - * @memberof Jam + * @type {Array} + * @memberof LimitedUser */ - 'stateChangeDates': JamStateChangeDates; + 'currentAvatarTags'?: Array; /** * - * @type {string} - * @memberof Jam + * @type {DeveloperType} + * @memberof LimitedUser */ - 'submissionContentGateDate': string | null; + 'developerType': DeveloperType; /** * - * @type {boolean} - * @memberof Jam + * @type {string} + * @memberof LimitedUser */ - 'submissionContentGated': boolean; + 'displayName': string; /** * * @type {string} - * @memberof Jam + * @memberof LimitedUser */ - 'title': string; + 'fallbackAvatar'?: string; /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof Jam + * @memberof LimitedUser */ - 'updated_at': string; -} -/** - * - * @export - * @interface JamStateChangeDates - */ -export interface JamStateChangeDates { + 'id': string; /** * - * @type {string} - * @memberof JamStateChangeDates + * @type {boolean} + * @memberof LimitedUser */ - 'closed'?: string | null; + 'isFriend': boolean; /** - * + * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. * @type {string} - * @memberof JamStateChangeDates + * @memberof LimitedUser */ - 'submissionsClosed'?: string | null; + 'last_platform': string; /** * * @type {string} - * @memberof JamStateChangeDates + * @memberof LimitedUser */ - 'submissionsOpened'?: string | null; + 'last_login'?: string | null; /** * * @type {string} - * @memberof JamStateChangeDates + * @memberof LimitedUser */ - 'winnersSelected'?: string | null; -} -/** - * - * @export - * @interface License - */ -export interface License { + 'profilePicOverride'?: string; /** - * Either a AvatarID, LicenseGroupID, PermissionID or ProductID. This depends on the `forType` field. + * * @type {string} - * @memberof License + * @memberof LimitedUser */ - 'forId': string; + 'pronouns'?: string; /** * - * @type {LicenseType} - * @memberof License + * @type {UserStatus} + * @memberof LimitedUser */ - 'forType': LicenseType; + 'status': UserStatus; /** * * @type {string} - * @memberof License + * @memberof LimitedUser */ - 'forName': string; + 'statusDescription': string; /** - * - * @type {LicenseAction} - * @memberof License + * <- Always empty. + * @type {Array} + * @memberof LimitedUser */ - 'forAction': LicenseAction; -} -/** - * - * @export - * @enum {string} - */ - -export const LicenseAction = { - Wear: 'wear', - Have: 'have' -} as const; - -export type LicenseAction = typeof LicenseAction[keyof typeof LicenseAction]; - - -/** - * - * @export - * @interface LicenseGroup - */ -export interface LicenseGroup { + 'tags': Array; /** * * @type {string} - * @memberof LicenseGroup + * @memberof LimitedUser */ - 'id': string; + 'userIcon'?: string; /** - * + * -| **DEPRECATED:** VRChat API no longer return usernames of other users. [See issue by Tupper for more information](https://github.com/pypy-vrc/VRCX/issues/429). * @type {string} - * @memberof LicenseGroup + * @memberof LimitedUser + * @deprecated */ - 'name': string; + 'username'?: string; /** * * @type {string} - * @memberof LicenseGroup + * @memberof LimitedUser */ - 'description': string; + 'location'?: string; /** * - * @type {Array} - * @memberof LicenseGroup + * @type {string} + * @memberof LimitedUser */ - 'licenses': Array; + 'friendKey'?: string; } /** * * @export - * @enum {string} - */ - -export const LicenseType = { - Avatar: 'avatar', - LicenseGroup: 'licenseGroup', - Permission: 'permission', - Product: 'product' -} as const; - -export type LicenseType = typeof LicenseType[keyof typeof LicenseType]; - - -/** - * - * @export - * @interface LimitedGroup + * @interface LimitedUserGroups */ -export interface LimitedGroup { +export interface LimitedUserGroups { /** * * @type {string} - * @memberof LimitedGroup + * @memberof LimitedUserGroups */ 'id'?: string; /** * * @type {string} - * @memberof LimitedGroup + * @memberof LimitedUserGroups */ 'name'?: string; /** * * @type {string} - * @memberof LimitedGroup + * @memberof LimitedUserGroups */ 'shortCode'?: string; /** * * @type {string} - * @memberof LimitedGroup + * @memberof LimitedUserGroups + */ + 'discriminator'?: string; + /** + * + * @type {string} + * @memberof LimitedUserGroups */ - 'discriminator'?: string; + 'description'?: string; /** * * @type {string} - * @memberof LimitedGroup + * @memberof LimitedUserGroups */ - 'description'?: string; + 'iconId'?: string | null; /** * * @type {string} - * @memberof LimitedGroup + * @memberof LimitedUserGroups */ 'iconUrl'?: string | null; /** * * @type {string} - * @memberof LimitedGroup + * @memberof LimitedUserGroups */ - 'bannerUrl'?: string | null; + 'bannerId'?: string | null; /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * * @type {string} - * @memberof LimitedGroup + * @memberof LimitedUserGroups */ - 'ownerId'?: string; + 'bannerUrl'?: string | null; /** * * @type {string} - * @memberof LimitedGroup + * @memberof LimitedUserGroups */ - 'rules'?: string | null; + 'privacy'?: string; /** * * @type {string} - * @memberof LimitedGroup + * @memberof LimitedUserGroups */ - 'iconId'?: string | null; + 'lastPostCreatedAt'?: string | null; /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof LimitedGroup + * @memberof LimitedUserGroups */ - 'bannerId'?: string | null; + 'ownerId'?: string; /** * * @type {number} - * @memberof LimitedGroup + * @memberof LimitedUserGroups */ 'memberCount'?: number; /** - * - * @type {Array} - * @memberof LimitedGroup + * + * @type {string} + * @memberof LimitedUserGroups */ - 'tags'?: Array; + 'groupId'?: string; /** * * @type {string} - * @memberof LimitedGroup + * @memberof LimitedUserGroups */ - 'createdAt'?: string; + 'memberVisibility'?: string; /** * - * @type {GroupMemberStatus} - * @memberof LimitedGroup + * @type {boolean} + * @memberof LimitedUserGroups */ - 'membershipStatus'?: GroupMemberStatus; + 'isRepresenting'?: boolean; /** * * @type {boolean} - * @memberof LimitedGroup + * @memberof LimitedUserGroups */ - 'isSearchable'?: boolean; + 'mutualGroup'?: boolean; /** - * - * @type {Array} - * @memberof LimitedGroup + * + * @type {string} + * @memberof LimitedUserGroups */ - 'galleries'?: Array; + 'lastPostReadAt'?: string | null; } /** * * @export - * @interface LimitedUnityPackage + * @interface LimitedWorld */ -export interface LimitedUnityPackage { +export interface LimitedWorld { /** - * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof LimitedUnityPackage + * @memberof LimitedWorld */ - 'platform': string; + 'authorId': string; /** * * @type {string} - * @memberof LimitedUnityPackage + * @memberof LimitedWorld */ - 'unityVersion': string; -} -/** - * - * @export - * @interface LimitedUser - */ -export interface LimitedUser { + 'authorName': string; /** * - * @type {string} - * @memberof LimitedUser + * @type {number} + * @memberof LimitedWorld */ - 'bio'?: string; + 'capacity': number; /** - * - * @type {Array} - * @memberof LimitedUser + * + * @type {number} + * @memberof LimitedWorld */ - 'bioLinks'?: Array; + 'recommendedCapacity'?: number; /** - * When profilePicOverride is not empty, use it instead. + * * @type {string} - * @memberof LimitedUser + * @memberof LimitedWorld */ - 'currentAvatarImageUrl'?: string; + 'created_at': string; /** - * When profilePicOverride is not empty, use it instead. - * @type {string} - * @memberof LimitedUser + * + * @type {number} + * @memberof LimitedWorld */ - 'currentAvatarThumbnailImageUrl'?: string; + 'favorites': number; /** * - * @type {Array} - * @memberof LimitedUser + * @type {number} + * @memberof LimitedWorld */ - 'currentAvatarTags'?: Array; + 'visits'?: number; /** * - * @type {DeveloperType} - * @memberof LimitedUser + * @type {number} + * @memberof LimitedWorld */ - 'developerType': DeveloperType; + 'heat': number; + /** + * WorldID be \"offline\" on User profiles if you are not friends with that user. + * @type {string} + * @memberof LimitedWorld + */ + 'id': string; /** * * @type {string} - * @memberof LimitedUser + * @memberof LimitedWorld */ - 'displayName': string; + 'imageUrl': string; /** * * @type {string} - * @memberof LimitedUser + * @memberof LimitedWorld */ - 'fallbackAvatar'?: string; + 'labsPublicationDate': string; /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * * @type {string} - * @memberof LimitedUser + * @memberof LimitedWorld */ - 'id': string; + 'name': string; /** * - * @type {boolean} - * @memberof LimitedUser + * @type {number} + * @memberof LimitedWorld */ - 'isFriend': boolean; + 'occupants': number; /** - * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. + * * @type {string} - * @memberof LimitedUser + * @memberof LimitedWorld */ - 'last_platform': string; + 'organization': string; + /** + * + * @type {number} + * @memberof LimitedWorld + */ + 'popularity': number; /** * * @type {string} - * @memberof LimitedUser + * @memberof LimitedWorld */ - 'last_login'?: string | null; + 'previewYoutubeId'?: string | null; /** * * @type {string} - * @memberof LimitedUser + * @memberof LimitedWorld */ - 'profilePicOverride'?: string; + 'publicationDate': string; + /** + * + * @type {ReleaseStatus} + * @memberof LimitedWorld + */ + 'releaseStatus': ReleaseStatus; + /** + * + * @type {Array} + * @memberof LimitedWorld + */ + 'tags': Array; /** * * @type {string} - * @memberof LimitedUser + * @memberof LimitedWorld */ - 'pronouns'?: string; + 'thumbnailImageUrl': string; + /** + * + * @type {Array} + * @memberof LimitedWorld + */ + 'unityPackages': Array; /** * - * @type {UserStatus} - * @memberof LimitedUser + * @type {string} + * @memberof LimitedWorld + */ + 'updated_at': string; + /** + * + * @type {Array} + * @memberof LimitedWorld + */ + 'udonProducts'?: Array; +} +/** + * + * @export + * @enum {string} + */ + +export const MIMEType = { + ImageJpeg: 'image/jpeg', + ImageJpg: 'image/jpg', + ImagePng: 'image/png', + ImageWebp: 'image/webp', + ImageGif: 'image/gif', + ImageBmp: 'image/bmp', + ImageSvgxml: 'image/svg+xml', + ImageTiff: 'image/tiff', + ApplicationXAvatar: 'application/x-avatar', + ApplicationXWorld: 'application/x-world', + ApplicationGzip: 'application/gzip', + ApplicationXRsyncSignature: 'application/x-rsync-signature', + ApplicationXRsyncDelta: 'application/x-rsync-delta', + ApplicationOctetStream: 'application/octet-stream' +} as const; + +export type MIMEType = typeof MIMEType[keyof typeof MIMEType]; + + +/** + * + * @export + * @interface ModelError + */ +export interface ModelError { + /** + * + * @type {Response} + * @memberof ModelError + */ + 'error'?: Response; +} +/** + * + * @export + * @interface ModelFile + */ +export interface ModelFile { + /** + * + * @type {string} + * @memberof ModelFile */ - 'status': UserStatus; + 'extension': string; /** * * @type {string} - * @memberof LimitedUser + * @memberof ModelFile */ - 'statusDescription': string; + 'id': string; /** - * <- Always empty. - * @type {Array} - * @memberof LimitedUser + * + * @type {MIMEType} + * @memberof ModelFile */ - 'tags': Array; + 'mimeType': MIMEType; /** * * @type {string} - * @memberof LimitedUser + * @memberof ModelFile */ - 'userIcon'?: string; + 'name': string; /** - * -| **DEPRECATED:** VRChat API no longer return usernames of other users. [See issue by Tupper for more information](https://github.com/pypy-vrc/VRCX/issues/429). + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof LimitedUser - * @deprecated + * @memberof ModelFile */ - 'username'?: string; + 'ownerId': string; /** - * - * @type {string} - * @memberof LimitedUser + * + * @type {Array} + * @memberof ModelFile */ - 'location'?: string; + 'tags': Array; /** - * - * @type {string} - * @memberof LimitedUser + * + * @type {Set} + * @memberof ModelFile */ - 'friendKey'?: string; + 'versions': Set; } /** * * @export - * @interface LimitedUserGroups + * @interface ModerateUserRequest */ -export interface LimitedUserGroups { - /** - * - * @type {string} - * @memberof LimitedUserGroups - */ - 'id'?: string; - /** - * - * @type {string} - * @memberof LimitedUserGroups - */ - 'name'?: string; +export interface ModerateUserRequest { /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof LimitedUserGroups + * @memberof ModerateUserRequest */ - 'shortCode'?: string; + 'moderated': string; /** * - * @type {string} - * @memberof LimitedUserGroups + * @type {PlayerModerationType} + * @memberof ModerateUserRequest */ - 'discriminator'?: string; + 'type': PlayerModerationType; +} +/** + * + * @export + * @interface Notification + */ +export interface Notification { /** * * @type {string} - * @memberof LimitedUserGroups + * @memberof Notification */ - 'description'?: string; + 'created_at': string; /** - * + * **NOTICE:** This is not a JSON object when received from the REST API, but it is when received from the Websocket API. When received from the REST API, this is a json **encoded** object, meaning you have to json-de-encode to get the NotificationDetail object depending on the NotificationType. * @type {string} - * @memberof LimitedUserGroups + * @memberof Notification */ - 'iconId'?: string | null; + 'details': string; /** * * @type {string} - * @memberof LimitedUserGroups + * @memberof Notification */ - 'iconUrl'?: string | null; + 'id': string; /** * * @type {string} - * @memberof LimitedUserGroups + * @memberof Notification */ - 'bannerId'?: string | null; + 'message': string; /** - * - * @type {string} - * @memberof LimitedUserGroups + * Not included in notification objects received from the Websocket API + * @type {boolean} + * @memberof Notification */ - 'bannerUrl'?: string | null; + 'seen'?: boolean; /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof LimitedUserGroups + * @memberof Notification */ - 'privacy'?: string; + 'receiverUserId'?: string; /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof LimitedUserGroups + * @memberof Notification */ - 'lastPostCreatedAt'?: string | null; + 'senderUserId': string; /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * -| **DEPRECATED:** VRChat API no longer return usernames of other users. [See issue by Tupper for more information](https://github.com/pypy-vrc/VRCX/issues/429). * @type {string} - * @memberof LimitedUserGroups + * @memberof Notification + * @deprecated */ - 'ownerId'?: string; + 'senderUsername'?: string; /** * - * @type {number} - * @memberof LimitedUserGroups + * @type {NotificationType} + * @memberof Notification */ - 'memberCount'?: number; + 'type': NotificationType; +} +/** + * + * @export + * @interface NotificationDetailInvite + */ +export interface NotificationDetailInvite { /** * * @type {string} - * @memberof LimitedUserGroups + * @memberof NotificationDetailInvite */ - 'groupId'?: string; + 'inviteMessage'?: string; /** - * + * WorldID be \"offline\" on User profiles if you are not friends with that user. * @type {string} - * @memberof LimitedUserGroups + * @memberof NotificationDetailInvite */ - 'memberVisibility'?: string; + 'worldId': string; /** * - * @type {boolean} - * @memberof LimitedUserGroups + * @type {string} + * @memberof NotificationDetailInvite */ - 'isRepresenting'?: boolean; + 'worldName': string; +} +/** + * + * @export + * @interface NotificationDetailInviteResponse + */ +export interface NotificationDetailInviteResponse { /** * - * @type {boolean} - * @memberof LimitedUserGroups + * @type {string} + * @memberof NotificationDetailInviteResponse */ - 'mutualGroup'?: boolean; + 'inResponseTo': string; /** * * @type {string} - * @memberof LimitedUserGroups + * @memberof NotificationDetailInviteResponse */ - 'lastPostReadAt'?: string | null; + 'responseMessage': string; } /** * * @export - * @interface LimitedWorld + * @interface NotificationDetailRequestInvite */ -export interface LimitedWorld { +export interface NotificationDetailRequestInvite { /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * TODO: Does this still exist? * @type {string} - * @memberof LimitedWorld + * @memberof NotificationDetailRequestInvite */ - 'authorId': string; + 'platform'?: string; /** - * + * Used when using InviteMessage Slot. * @type {string} - * @memberof LimitedWorld + * @memberof NotificationDetailRequestInvite */ - 'authorName': string; + 'requestMessage'?: string; +} +/** + * + * @export + * @interface NotificationDetailRequestInviteResponse + */ +export interface NotificationDetailRequestInviteResponse { /** * - * @type {number} - * @memberof LimitedWorld + * @type {string} + * @memberof NotificationDetailRequestInviteResponse */ - 'capacity': number; + 'inResponseTo': string; /** - * - * @type {number} - * @memberof LimitedWorld + * Used when using InviteMessage Slot. + * @type {string} + * @memberof NotificationDetailRequestInviteResponse */ - 'recommendedCapacity'?: number; + 'requestMessage'?: string; +} +/** + * + * @export + * @interface NotificationDetailVoteToKick + */ +export interface NotificationDetailVoteToKick { /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof LimitedWorld + * @memberof NotificationDetailVoteToKick */ - 'created_at': string; + 'initiatorUserId': string; /** - * - * @type {number} - * @memberof LimitedWorld + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof NotificationDetailVoteToKick */ - 'favorites': number; + 'userToKickId': string; +} +/** + * + * @export + * @enum {string} + */ + +export const NotificationType = { + FriendRequest: 'friendRequest', + Invite: 'invite', + InviteResponse: 'inviteResponse', + Message: 'message', + RequestInvite: 'requestInvite', + RequestInviteResponse: 'requestInviteResponse', + Votetokick: 'votetokick' +} as const; + +export type NotificationType = typeof NotificationType[keyof typeof NotificationType]; + + +/** + * + * @export + * @enum {string} + */ + +export const OrderOption = { + Ascending: 'ascending', + Descending: 'descending' +} as const; + +export type OrderOption = typeof OrderOption[keyof typeof OrderOption]; + + +/** + * + * @export + * @interface PaginatedGroupAuditLogEntryList + */ +export interface PaginatedGroupAuditLogEntryList { /** - * - * @type {number} - * @memberof LimitedWorld + * + * @type {Array} + * @memberof PaginatedGroupAuditLogEntryList */ - 'visits'?: number; + 'results'?: Array; /** - * + * The total number of results that the query would return if there were no pagination. * @type {number} - * @memberof LimitedWorld + * @memberof PaginatedGroupAuditLogEntryList */ - 'heat': number; + 'totalCount'?: number; /** - * WorldID be \"offline\" on User profiles if you are not friends with that user. - * @type {string} - * @memberof LimitedWorld + * Whether there are more results after this page. + * @type {boolean} + * @memberof PaginatedGroupAuditLogEntryList */ - 'id': string; + 'hasNext'?: boolean; +} +/** + * + * @export + * @interface PastDisplayName + */ +export interface PastDisplayName { /** * * @type {string} - * @memberof LimitedWorld + * @memberof PastDisplayName */ - 'imageUrl': string; + 'displayName': string; /** * * @type {string} - * @memberof LimitedWorld + * @memberof PastDisplayName */ - 'labsPublicationDate': string; + 'updated_at': string; +} +/** + * Info about the performance limits on a platform + * @export + * @interface PerformanceLimiterInfo + */ +export interface PerformanceLimiterInfo { /** * - * @type {string} - * @memberof LimitedWorld + * @type {boolean} + * @memberof PerformanceLimiterInfo */ - 'name': string; + 'allowed': boolean; /** - * + * Maximum amount of seats. -1 means no limit. * @type {number} - * @memberof LimitedWorld + * @memberof PerformanceLimiterInfo */ - 'occupants': number; + 'maxSeats': number; +} +/** + * Avatar Performance ratings. + * @export + * @enum {string} + */ + +export const PerformanceRatings = { + None: 'None', + Excellent: 'Excellent', + Good: 'Good', + Medium: 'Medium', + Poor: 'Poor', + VeryPoor: 'VeryPoor' +} as const; + +export type PerformanceRatings = typeof PerformanceRatings[keyof typeof PerformanceRatings]; + + +/** + * + * @export + * @interface Permission + */ +export interface Permission { /** * * @type {string} - * @memberof LimitedWorld - */ - 'organization': string; - /** - * - * @type {number} - * @memberof LimitedWorld + * @memberof Permission */ - 'popularity': number; + 'displayName'?: string; /** * * @type {string} - * @memberof LimitedWorld + * @memberof Permission */ - 'previewYoutubeId'?: string | null; + 'description'?: string; /** * * @type {string} - * @memberof LimitedWorld + * @memberof Permission */ - 'publicationDate': string; + 'id': string; /** * - * @type {ReleaseStatus} - * @memberof LimitedWorld - */ - 'releaseStatus': ReleaseStatus; - /** - * - * @type {Array} - * @memberof LimitedWorld + * @type {string} + * @memberof Permission */ - 'tags': Array; + 'ownerDisplayName': string; /** * * @type {string} - * @memberof LimitedWorld + * @memberof Permission */ - 'thumbnailImageUrl': string; + 'name': string; /** - * - * @type {Array} - * @memberof LimitedWorld + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof Permission */ - 'unityPackages': Array; + 'ownerId': string; /** * * @type {string} - * @memberof LimitedWorld + * @memberof Permission */ - 'updated_at': string; + 'type'?: string; /** * - * @type {Array} - * @memberof LimitedWorld + * @type {object} + * @memberof Permission */ - 'udonProducts'?: Array; + 'data'?: object; } /** - * - * @export - * @enum {string} - */ - -export const MIMEType = { - ImageJpeg: 'image/jpeg', - ImageJpg: 'image/jpg', - ImagePng: 'image/png', - ImageWebp: 'image/webp', - ImageGif: 'image/gif', - ImageBmp: 'image/bmp', - ImageSvgxml: 'image/svg+xml', - ImageTiff: 'image/tiff', - ApplicationXAvatar: 'application/x-avatar', - ApplicationXWorld: 'application/x-world', - ApplicationGzip: 'application/gzip', - ApplicationXRsyncSignature: 'application/x-rsync-signature', - ApplicationXRsyncDelta: 'application/x-rsync-delta', - ApplicationOctetStream: 'application/octet-stream' -} as const; - -export type MIMEType = typeof MIMEType[keyof typeof MIMEType]; - - -/** - * + * Build information for a platform * @export - * @interface ModelError + * @interface PlatformBuildInfo */ -export interface ModelError { +export interface PlatformBuildInfo { /** - * - * @type {Response} - * @memberof ModelError + * Minimum build number required for the platform + * @type {number} + * @memberof PlatformBuildInfo */ - 'error'?: Response; + 'minBuildNumber': number; + /** + * Redirection URL for updating the app + * @type {string} + * @memberof PlatformBuildInfo + */ + 'redirectionAddress': string; } /** * * @export - * @interface ModelFile + * @interface PlayerModeration */ -export interface ModelFile { +export interface PlayerModeration { /** * * @type {string} - * @memberof ModelFile + * @memberof PlayerModeration */ - 'extension': string; + 'created': string; /** * * @type {string} - * @memberof ModelFile + * @memberof PlayerModeration */ 'id': string; - /** - * - * @type {MIMEType} - * @memberof ModelFile - */ - 'mimeType': MIMEType; /** * * @type {string} - * @memberof ModelFile + * @memberof PlayerModeration */ - 'name': string; + 'sourceDisplayName': string; /** * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof ModelFile - */ - 'ownerId': string; - /** - * - * @type {Array} - * @memberof ModelFile + * @memberof PlayerModeration */ - 'tags': Array; + 'sourceUserId': string; /** - * - * @type {Set} - * @memberof ModelFile + * + * @type {string} + * @memberof PlayerModeration */ - 'versions': Set; -} -/** - * - * @export - * @interface ModerateUserRequest - */ -export interface ModerateUserRequest { + 'targetDisplayName': string; /** * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof ModerateUserRequest + * @memberof PlayerModeration */ - 'moderated': string; + 'targetUserId': string; /** * * @type {PlayerModerationType} - * @memberof ModerateUserRequest + * @memberof PlayerModeration */ 'type': PlayerModerationType; } /** * * @export - * @interface Notification + * @enum {string} + */ + +export const PlayerModerationType = { + Mute: 'mute', + Unmute: 'unmute', + Block: 'block', + Unblock: 'unblock', + InteractOn: 'interactOn', + InteractOff: 'interactOff' +} as const; + +export type PlayerModerationType = typeof PlayerModerationType[keyof typeof PlayerModerationType]; + + +/** + * + * @export + * @interface Product */ -export interface Notification { +export interface Product { /** * - * @type {string} - * @memberof Notification + * @type {boolean} + * @memberof Product */ - 'created_at': string; + 'archived': boolean; /** - * **NOTICE:** This is not a JSON object when received from the REST API, but it is when received from the Websocket API. When received from the REST API, this is a json **encoded** object, meaning you have to json-de-encode to get the NotificationDetail object depending on the NotificationType. + * * @type {string} - * @memberof Notification + * @memberof Product */ - 'details': string; + 'created': string; /** * * @type {string} - * @memberof Notification + * @memberof Product */ - 'id': string; + 'description': string; /** * * @type {string} - * @memberof Notification + * @memberof Product */ - 'message': string; + 'displayName': string; /** - * Not included in notification objects received from the Websocket API + * * @type {boolean} - * @memberof Notification + * @memberof Product */ - 'seen'?: boolean; + 'groupAccess'?: boolean; /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. - * @type {string} - * @memberof Notification + * + * @type {boolean} + * @memberof Product */ - 'receiverUserId'?: string; + 'groupAccessRemove'?: boolean; /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * * @type {string} - * @memberof Notification + * @memberof Product */ - 'senderUserId': string; + 'groupId'?: string; /** - * -| **DEPRECATED:** VRChat API no longer return usernames of other users. [See issue by Tupper for more information](https://github.com/pypy-vrc/VRCX/issues/429). + * * @type {string} - * @memberof Notification - * @deprecated + * @memberof Product */ - 'senderUsername'?: string; + 'groupRoleId'?: string; /** * - * @type {NotificationType} - * @memberof Notification + * @type {string} + * @memberof Product */ - 'type': NotificationType; -} -/** - * - * @export - * @interface NotificationDetailInvite - */ -export interface NotificationDetailInvite { + 'id': string; /** * * @type {string} - * @memberof NotificationDetailInvite + * @memberof Product */ - 'inviteMessage'?: string; + 'imageId': string; /** - * WorldID be \"offline\" on User profiles if you are not friends with that user. - * @type {string} - * @memberof NotificationDetailInvite + * + * @type {Array} + * @memberof Product */ - 'worldId': string; + 'parentListings': Array; + /** + * + * @type {ProductType} + * @memberof Product + */ + 'productType': ProductType; /** * * @type {string} - * @memberof NotificationDetailInvite + * @memberof Product */ - 'worldName': string; -} -/** - * - * @export - * @interface NotificationDetailInviteResponse - */ -export interface NotificationDetailInviteResponse { + 'sellerDisplayName': string; /** * * @type {string} - * @memberof NotificationDetailInviteResponse + * @memberof Product */ - 'inResponseTo': string; + 'sellerId': string; + /** + * + * @type {Array} + * @memberof Product + */ + 'tags': Array; /** * * @type {string} - * @memberof NotificationDetailInviteResponse + * @memberof Product */ - 'responseMessage': string; + 'updated': string | null; + /** + * + * @type {boolean} + * @memberof Product + */ + 'useForSubscriberList'?: boolean; } /** * * @export - * @interface NotificationDetailRequestInvite + * @interface ProductListing */ -export interface NotificationDetailRequestInvite { +export interface ProductListing { /** - * TODO: Does this still exist? - * @type {string} - * @memberof NotificationDetailRequestInvite + * + * @type {boolean} + * @memberof ProductListing */ - 'platform'?: string; + 'active': boolean; /** - * Used when using InviteMessage Slot. + * + * @type {boolean} + * @memberof ProductListing + */ + 'archived': boolean; + /** + * + * @type {boolean} + * @memberof ProductListing + */ + 'buyerRefundable': boolean; + /** + * * @type {string} - * @memberof NotificationDetailRequestInvite + * @memberof ProductListing */ - 'requestMessage'?: string; -} -/** - * - * @export - * @interface NotificationDetailRequestInviteResponse - */ -export interface NotificationDetailRequestInviteResponse { + 'created': string; /** * * @type {string} - * @memberof NotificationDetailRequestInviteResponse + * @memberof ProductListing */ - 'inResponseTo': string; + 'description': string; /** - * Used when using InviteMessage Slot. + * * @type {string} - * @memberof NotificationDetailRequestInviteResponse + * @memberof ProductListing */ - 'requestMessage'?: string; -} -/** - * - * @export - * @interface NotificationDetailVoteToKick - */ -export interface NotificationDetailVoteToKick { + 'displayName': string; /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * + * @type {number} + * @memberof ProductListing + */ + 'duration'?: number; + /** + * * @type {string} - * @memberof NotificationDetailVoteToKick + * @memberof ProductListing */ - 'initiatorUserId': string; + 'durationType'?: string; /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * * @type {string} - * @memberof NotificationDetailVoteToKick + * @memberof ProductListing */ - 'userToKickId': string; -} -/** - * - * @export - * @enum {string} - */ - -export const NotificationType = { - FriendRequest: 'friendRequest', - Invite: 'invite', - InviteResponse: 'inviteResponse', - Message: 'message', - RequestInvite: 'requestInvite', - RequestInviteResponse: 'requestInviteResponse', - Votetokick: 'votetokick' -} as const; - -export type NotificationType = typeof NotificationType[keyof typeof NotificationType]; - - -/** - * - * @export - * @enum {string} - */ - -export const OrderOption = { - Ascending: 'ascending', - Descending: 'descending' -} as const; - -export type OrderOption = typeof OrderOption[keyof typeof OrderOption]; - - -/** - * - * @export - * @interface PaginatedGroupAuditLogEntryList - */ -export interface PaginatedGroupAuditLogEntryList { + 'groupIcon': string; /** - * - * @type {Array} - * @memberof PaginatedGroupAuditLogEntryList + * + * @type {string} + * @memberof ProductListing */ - 'results'?: Array; + 'groupId': string; /** - * The total number of results that the query would return if there were no pagination. - * @type {number} - * @memberof PaginatedGroupAuditLogEntryList + * + * @type {string} + * @memberof ProductListing */ - 'totalCount'?: number; + 'groupName': string; /** - * Whether there are more results after this page. - * @type {boolean} - * @memberof PaginatedGroupAuditLogEntryList + * + * @type {Array} + * @memberof ProductListing */ - 'hasNext'?: boolean; -} -/** - * - * @export - * @interface PastDisplayName - */ -export interface PastDisplayName { + 'hydratedProducts'?: Array; /** * * @type {string} - * @memberof PastDisplayName + * @memberof ProductListing */ - 'displayName': string; + 'id': string; /** * * @type {string} - * @memberof PastDisplayName + * @memberof ProductListing */ - 'updated_at': string; -} -/** - * Info about the performance limits on a platform - * @export - * @interface PerformanceLimiterInfo - */ -export interface PerformanceLimiterInfo { + 'imageId': string; /** * * @type {boolean} - * @memberof PerformanceLimiterInfo + * @memberof ProductListing */ - 'allowed': boolean; + 'instant': boolean; /** - * Maximum amount of seats. -1 means no limit. - * @type {number} - * @memberof PerformanceLimiterInfo + * + * @type {ProductListingType} + * @memberof ProductListing */ - 'maxSeats': number; -} -/** - * Avatar Performance ratings. - * @export - * @enum {string} - */ - -export const PerformanceRatings = { - None: 'None', - Excellent: 'Excellent', - Good: 'Good', - Medium: 'Medium', - Poor: 'Poor', - VeryPoor: 'VeryPoor' -} as const; - -export type PerformanceRatings = typeof PerformanceRatings[keyof typeof PerformanceRatings]; - - -/** - * - * @export - * @interface Permission - */ -export interface Permission { + 'listingType': ProductListingType; + /** + * + * @type {Array} + * @memberof ProductListing + */ + 'listingVariants': Array; + /** + * + * @type {boolean} + * @memberof ProductListing + */ + 'permanent': boolean; /** * - * @type {string} - * @memberof Permission + * @type {number} + * @memberof ProductListing */ - 'displayName'?: string; + 'priceTokens': number; /** * - * @type {string} - * @memberof Permission + * @type {Array} + * @memberof ProductListing */ - 'description'?: string; + 'productIds': Array; /** * - * @type {string} - * @memberof Permission + * @type {ProductType} + * @memberof ProductListing */ - 'id': string; + 'productType': ProductType; /** * - * @type {string} - * @memberof Permission + * @type {Array} + * @memberof ProductListing */ - 'ownerDisplayName': string; + 'products': Array; /** * - * @type {string} - * @memberof Permission + * @type {boolean} + * @memberof ProductListing */ - 'name': string; + 'quantifiable'?: boolean; /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * + * @type {boolean} + * @memberof ProductListing + */ + 'recurrable': boolean; + /** + * + * @type {boolean} + * @memberof ProductListing + */ + 'refundable': boolean; + /** + * * @type {string} - * @memberof Permission + * @memberof ProductListing */ - 'ownerId': string; + 'sellerDisplayName': string; /** * * @type {string} - * @memberof Permission + * @memberof ProductListing */ - 'type'?: string; + 'sellerId': string; /** * - * @type {object} - * @memberof Permission + * @type {boolean} + * @memberof ProductListing */ - 'data'?: object; -} -/** - * Build information for a platform - * @export - * @interface PlatformBuildInfo - */ -export interface PlatformBuildInfo { + 'stackable': boolean; /** - * Minimum build number required for the platform - * @type {number} - * @memberof PlatformBuildInfo + * + * @type {Array} + * @memberof ProductListing */ - 'minBuildNumber': number; + 'storeIds': Array; /** - * Redirection URL for updating the app + * + * @type {Array} + * @memberof ProductListing + */ + 'tags': Array; + /** + * * @type {string} - * @memberof PlatformBuildInfo + * @memberof ProductListing */ - 'redirectionAddress': string; + 'updated': string | null; } /** * * @export - * @interface PlayerModeration + * @enum {string} */ -export interface PlayerModeration { + +export const ProductListingType = { + Subscription: 'subscription' +} as const; + +export type ProductListingType = typeof ProductListingType[keyof typeof ProductListingType]; + + +/** + * + * @export + * @interface ProductListingVariant + */ +export interface ProductListingVariant { /** * * @type {string} - * @memberof PlayerModeration + * @memberof ProductListingVariant */ - 'created': string; + 'effectiveFrom'?: string; /** * * @type {string} - * @memberof PlayerModeration + * @memberof ProductListingVariant */ - 'id': string; + 'listingVariantId': string; /** * - * @type {string} - * @memberof PlayerModeration - */ - 'sourceDisplayName': string; - /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. - * @type {string} - * @memberof PlayerModeration + * @type {boolean} + * @memberof ProductListingVariant */ - 'sourceUserId': string; + 'nonRefundable': boolean; /** * - * @type {string} - * @memberof PlayerModeration + * @type {number} + * @memberof ProductListingVariant */ - 'targetDisplayName': string; + 'quantity': number; /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. - * @type {string} - * @memberof PlayerModeration + * + * @type {boolean} + * @memberof ProductListingVariant */ - 'targetUserId': string; + 'sellerVariant': boolean; /** * - * @type {PlayerModerationType} - * @memberof PlayerModeration + * @type {number} + * @memberof ProductListingVariant */ - 'type': PlayerModerationType; + 'unitPriceTokens': number; } /** * @@ -6328,16 +7345,13 @@ export interface PlayerModeration { * @enum {string} */ -export const PlayerModerationType = { - Mute: 'mute', - Unmute: 'unmute', - Block: 'block', - Unblock: 'unblock', - InteractOn: 'interactOn', - InteractOff: 'interactOff' +export const ProductType = { + Listing: 'listing', + Role: 'role', + Udon: 'udon' } as const; -export type PlayerModerationType = typeof PlayerModerationType[keyof typeof PlayerModerationType]; +export type ProductType = typeof ProductType[keyof typeof ProductType]; /** @@ -6787,6 +7801,81 @@ export interface Success { */ 'success'?: Response; } +/** + * + * @export + * @interface TiliaStatus + */ +export interface TiliaStatus { + /** + * + * @type {boolean} + * @memberof TiliaStatus + */ + 'economyOnline': boolean; +} +/** + * + * @export + * @interface TiliaTOS + */ +export interface TiliaTOS { + /** + * + * @type {boolean} + * @memberof TiliaTOS + */ + 'signed_tos': boolean; +} +/** + * + * @export + * @interface TokenBundle + */ +export interface TokenBundle { + /** + * + * @type {string} + * @memberof TokenBundle + */ + 'id': string; + /** + * + * @type {string} + * @memberof TokenBundle + */ + 'steamItemId': string; + /** + * + * @type {string} + * @memberof TokenBundle + */ + 'oculusSku': string; + /** + * price of the bundle + * @type {number} + * @memberof TokenBundle + */ + 'amount': number; + /** + * + * @type {string} + * @memberof TokenBundle + */ + 'description': string; + /** + * number of tokens received + * @type {number} + * @memberof TokenBundle + */ + 'tokens': number; + /** + * direct url to image + * @type {string} + * @memberof TokenBundle + */ + 'imageUrl': string; +} /** * * @export @@ -7462,7 +8551,7 @@ export interface UpdateGroupRoleRequest { * @type {Array} * @memberof UpdateGroupRoleRequest */ - 'permissions'?: Array; + 'permissions'?: Array; /** * * @type {number} @@ -7470,6 +8559,36 @@ export interface UpdateGroupRoleRequest { */ 'order'?: number; } + +export const UpdateGroupRoleRequestPermissionsEnum = { + group_all: '\\*', + group_announcement_manage: 'group-announcement-manage', + group_audit_view: 'group-audit-view', + group_bans_manage: 'group-bans-manage', + group_data_manage: 'group-data-manage', + group_default_role_manage: 'group-default-role-manage', + group_galleries_manage: 'group-galleries-manage', + group_instance_age_gated_create: 'group-instance-age-gated-create', + group_instance_join: 'group-instance-join', + group_instance_manage: 'group-instance-manage', + group_instance_moderate: 'group-instance-moderate', + group_instance_open_create: 'group-instance-open-create', + group_instance_plus_create: 'group-instance-plus-create', + group_instance_plus_portal: 'group-instance-plus-portal', + group_instance_plus_portal_unlocked: 'group-instance-plus-portal-unlocked', + group_instance_public_create: 'group-instance-public-create', + group_instance_queue_priority: 'group-instance-queue-priority', + group_instance_restricted_create: 'group-instance-restricted-create', + group_invites_manage: 'group-invites-manage', + group_members_manage: 'group-members-manage', + group_members_remove: 'group-members-remove', + group_members_viewall: 'group-members-viewall', + group_roles_assign: 'group-roles-assign', + group_roles_manage: 'group-roles-manage' +} as const; + +export type UpdateGroupRoleRequestPermissionsEnum = typeof UpdateGroupRoleRequestPermissionsEnum[keyof typeof UpdateGroupRoleRequestPermissionsEnum]; + /** * * @export @@ -7483,6 +8602,25 @@ export interface UpdateInviteMessageRequest { */ 'message': string; } +/** + * + * @export + * @interface UpdateUserNoteRequest + */ +export interface UpdateUserNoteRequest { + /** + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof UpdateUserNoteRequest + */ + 'targetUserId': string; + /** + * + * @type {string} + * @memberof UpdateUserNoteRequest + */ + 'note': string; +} /** * * @export @@ -7649,10 +8787,10 @@ export interface UpdateWorldRequest { export interface User { /** * - * @type {string} + * @type {AgeVerificationStatus} * @memberof User */ - 'ageVerificationStatus': string; + 'ageVerificationStatus': AgeVerificationStatus; /** * * @type {boolean} @@ -7859,30 +8997,116 @@ export interface User { */ 'username'?: string; /** - * WorldID be \"offline\" on User profiles if you are not friends with that user. + * WorldID be \"offline\" on User profiles if you are not friends with that user. + * @type {string} + * @memberof User + */ + 'worldId'?: string; +} +/** + * Status object representing if a queried user by username or userId exists or not. This model is primarily used by the `/auth/exists` endpoint, which in turn is used during registration. Please see the documentation on that endpoint for more information on usage. + * @export + * @interface UserExists + */ +export interface UserExists { + /** + * Status if a user exist with that username or userId. + * @type {boolean} + * @memberof UserExists + */ + 'userExists': boolean; + /** + * Is the username valid? + * @type {boolean} + * @memberof UserExists + */ + 'nameOk'?: boolean; +} +/** + * + * @export + * @interface UserNote + */ +export interface UserNote { + /** + * + * @type {string} + * @memberof UserNote + */ + 'createdAt': string; + /** + * + * @type {string} + * @memberof UserNote + */ + 'id': string; + /** + * + * @type {string} + * @memberof UserNote + */ + 'note': string; + /** + * + * @type {UserNoteTargetUser} + * @memberof UserNote + */ + 'targetUser'?: UserNoteTargetUser; + /** + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof UserNote + */ + 'targetUserId': string; + /** + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof UserNote + */ + 'userId': string; +} +/** + * + * @export + * @interface UserNoteTargetUser + */ +export interface UserNoteTargetUser { + /** + * + * @type {Array} + * @memberof UserNoteTargetUser + */ + 'currentAvatarTags'?: Array; + /** + * When profilePicOverride is not empty, use it instead. + * @type {string} + * @memberof UserNoteTargetUser + */ + 'currentAvatarThumbnailImageUrl'?: string; + /** + * + * @type {string} + * @memberof UserNoteTargetUser + */ + 'displayName'?: string; + /** + * * @type {string} - * @memberof User + * @memberof UserNoteTargetUser */ - 'worldId'?: string; -} -/** - * Status object representing if a queried user by username or userId exists or not. This model is primarily used by the `/auth/exists` endpoint, which in turn is used during registration. Please see the documentation on that endpoint for more information on usage. - * @export - * @interface UserExists - */ -export interface UserExists { + 'id'?: string; /** - * Status if a user exist with that username or userId. - * @type {boolean} - * @memberof UserExists + * + * @type {string} + * @memberof UserNoteTargetUser */ - 'userExists': boolean; + 'profilePicOverride'?: string | null; /** - * Is the username valid? - * @type {boolean} - * @memberof UserExists + * + * @type {string} + * @memberof UserNoteTargetUser */ - 'nameOk'?: boolean; + 'userIcon'?: string; } /** * * \"online\" User is online in VRChat * \"active\" User is online, but not in VRChat * \"offline\" User is offline Always offline when returned through `getCurrentUser` (/auth/user). @@ -8018,6 +9242,12 @@ export interface UserSubscription { * @memberof UserSubscription */ 'isGift': boolean; + /** + * + * @type {boolean} + * @memberof UserSubscription + */ + 'isBulkGift': boolean; } /** * @@ -9727,47 +10957,290 @@ export class AvatarsApi extends BaseAPI { return AvatarsApiFp(this.configuration).selectAvatar(avatarId, options).then((request) => request(this.axios, this.basePath)); } - /** - * Switches into that avatar as your fallback avatar. - * @summary Select Fallback Avatar - * @param {string} avatarId Must be a valid avatar ID. - * @param {*} [options] Override http request option. - * @throws {RequiredError} - * @memberof AvatarsApi - */ - public selectFallbackAvatar(avatarId: string, options?: AxiosRequestConfig) { - return AvatarsApiFp(this.configuration).selectFallbackAvatar(avatarId, options).then((request) => request(this.axios, this.basePath)); - } + /** + * Switches into that avatar as your fallback avatar. + * @summary Select Fallback Avatar + * @param {string} avatarId Must be a valid avatar ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AvatarsApi + */ + public selectFallbackAvatar(avatarId: string, options?: AxiosRequestConfig) { + return AvatarsApiFp(this.configuration).selectFallbackAvatar(avatarId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Update information about a specific avatar. + * @summary Update Avatar + * @param {string} avatarId Must be a valid avatar ID. + * @param {UpdateAvatarRequest} [updateAvatarRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AvatarsApi + */ + public updateAvatar(avatarId: string, updateAvatarRequest?: UpdateAvatarRequest, options?: AxiosRequestConfig) { + return AvatarsApiFp(this.configuration).updateAvatar(avatarId, updateAvatarRequest, options).then((request) => request(this.axios, this.basePath)); + } +} + + +/** + * EconomyApi - axios parameter creator + * @export + */ +export const EconomyApiAxiosParamCreator = function (configuration?: Configuration) { + return { + /** + * Gets the balance of a user + * @summary Get Balance + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getBalance: async (userId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'userId' is not null or undefined + assertParamExists('getBalance', 'userId', userId) + const localVarPath = `/user/{userId}/balance` + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get a list of all current user subscriptions. + * @summary Get Current Subscriptions + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getCurrentSubscriptions: async (options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/auth/user/subscription`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get a single License Group by given ID. + * @summary Get License Group + * @param {string} licenseGroupId Must be a valid license group ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getLicenseGroup: async (licenseGroupId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'licenseGroupId' is not null or undefined + assertParamExists('getLicenseGroup', 'licenseGroupId', licenseGroupId) + const localVarPath = `/licenseGroups/{licenseGroupId}` + .replace(`{${"licenseGroupId"}}`, encodeURIComponent(String(licenseGroupId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Gets a product listing + * @summary Get Product Listing + * @param {string} productId Must be a valid product ID. + * @param {boolean} [hydrate] Populates some fields and changes types of others for certain objects. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getProductListing: async (productId: string, hydrate?: boolean, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'productId' is not null or undefined + assertParamExists('getProductListing', 'productId', productId) + const localVarPath = `/listing/{productId}` + .replace(`{${"productId"}}`, encodeURIComponent(String(productId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + if (hydrate !== undefined) { + localVarQueryParameter['hydrate'] = hydrate; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Gets the product listings of a given user + * @summary Get User Product Listings + * @param {string} userId Must be a valid user ID. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {boolean} [hydrate] Populates some fields and changes types of others for certain objects. + * @param {string} [groupId] Must be a valid group ID. + * @param {boolean} [active] Filter for users\' listings. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getProductListings: async (userId: string, n?: number, offset?: number, hydrate?: boolean, groupId?: string, active?: boolean, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'userId' is not null or undefined + assertParamExists('getProductListings', 'userId', userId) + const localVarPath = `/user/{userId}/listings` + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + if (n !== undefined) { + localVarQueryParameter['n'] = n; + } + + if (offset !== undefined) { + localVarQueryParameter['offset'] = offset; + } + + if (hydrate !== undefined) { + localVarQueryParameter['hydrate'] = hydrate; + } + + if (groupId !== undefined) { + localVarQueryParameter['groupId'] = groupId; + } + + if (active !== undefined) { + localVarQueryParameter['active'] = active; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get a single Steam transactions by ID. This returns the exact same information as `getSteamTransactions`, so no point in using this endpoint. + * @summary Get Steam Transaction + * @param {string} transactionId Must be a valid transaction ID. + * @param {*} [options] Override http request option. + * @deprecated + * @throws {RequiredError} + */ + getSteamTransaction: async (transactionId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'transactionId' is not null or undefined + assertParamExists('getSteamTransaction', 'transactionId', transactionId) + const localVarPath = `/Steam/transactions/{transactionId}` + .replace(`{${"transactionId"}}`, encodeURIComponent(String(transactionId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; - /** - * Update information about a specific avatar. - * @summary Update Avatar - * @param {string} avatarId Must be a valid avatar ID. - * @param {UpdateAvatarRequest} [updateAvatarRequest] - * @param {*} [options] Override http request option. - * @throws {RequiredError} - * @memberof AvatarsApi - */ - public updateAvatar(avatarId: string, updateAvatarRequest?: UpdateAvatarRequest, options?: AxiosRequestConfig) { - return AvatarsApiFp(this.configuration).updateAvatar(avatarId, updateAvatarRequest, options).then((request) => request(this.axios, this.basePath)); - } -} + // authentication authCookie required -/** - * EconomyApi - axios parameter creator - * @export - */ -export const EconomyApiAxiosParamCreator = function (configuration?: Configuration) { - return { + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, /** - * Get a list of all current user subscriptions. - * @summary Get Current Subscriptions + * Get all own Steam transactions. + * @summary List Steam Transactions * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getCurrentSubscriptions: async (options: AxiosRequestConfig = {}): Promise => { - const localVarPath = `/auth/user/subscription`; + getSteamTransactions: async (options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/Steam/transactions`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -9793,17 +11266,13 @@ export const EconomyApiAxiosParamCreator = function (configuration?: Configurati }; }, /** - * Get a single License Group by given ID. - * @summary Get License Group - * @param {string} licenseGroupId Must be a valid license group ID. + * List all existing Subscriptions. For example, \"vrchatplus-monthly\" and \"vrchatplus-yearly\". + * @summary List Subscriptions * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getLicenseGroup: async (licenseGroupId: string, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'licenseGroupId' is not null or undefined - assertParamExists('getLicenseGroup', 'licenseGroupId', licenseGroupId) - const localVarPath = `/licenseGroups/{licenseGroupId}` - .replace(`{${"licenseGroupId"}}`, encodeURIComponent(String(licenseGroupId))); + getSubscriptions: async (options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/subscriptions`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -9829,18 +11298,13 @@ export const EconomyApiAxiosParamCreator = function (configuration?: Configurati }; }, /** - * Get a single Steam transactions by ID. This returns the exact same information as `getSteamTransactions`, so no point in using this endpoint. - * @summary Get Steam Transaction - * @param {string} transactionId Must be a valid transaction ID. + * Gets the status of Tilia integration + * @summary Get Tilia Status * @param {*} [options] Override http request option. - * @deprecated * @throws {RequiredError} */ - getSteamTransaction: async (transactionId: string, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'transactionId' is not null or undefined - assertParamExists('getSteamTransaction', 'transactionId', transactionId) - const localVarPath = `/Steam/transactions/{transactionId}` - .replace(`{${"transactionId"}}`, encodeURIComponent(String(transactionId))); + getTiliaStatus: async (options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/tilia/status`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -9866,13 +11330,17 @@ export const EconomyApiAxiosParamCreator = function (configuration?: Configurati }; }, /** - * Get all own Steam transactions. - * @summary List Steam Transactions + * Gets the status of the agreement of a user to the Tilia TOS + * @summary Get Tilia TOS Agreement Status + * @param {string} userId Must be a valid user ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getSteamTransactions: async (options: AxiosRequestConfig = {}): Promise => { - const localVarPath = `/Steam/transactions`; + getTiliaTos: async (userId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'userId' is not null or undefined + assertParamExists('getTiliaTos', 'userId', userId) + const localVarPath = `/user/{userId}/tilia/tos` + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -9898,13 +11366,13 @@ export const EconomyApiAxiosParamCreator = function (configuration?: Configurati }; }, /** - * List all existing Subscriptions. For example, \"vrchatplus-monthly\" and \"vrchatplus-yearly\". - * @summary List Subscriptions + * Gets the list of token bundles + * @summary List Token Bundles * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getSubscriptions: async (options: AxiosRequestConfig = {}): Promise => { - const localVarPath = `/subscriptions`; + getTokenBundles: async (options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/tokenBundles`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -9939,6 +11407,17 @@ export const EconomyApiAxiosParamCreator = function (configuration?: Configurati export const EconomyApiFp = function(configuration?: Configuration) { const localVarAxiosParamCreator = EconomyApiAxiosParamCreator(configuration) return { + /** + * Gets the balance of a user + * @summary Get Balance + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getBalance(userId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getBalance(userId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** * Get a list of all current user subscriptions. * @summary Get Current Subscriptions @@ -9960,6 +11439,34 @@ export const EconomyApiFp = function(configuration?: Configuration) { const localVarAxiosArgs = await localVarAxiosParamCreator.getLicenseGroup(licenseGroupId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, + /** + * Gets a product listing + * @summary Get Product Listing + * @param {string} productId Must be a valid product ID. + * @param {boolean} [hydrate] Populates some fields and changes types of others for certain objects. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getProductListing(productId: string, hydrate?: boolean, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getProductListing(productId, hydrate, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Gets the product listings of a given user + * @summary Get User Product Listings + * @param {string} userId Must be a valid user ID. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {boolean} [hydrate] Populates some fields and changes types of others for certain objects. + * @param {string} [groupId] Must be a valid group ID. + * @param {boolean} [active] Filter for users\' listings. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getProductListings(userId: string, n?: number, offset?: number, hydrate?: boolean, groupId?: string, active?: boolean, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getProductListings(userId, n, offset, hydrate, groupId, active, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** * Get a single Steam transactions by ID. This returns the exact same information as `getSteamTransactions`, so no point in using this endpoint. * @summary Get Steam Transaction @@ -9992,6 +11499,37 @@ export const EconomyApiFp = function(configuration?: Configuration) { const localVarAxiosArgs = await localVarAxiosParamCreator.getSubscriptions(options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, + /** + * Gets the status of Tilia integration + * @summary Get Tilia Status + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getTiliaStatus(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getTiliaStatus(options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Gets the status of the agreement of a user to the Tilia TOS + * @summary Get Tilia TOS Agreement Status + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getTiliaTos(userId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getTiliaTos(userId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Gets the list of token bundles + * @summary List Token Bundles + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getTokenBundles(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getTokenBundles(options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, } }; @@ -10002,6 +11540,16 @@ export const EconomyApiFp = function(configuration?: Configuration) { export const EconomyApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { const localVarFp = EconomyApiFp(configuration) return { + /** + * Gets the balance of a user + * @summary Get Balance + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getBalance(userId: string, options?: any): AxiosPromise { + return localVarFp.getBalance(userId, options).then((request) => request(axios, basePath)); + }, /** * Get a list of all current user subscriptions. * @summary Get Current Subscriptions @@ -10021,6 +11569,32 @@ export const EconomyApiFactory = function (configuration?: Configuration, basePa getLicenseGroup(licenseGroupId: string, options?: any): AxiosPromise { return localVarFp.getLicenseGroup(licenseGroupId, options).then((request) => request(axios, basePath)); }, + /** + * Gets a product listing + * @summary Get Product Listing + * @param {string} productId Must be a valid product ID. + * @param {boolean} [hydrate] Populates some fields and changes types of others for certain objects. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getProductListing(productId: string, hydrate?: boolean, options?: any): AxiosPromise { + return localVarFp.getProductListing(productId, hydrate, options).then((request) => request(axios, basePath)); + }, + /** + * Gets the product listings of a given user + * @summary Get User Product Listings + * @param {string} userId Must be a valid user ID. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {boolean} [hydrate] Populates some fields and changes types of others for certain objects. + * @param {string} [groupId] Must be a valid group ID. + * @param {boolean} [active] Filter for users\' listings. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getProductListings(userId: string, n?: number, offset?: number, hydrate?: boolean, groupId?: string, active?: boolean, options?: any): AxiosPromise> { + return localVarFp.getProductListings(userId, n, offset, hydrate, groupId, active, options).then((request) => request(axios, basePath)); + }, /** * Get a single Steam transactions by ID. This returns the exact same information as `getSteamTransactions`, so no point in using this endpoint. * @summary Get Steam Transaction @@ -10050,6 +11624,34 @@ export const EconomyApiFactory = function (configuration?: Configuration, basePa getSubscriptions(options?: any): AxiosPromise> { return localVarFp.getSubscriptions(options).then((request) => request(axios, basePath)); }, + /** + * Gets the status of Tilia integration + * @summary Get Tilia Status + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getTiliaStatus(options?: any): AxiosPromise { + return localVarFp.getTiliaStatus(options).then((request) => request(axios, basePath)); + }, + /** + * Gets the status of the agreement of a user to the Tilia TOS + * @summary Get Tilia TOS Agreement Status + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getTiliaTos(userId: string, options?: any): AxiosPromise { + return localVarFp.getTiliaTos(userId, options).then((request) => request(axios, basePath)); + }, + /** + * Gets the list of token bundles + * @summary List Token Bundles + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getTokenBundles(options?: any): AxiosPromise> { + return localVarFp.getTokenBundles(options).then((request) => request(axios, basePath)); + }, }; }; @@ -10060,6 +11662,18 @@ export const EconomyApiFactory = function (configuration?: Configuration, basePa * @extends {BaseAPI} */ export class EconomyApi extends BaseAPI { + /** + * Gets the balance of a user + * @summary Get Balance + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof EconomyApi + */ + public getBalance(userId: string, options?: AxiosRequestConfig) { + return EconomyApiFp(this.configuration).getBalance(userId, options).then((request) => request(this.axios, this.basePath)); + } + /** * Get a list of all current user subscriptions. * @summary Get Current Subscriptions @@ -10083,6 +11697,36 @@ export class EconomyApi extends BaseAPI { return EconomyApiFp(this.configuration).getLicenseGroup(licenseGroupId, options).then((request) => request(this.axios, this.basePath)); } + /** + * Gets a product listing + * @summary Get Product Listing + * @param {string} productId Must be a valid product ID. + * @param {boolean} [hydrate] Populates some fields and changes types of others for certain objects. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof EconomyApi + */ + public getProductListing(productId: string, hydrate?: boolean, options?: AxiosRequestConfig) { + return EconomyApiFp(this.configuration).getProductListing(productId, hydrate, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Gets the product listings of a given user + * @summary Get User Product Listings + * @param {string} userId Must be a valid user ID. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {boolean} [hydrate] Populates some fields and changes types of others for certain objects. + * @param {string} [groupId] Must be a valid group ID. + * @param {boolean} [active] Filter for users\' listings. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof EconomyApi + */ + public getProductListings(userId: string, n?: number, offset?: number, hydrate?: boolean, groupId?: string, active?: boolean, options?: AxiosRequestConfig) { + return EconomyApiFp(this.configuration).getProductListings(userId, n, offset, hydrate, groupId, active, options).then((request) => request(this.axios, this.basePath)); + } + /** * Get a single Steam transactions by ID. This returns the exact same information as `getSteamTransactions`, so no point in using this endpoint. * @summary Get Steam Transaction @@ -10117,6 +11761,40 @@ export class EconomyApi extends BaseAPI { public getSubscriptions(options?: AxiosRequestConfig) { return EconomyApiFp(this.configuration).getSubscriptions(options).then((request) => request(this.axios, this.basePath)); } + + /** + * Gets the status of Tilia integration + * @summary Get Tilia Status + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof EconomyApi + */ + public getTiliaStatus(options?: AxiosRequestConfig) { + return EconomyApiFp(this.configuration).getTiliaStatus(options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Gets the status of the agreement of a user to the Tilia TOS + * @summary Get Tilia TOS Agreement Status + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof EconomyApi + */ + public getTiliaTos(userId: string, options?: AxiosRequestConfig) { + return EconomyApiFp(this.configuration).getTiliaTos(userId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Gets the list of token bundles + * @summary List Token Bundles + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof EconomyApi + */ + public getTokenBundles(options?: AxiosRequestConfig) { + return EconomyApiFp(this.configuration).getTokenBundles(options).then((request) => request(this.axios, this.basePath)); + } } @@ -10324,6 +12002,38 @@ export const FavoritesApiAxiosParamCreator = function (configuration?: Configura + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Return information about a specific Favorite. + * @summary Get Favorite Limits + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFavoriteLimits: async (options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/auth/user/favoritelimits`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -10540,6 +12250,16 @@ export const FavoritesApiFp = function(configuration?: Configuration) { const localVarAxiosArgs = await localVarAxiosParamCreator.getFavoriteGroups(n, offset, ownerId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, + /** + * Return information about a specific Favorite. + * @summary Get Favorite Limits + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getFavoriteLimits(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getFavoriteLimits(options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** * Returns a list of favorites. * @summary List Favorites @@ -10642,8 +12362,17 @@ export const FavoritesApiFactory = function (configuration?: Configuration, base * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFavoriteGroups(n?: number, offset?: number, ownerId?: string, options?: any): AxiosPromise> { - return localVarFp.getFavoriteGroups(n, offset, ownerId, options).then((request) => request(axios, basePath)); + getFavoriteGroups(n?: number, offset?: number, ownerId?: string, options?: any): AxiosPromise> { + return localVarFp.getFavoriteGroups(n, offset, ownerId, options).then((request) => request(axios, basePath)); + }, + /** + * Return information about a specific Favorite. + * @summary Get Favorite Limits + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFavoriteLimits(options?: any): AxiosPromise { + return localVarFp.getFavoriteLimits(options).then((request) => request(axios, basePath)); }, /** * Returns a list of favorites. @@ -10757,6 +12486,17 @@ export class FavoritesApi extends BaseAPI { return FavoritesApiFp(this.configuration).getFavoriteGroups(n, offset, ownerId, options).then((request) => request(this.axios, this.basePath)); } + /** + * Return information about a specific Favorite. + * @summary Get Favorite Limits + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FavoritesApi + */ + public getFavoriteLimits(options?: AxiosRequestConfig) { + return FavoritesApiFp(this.configuration).getFavoriteLimits(options).then((request) => request(this.axios, this.basePath)); + } + /** * Returns a list of favorites. * @summary List Favorites @@ -11074,6 +12814,126 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get the performance analysis for the uploaded assets of an avatar + * @summary Get File Version Analysis + * @param {string} fileId Must be a valid file ID. + * @param {number} versionId Version ID of the asset. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFileAnalysis: async (fileId: string, versionId: number, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'fileId' is not null or undefined + assertParamExists('getFileAnalysis', 'fileId', fileId) + // verify required parameter 'versionId' is not null or undefined + assertParamExists('getFileAnalysis', 'versionId', versionId) + const localVarPath = `/analysis/{fileId}/{versionId}` + .replace(`{${"fileId"}}`, encodeURIComponent(String(fileId))) + .replace(`{${"versionId"}}`, encodeURIComponent(String(versionId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get the security performance analysis for the uploaded assets of an avatar + * @summary Get File Version Analysis Security + * @param {string} fileId Must be a valid file ID. + * @param {number} versionId Version ID of the asset. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFileAnalysisSecurity: async (fileId: string, versionId: number, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'fileId' is not null or undefined + assertParamExists('getFileAnalysisSecurity', 'fileId', fileId) + // verify required parameter 'versionId' is not null or undefined + assertParamExists('getFileAnalysisSecurity', 'versionId', versionId) + const localVarPath = `/analysis/{fileId}/{versionId}/security` + .replace(`{${"fileId"}}`, encodeURIComponent(String(fileId))) + .replace(`{${"versionId"}}`, encodeURIComponent(String(versionId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get the standard performance analysis for the uploaded assets of an avatar + * @summary Get File Version Analysis Standard + * @param {string} fileId Must be a valid file ID. + * @param {number} versionId Version ID of the asset. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFileAnalysisStandard: async (fileId: string, versionId: number, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'fileId' is not null or undefined + assertParamExists('getFileAnalysisStandard', 'fileId', fileId) + // verify required parameter 'versionId' is not null or undefined + assertParamExists('getFileAnalysisStandard', 'versionId', versionId) + const localVarPath = `/analysis/{fileId}/{versionId}/standard` + .replace(`{${"fileId"}}`, encodeURIComponent(String(fileId))) + .replace(`{${"versionId"}}`, encodeURIComponent(String(versionId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -11321,6 +13181,42 @@ export const FilesApiFp = function(configuration?: Configuration) { const localVarAxiosArgs = await localVarAxiosParamCreator.getFile(fileId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, + /** + * Get the performance analysis for the uploaded assets of an avatar + * @summary Get File Version Analysis + * @param {string} fileId Must be a valid file ID. + * @param {number} versionId Version ID of the asset. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getFileAnalysis(fileId: string, versionId: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getFileAnalysis(fileId, versionId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Get the security performance analysis for the uploaded assets of an avatar + * @summary Get File Version Analysis Security + * @param {string} fileId Must be a valid file ID. + * @param {number} versionId Version ID of the asset. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getFileAnalysisSecurity(fileId: string, versionId: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getFileAnalysisSecurity(fileId, versionId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Get the standard performance analysis for the uploaded assets of an avatar + * @summary Get File Version Analysis Standard + * @param {string} fileId Must be a valid file ID. + * @param {number} versionId Version ID of the asset. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getFileAnalysisStandard(fileId: string, versionId: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getFileAnalysisStandard(fileId, versionId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** * Retrieves the upload status for file upload. Can currently only be accessed when `status` is `waiting`. Trying to access it on a file version already uploaded currently times out. * @summary Check FileData Upload Status @@ -11448,6 +13344,39 @@ export const FilesApiFactory = function (configuration?: Configuration, basePath getFile(fileId: string, options?: any): AxiosPromise { return localVarFp.getFile(fileId, options).then((request) => request(axios, basePath)); }, + /** + * Get the performance analysis for the uploaded assets of an avatar + * @summary Get File Version Analysis + * @param {string} fileId Must be a valid file ID. + * @param {number} versionId Version ID of the asset. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFileAnalysis(fileId: string, versionId: number, options?: any): AxiosPromise { + return localVarFp.getFileAnalysis(fileId, versionId, options).then((request) => request(axios, basePath)); + }, + /** + * Get the security performance analysis for the uploaded assets of an avatar + * @summary Get File Version Analysis Security + * @param {string} fileId Must be a valid file ID. + * @param {number} versionId Version ID of the asset. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFileAnalysisSecurity(fileId: string, versionId: number, options?: any): AxiosPromise { + return localVarFp.getFileAnalysisSecurity(fileId, versionId, options).then((request) => request(axios, basePath)); + }, + /** + * Get the standard performance analysis for the uploaded assets of an avatar + * @summary Get File Version Analysis Standard + * @param {string} fileId Must be a valid file ID. + * @param {number} versionId Version ID of the asset. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFileAnalysisStandard(fileId: string, versionId: number, options?: any): AxiosPromise { + return localVarFp.getFileAnalysisStandard(fileId, versionId, options).then((request) => request(axios, basePath)); + }, /** * Retrieves the upload status for file upload. Can currently only be accessed when `status` is `waiting`. Trying to access it on a file version already uploaded currently times out. * @summary Check FileData Upload Status @@ -11586,6 +13515,45 @@ export class FilesApi extends BaseAPI { return FilesApiFp(this.configuration).getFile(fileId, options).then((request) => request(this.axios, this.basePath)); } + /** + * Get the performance analysis for the uploaded assets of an avatar + * @summary Get File Version Analysis + * @param {string} fileId Must be a valid file ID. + * @param {number} versionId Version ID of the asset. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FilesApi + */ + public getFileAnalysis(fileId: string, versionId: number, options?: AxiosRequestConfig) { + return FilesApiFp(this.configuration).getFileAnalysis(fileId, versionId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Get the security performance analysis for the uploaded assets of an avatar + * @summary Get File Version Analysis Security + * @param {string} fileId Must be a valid file ID. + * @param {number} versionId Version ID of the asset. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FilesApi + */ + public getFileAnalysisSecurity(fileId: string, versionId: number, options?: AxiosRequestConfig) { + return FilesApiFp(this.configuration).getFileAnalysisSecurity(fileId, versionId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Get the standard performance analysis for the uploaded assets of an avatar + * @summary Get File Version Analysis Standard + * @param {string} fileId Must be a valid file ID. + * @param {number} versionId Version ID of the asset. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FilesApi + */ + public getFileAnalysisStandard(fileId: string, versionId: number, options?: AxiosRequestConfig) { + return FilesApiFp(this.configuration).getFileAnalysisStandard(fileId, versionId, options).then((request) => request(this.axios, this.basePath)); + } + /** * Retrieves the upload status for file upload. Can currently only be accessed when `status` is `waiting`. Trying to access it on a file version already uploaded currently times out. * @summary Check FileData Upload Status @@ -12287,7 +14255,7 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio }; }, /** - * Creates an Announcement for a Group. + * Creates an Announcement for a Group. Warning: This will also remove all announcements. To make proper announcements, use the posts endpoint instead * @summary Create Group Announcement * @param {string} groupId Must be a valid group ID. * @param {CreateGroupAnnouncementRequest} createGroupAnnouncementRequest @@ -12815,10 +14783,13 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {string} [startDate] The start date of the search range. * @param {string} [endDate] The end date of the search range. + * @param {string} [actorIds] The comma-separated actor ids to search for. + * @param {string} [eventTypes] The comma-separated event types to search for. + * @param {string} [targetIds] The comma-separated target ids to search for. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getGroupAuditLogs: async (groupId: string, n?: number, offset?: number, startDate?: string, endDate?: string, options: AxiosRequestConfig = {}): Promise => { + getGroupAuditLogs: async (groupId: string, n?: number, offset?: number, startDate?: string, endDate?: string, actorIds?: string, eventTypes?: string, targetIds?: string, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'groupId' is not null or undefined assertParamExists('getGroupAuditLogs', 'groupId', groupId) const localVarPath = `/groups/{groupId}/auditLogs` @@ -12856,6 +14827,18 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio endDate; } + if (actorIds !== undefined) { + localVarQueryParameter['actorIds'] = actorIds; + } + + if (eventTypes !== undefined) { + localVarQueryParameter['eventTypes'] = eventTypes; + } + + if (targetIds !== undefined) { + localVarQueryParameter['targetIds'] = targetIds; + } + setSearchParams(localVarUrlObj, localVarQueryParameter); @@ -13908,7 +15891,7 @@ export const GroupsApiFp = function(configuration?: Configuration) { return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Creates an Announcement for a Group. + * Creates an Announcement for a Group. Warning: This will also remove all announcements. To make proper announcements, use the posts endpoint instead * @summary Create Group Announcement * @param {string} groupId Must be a valid group ID. * @param {CreateGroupAnnouncementRequest} createGroupAnnouncementRequest @@ -14069,11 +16052,14 @@ export const GroupsApiFp = function(configuration?: Configuration) { * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {string} [startDate] The start date of the search range. * @param {string} [endDate] The end date of the search range. + * @param {string} [actorIds] The comma-separated actor ids to search for. + * @param {string} [eventTypes] The comma-separated event types to search for. + * @param {string} [targetIds] The comma-separated target ids to search for. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getGroupAuditLogs(groupId: string, n?: number, offset?: number, startDate?: string, endDate?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getGroupAuditLogs(groupId, n, offset, startDate, endDate, options); + async getGroupAuditLogs(groupId: string, n?: number, offset?: number, startDate?: string, endDate?: string, actorIds?: string, eventTypes?: string, targetIds?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getGroupAuditLogs(groupId, n, offset, startDate, endDate, actorIds, eventTypes, targetIds, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** @@ -14431,7 +16417,7 @@ export const GroupsApiFactory = function (configuration?: Configuration, basePat return localVarFp.createGroup(createGroupRequest, options).then((request) => request(axios, basePath)); }, /** - * Creates an Announcement for a Group. + * Creates an Announcement for a Group. Warning: This will also remove all announcements. To make proper announcements, use the posts endpoint instead * @summary Create Group Announcement * @param {string} groupId Must be a valid group ID. * @param {CreateGroupAnnouncementRequest} createGroupAnnouncementRequest @@ -14579,11 +16565,14 @@ export const GroupsApiFactory = function (configuration?: Configuration, basePat * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {string} [startDate] The start date of the search range. * @param {string} [endDate] The end date of the search range. + * @param {string} [actorIds] The comma-separated actor ids to search for. + * @param {string} [eventTypes] The comma-separated event types to search for. + * @param {string} [targetIds] The comma-separated target ids to search for. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getGroupAuditLogs(groupId: string, n?: number, offset?: number, startDate?: string, endDate?: string, options?: any): AxiosPromise { - return localVarFp.getGroupAuditLogs(groupId, n, offset, startDate, endDate, options).then((request) => request(axios, basePath)); + getGroupAuditLogs(groupId: string, n?: number, offset?: number, startDate?: string, endDate?: string, actorIds?: string, eventTypes?: string, targetIds?: string, options?: any): AxiosPromise { + return localVarFp.getGroupAuditLogs(groupId, n, offset, startDate, endDate, actorIds, eventTypes, targetIds, options).then((request) => request(axios, basePath)); }, /** * Returns a list of banned users for a Group. @@ -14930,7 +16919,7 @@ export class GroupsApi extends BaseAPI { } /** - * Creates an Announcement for a Group. + * Creates an Announcement for a Group. Warning: This will also remove all announcements. To make proper announcements, use the posts endpoint instead * @summary Create Group Announcement * @param {string} groupId Must be a valid group ID. * @param {CreateGroupAnnouncementRequest} createGroupAnnouncementRequest @@ -15104,12 +17093,15 @@ export class GroupsApi extends BaseAPI { * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {string} [startDate] The start date of the search range. * @param {string} [endDate] The end date of the search range. + * @param {string} [actorIds] The comma-separated actor ids to search for. + * @param {string} [eventTypes] The comma-separated event types to search for. + * @param {string} [targetIds] The comma-separated target ids to search for. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof GroupsApi */ - public getGroupAuditLogs(groupId: string, n?: number, offset?: number, startDate?: string, endDate?: string, options?: AxiosRequestConfig) { - return GroupsApiFp(this.configuration).getGroupAuditLogs(groupId, n, offset, startDate, endDate, options).then((request) => request(this.axios, this.basePath)); + public getGroupAuditLogs(groupId: string, n?: number, offset?: number, startDate?: string, endDate?: string, actorIds?: string, eventTypes?: string, targetIds?: string, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).getGroupAuditLogs(groupId, n, offset, startDate, endDate, actorIds, eventTypes, targetIds, options).then((request) => request(this.axios, this.basePath)); } /** @@ -18247,23 +20239,100 @@ export class SystemApi extends BaseAPI { } -/** - * UsersApi - axios parameter creator - * @export - */ -export const UsersApiAxiosParamCreator = function (configuration?: Configuration) { - return { +/** + * UsersApi - axios parameter creator + * @export + */ +export const UsersApiAxiosParamCreator = function (configuration?: Configuration) { + return { + /** + * Get public user information about a specific user using their ID. + * @summary Get User by ID + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getUser: async (userId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'userId' is not null or undefined + assertParamExists('getUser', 'userId', userId) + const localVarPath = `/users/{userId}` + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * ~~Get public user information about a specific user using their name.~~ **DEPRECATED:** VRChat API no longer return usernames of other users. [See issue by Tupper for more information](https://github.com/pypy-vrc/VRCX/issues/429). This endpoint now require Admin Credentials. + * @summary Get User by Username + * @param {string} username Username of the user + * @param {*} [options] Override http request option. + * @deprecated + * @throws {RequiredError} + */ + getUserByName: async (username: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'username' is not null or undefined + assertParamExists('getUserByName', 'username', username) + const localVarPath = `/users/{username}/name` + .replace(`{${"username"}}`, encodeURIComponent(String(username))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, /** - * Get public user information about a specific user using their ID. - * @summary Get User by ID + * Get user\'s submitted feedback + * @summary Get User Feedback * @param {string} userId Must be a valid user ID. + * @param {boolean} [contentId] Filter for users\' previously submitted feedback, e.g., a groupId, useeId, avatarId, etc. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {*} [options] Override http request option. + * @deprecated * @throws {RequiredError} */ - getUser: async (userId: string, options: AxiosRequestConfig = {}): Promise => { + getUserFeedback: async (userId: string, contentId?: boolean, n?: number, offset?: number, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'userId' is not null or undefined - assertParamExists('getUser', 'userId', userId) - const localVarPath = `/users/{userId}` + assertParamExists('getUserFeedback', 'userId', userId) + const localVarPath = `/users/{userId}/feedback` .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -18278,6 +20347,18 @@ export const UsersApiAxiosParamCreator = function (configuration?: Configuration // authentication authCookie required + if (contentId !== undefined) { + localVarQueryParameter['contentId'] = contentId; + } + + if (n !== undefined) { + localVarQueryParameter['n'] = n; + } + + if (offset !== undefined) { + localVarQueryParameter['offset'] = offset; + } + setSearchParams(localVarUrlObj, localVarQueryParameter); @@ -18290,18 +20371,17 @@ export const UsersApiAxiosParamCreator = function (configuration?: Configuration }; }, /** - * ~~Get public user information about a specific user using their name.~~ **DEPRECATED:** VRChat API no longer return usernames of other users. [See issue by Tupper for more information](https://github.com/pypy-vrc/VRCX/issues/429). This endpoint now require Admin Credentials. - * @summary Get User by Username - * @param {string} username Username of the user + * Returns a list of group instances for a user + * @summary Get User Group Instances + * @param {string} userId Must be a valid user ID. * @param {*} [options] Override http request option. - * @deprecated * @throws {RequiredError} */ - getUserByName: async (username: string, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'username' is not null or undefined - assertParamExists('getUserByName', 'username', username) - const localVarPath = `/users/{username}/name` - .replace(`{${"username"}}`, encodeURIComponent(String(username))); + getUserGroupInstances: async (userId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'userId' is not null or undefined + assertParamExists('getUserGroupInstances', 'userId', userId) + const localVarPath = `/users/{userId}/instances/groups` + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -18389,6 +20469,84 @@ export const UsersApiAxiosParamCreator = function (configuration?: Configuration + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get a particular user note + * @summary Get User Note + * @param {string} userNoteId Must be a valid user note ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getUserNote: async (userNoteId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'userNoteId' is not null or undefined + assertParamExists('getUserNote', 'userNoteId', userNoteId) + const localVarPath = `/userNotes/{userNoteId}` + .replace(`{${"userNoteId"}}`, encodeURIComponent(String(userNoteId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get recently updated user notes + * @summary Get User Notes + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getUserNotes: async (n?: number, offset?: number, options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/userNotes`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + if (n !== undefined) { + localVarQueryParameter['n'] = n; + } + + if (offset !== undefined) { + localVarQueryParameter['offset'] = offset; + } + + + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -18521,6 +20679,44 @@ export const UsersApiAxiosParamCreator = function (configuration?: Configuration localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; localVarRequestOptions.data = serializeDataIfNeeded(updateUserRequest, localVarRequestOptions, configuration) + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Updates the currently authenticated user\'s note on a user + * @summary Update User Note + * @param {UpdateUserNoteRequest} updateUserNoteRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + updateUserNote: async (updateUserNoteRequest: UpdateUserNoteRequest, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'updateUserNoteRequest' is not null or undefined + assertParamExists('updateUserNote', 'updateUserNoteRequest', updateUserNoteRequest) + const localVarPath = `/userNotes`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(updateUserNoteRequest, localVarRequestOptions, configuration) + return { url: toPathString(localVarUrlObj), options: localVarRequestOptions, @@ -18559,6 +20755,32 @@ export const UsersApiFp = function(configuration?: Configuration) { const localVarAxiosArgs = await localVarAxiosParamCreator.getUserByName(username, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, + /** + * Get user\'s submitted feedback + * @summary Get User Feedback + * @param {string} userId Must be a valid user ID. + * @param {boolean} [contentId] Filter for users\' previously submitted feedback, e.g., a groupId, useeId, avatarId, etc. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {*} [options] Override http request option. + * @deprecated + * @throws {RequiredError} + */ + async getUserFeedback(userId: string, contentId?: boolean, n?: number, offset?: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getUserFeedback(userId, contentId, n, offset, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Returns a list of group instances for a user + * @summary Get User Group Instances + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getUserGroupInstances(userId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getUserGroupInstances(userId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** * Returns a list of Groups the user has requested to be invited into. * @summary Get User Group Requests @@ -18581,6 +20803,29 @@ export const UsersApiFp = function(configuration?: Configuration) { const localVarAxiosArgs = await localVarAxiosParamCreator.getUserGroups(userId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, + /** + * Get a particular user note + * @summary Get User Note + * @param {string} userNoteId Must be a valid user note ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getUserNote(userNoteId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getUserNote(userNoteId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Get recently updated user notes + * @summary Get User Notes + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getUserNotes(n?: number, offset?: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getUserNotes(n, offset, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** * Returns the current group that the user is currently representing * @summary Get user\'s current represented group @@ -18618,6 +20863,17 @@ export const UsersApiFp = function(configuration?: Configuration) { const localVarAxiosArgs = await localVarAxiosParamCreator.updateUser(userId, updateUserRequest, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, + /** + * Updates the currently authenticated user\'s note on a user + * @summary Update User Note + * @param {UpdateUserNoteRequest} updateUserNoteRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async updateUserNote(updateUserNoteRequest: UpdateUserNoteRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.updateUserNote(updateUserNoteRequest, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, } }; @@ -18649,6 +20905,30 @@ export const UsersApiFactory = function (configuration?: Configuration, basePath getUserByName(username: string, options?: any): AxiosPromise { return localVarFp.getUserByName(username, options).then((request) => request(axios, basePath)); }, + /** + * Get user\'s submitted feedback + * @summary Get User Feedback + * @param {string} userId Must be a valid user ID. + * @param {boolean} [contentId] Filter for users\' previously submitted feedback, e.g., a groupId, useeId, avatarId, etc. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {*} [options] Override http request option. + * @deprecated + * @throws {RequiredError} + */ + getUserFeedback(userId: string, contentId?: boolean, n?: number, offset?: number, options?: any): AxiosPromise> { + return localVarFp.getUserFeedback(userId, contentId, n, offset, options).then((request) => request(axios, basePath)); + }, + /** + * Returns a list of group instances for a user + * @summary Get User Group Instances + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getUserGroupInstances(userId: string, options?: any): AxiosPromise { + return localVarFp.getUserGroupInstances(userId, options).then((request) => request(axios, basePath)); + }, /** * Returns a list of Groups the user has requested to be invited into. * @summary Get User Group Requests @@ -18669,6 +20949,27 @@ export const UsersApiFactory = function (configuration?: Configuration, basePath getUserGroups(userId: string, options?: any): AxiosPromise> { return localVarFp.getUserGroups(userId, options).then((request) => request(axios, basePath)); }, + /** + * Get a particular user note + * @summary Get User Note + * @param {string} userNoteId Must be a valid user note ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getUserNote(userNoteId: string, options?: any): AxiosPromise { + return localVarFp.getUserNote(userNoteId, options).then((request) => request(axios, basePath)); + }, + /** + * Get recently updated user notes + * @summary Get User Notes + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getUserNotes(n?: number, offset?: number, options?: any): AxiosPromise> { + return localVarFp.getUserNotes(n, offset, options).then((request) => request(axios, basePath)); + }, /** * Returns the current group that the user is currently representing * @summary Get user\'s current represented group @@ -18703,6 +21004,16 @@ export const UsersApiFactory = function (configuration?: Configuration, basePath updateUser(userId: string, updateUserRequest?: UpdateUserRequest, options?: any): AxiosPromise { return localVarFp.updateUser(userId, updateUserRequest, options).then((request) => request(axios, basePath)); }, + /** + * Updates the currently authenticated user\'s note on a user + * @summary Update User Note + * @param {UpdateUserNoteRequest} updateUserNoteRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + updateUserNote(updateUserNoteRequest: UpdateUserNoteRequest, options?: any): AxiosPromise { + return localVarFp.updateUserNote(updateUserNoteRequest, options).then((request) => request(axios, basePath)); + }, }; }; @@ -18738,6 +21049,34 @@ export class UsersApi extends BaseAPI { return UsersApiFp(this.configuration).getUserByName(username, options).then((request) => request(this.axios, this.basePath)); } + /** + * Get user\'s submitted feedback + * @summary Get User Feedback + * @param {string} userId Must be a valid user ID. + * @param {boolean} [contentId] Filter for users\' previously submitted feedback, e.g., a groupId, useeId, avatarId, etc. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {*} [options] Override http request option. + * @deprecated + * @throws {RequiredError} + * @memberof UsersApi + */ + public getUserFeedback(userId: string, contentId?: boolean, n?: number, offset?: number, options?: AxiosRequestConfig) { + return UsersApiFp(this.configuration).getUserFeedback(userId, contentId, n, offset, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Returns a list of group instances for a user + * @summary Get User Group Instances + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof UsersApi + */ + public getUserGroupInstances(userId: string, options?: AxiosRequestConfig) { + return UsersApiFp(this.configuration).getUserGroupInstances(userId, options).then((request) => request(this.axios, this.basePath)); + } + /** * Returns a list of Groups the user has requested to be invited into. * @summary Get User Group Requests @@ -18762,6 +21101,31 @@ export class UsersApi extends BaseAPI { return UsersApiFp(this.configuration).getUserGroups(userId, options).then((request) => request(this.axios, this.basePath)); } + /** + * Get a particular user note + * @summary Get User Note + * @param {string} userNoteId Must be a valid user note ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof UsersApi + */ + public getUserNote(userNoteId: string, options?: AxiosRequestConfig) { + return UsersApiFp(this.configuration).getUserNote(userNoteId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Get recently updated user notes + * @summary Get User Notes + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof UsersApi + */ + public getUserNotes(n?: number, offset?: number, options?: AxiosRequestConfig) { + return UsersApiFp(this.configuration).getUserNotes(n, offset, options).then((request) => request(this.axios, this.basePath)); + } + /** * Returns the current group that the user is currently representing * @summary Get user\'s current represented group @@ -18801,6 +21165,18 @@ export class UsersApi extends BaseAPI { public updateUser(userId: string, updateUserRequest?: UpdateUserRequest, options?: AxiosRequestConfig) { return UsersApiFp(this.configuration).updateUser(userId, updateUserRequest, options).then((request) => request(this.axios, this.basePath)); } + + /** + * Updates the currently authenticated user\'s note on a user + * @summary Update User Note + * @param {UpdateUserNoteRequest} updateUserNoteRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof UsersApi + */ + public updateUserNote(updateUserNoteRequest: UpdateUserNoteRequest, options?: AxiosRequestConfig) { + return UsersApiFp(this.configuration).updateUserNote(updateUserNoteRequest, options).then((request) => request(this.axios, this.basePath)); + } } diff --git a/base.ts b/base.ts index c6c10ab..0e48b79 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.18.8 + * The version of the OpenAPI document: 1.18.9 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index 6d9aeea..1c51bff 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.18.8 + * The version of the OpenAPI document: 1.18.9 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index 2bc955a..7d36d1b 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.18.8 + * The version of the OpenAPI document: 1.18.9 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index 70c5c33..2ef4cb8 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.18.8 + * The version of the OpenAPI document: 1.18.9 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index 9445fc8..3c9c333 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.18.8", + "version": "1.18.9", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.18.8", + "version": "1.18.9", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index 02695ac..44eb9ed 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.18.8", + "version": "1.18.9", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "repository": { From 002bba24c490a25754813ac7e96a3a28688964a8 Mon Sep 17 00:00:00 2001 From: VRCCat Date: Tue, 21 Jan 2025 09:53:56 +0000 Subject: [PATCH 121/130] Upgrade Node SDK to spec 1.18.9 --- api.ts | 172 +++++++++++++++------------------------------------------ 1 file changed, 44 insertions(+), 128 deletions(-) diff --git a/api.ts b/api.ts index f800fd8..b2d13ca 100644 --- a/api.ts +++ b/api.ts @@ -2059,41 +2059,11 @@ export interface CreateGroupRoleRequest { 'isSelfAssignable'?: boolean; /** * - * @type {Array} + * @type {Array} * @memberof CreateGroupRoleRequest */ - 'permissions'?: Array; + 'permissions'?: Array; } - -export const CreateGroupRoleRequestPermissionsEnum = { - group_all: '\\*', - group_announcement_manage: 'group-announcement-manage', - group_audit_view: 'group-audit-view', - group_bans_manage: 'group-bans-manage', - group_data_manage: 'group-data-manage', - group_default_role_manage: 'group-default-role-manage', - group_galleries_manage: 'group-galleries-manage', - group_instance_age_gated_create: 'group-instance-age-gated-create', - group_instance_join: 'group-instance-join', - group_instance_manage: 'group-instance-manage', - group_instance_moderate: 'group-instance-moderate', - group_instance_open_create: 'group-instance-open-create', - group_instance_plus_create: 'group-instance-plus-create', - group_instance_plus_portal: 'group-instance-plus-portal', - group_instance_plus_portal_unlocked: 'group-instance-plus-portal-unlocked', - group_instance_public_create: 'group-instance-public-create', - group_instance_queue_priority: 'group-instance-queue-priority', - group_instance_restricted_create: 'group-instance-restricted-create', - group_invites_manage: 'group-invites-manage', - group_members_manage: 'group-members-manage', - group_members_remove: 'group-members-remove', - group_members_viewall: 'group-members-viewall', - group_roles_assign: 'group-roles-assign', - group_roles_manage: 'group-roles-manage' -} as const; - -export type CreateGroupRoleRequestPermissionsEnum = typeof CreateGroupRoleRequestPermissionsEnum[keyof typeof CreateGroupRoleRequestPermissionsEnum]; - /** * * @export @@ -4787,41 +4757,11 @@ export interface GroupMyMember { 'mRoleIds'?: Array; /** * - * @type {Array} + * @type {Array} * @memberof GroupMyMember */ - 'permissions'?: Array; + 'permissions'?: Array; } - -export const GroupMyMemberPermissionsEnum = { - group_all: '\\*', - group_announcement_manage: 'group-announcement-manage', - group_audit_view: 'group-audit-view', - group_bans_manage: 'group-bans-manage', - group_data_manage: 'group-data-manage', - group_default_role_manage: 'group-default-role-manage', - group_galleries_manage: 'group-galleries-manage', - group_instance_age_gated_create: 'group-instance-age-gated-create', - group_instance_join: 'group-instance-join', - group_instance_manage: 'group-instance-manage', - group_instance_moderate: 'group-instance-moderate', - group_instance_open_create: 'group-instance-open-create', - group_instance_plus_create: 'group-instance-plus-create', - group_instance_plus_portal: 'group-instance-plus-portal', - group_instance_plus_portal_unlocked: 'group-instance-plus-portal-unlocked', - group_instance_public_create: 'group-instance-public-create', - group_instance_queue_priority: 'group-instance-queue-priority', - group_instance_restricted_create: 'group-instance-restricted-create', - group_invites_manage: 'group-invites-manage', - group_members_manage: 'group-members-manage', - group_members_remove: 'group-members-remove', - group_members_viewall: 'group-members-viewall', - group_roles_assign: 'group-roles-assign', - group_roles_manage: 'group-roles-manage' -} as const; - -export type GroupMyMemberPermissionsEnum = typeof GroupMyMemberPermissionsEnum[keyof typeof GroupMyMemberPermissionsEnum]; - /** * A permission that can be granted to a role in a group. * @export @@ -4859,6 +4799,42 @@ export interface GroupPermission { */ 'allowedToAdd'?: boolean; } +/** + * + * @export + * @enum {string} + */ + +export const GroupPermissions = { + group_all: '*', + group_announcement_manage: 'group-announcement-manage', + group_audit_view: 'group-audit-view', + group_bans_manage: 'group-bans-manage', + group_data_manage: 'group-data-manage', + group_default_role_manage: 'group-default-role-manage', + group_galleries_manage: 'group-galleries-manage', + group_instance_age_gated_create: 'group-instance-age-gated-create', + group_instance_join: 'group-instance-join', + group_instance_manage: 'group-instance-manage', + group_instance_moderate: 'group-instance-moderate', + group_instance_open_create: 'group-instance-open-create', + group_instance_plus_create: 'group-instance-plus-create', + group_instance_plus_portal: 'group-instance-plus-portal', + group_instance_plus_portal_unlocked: 'group-instance-plus-portal-unlocked', + group_instance_public_create: 'group-instance-public-create', + group_instance_queue_priority: 'group-instance-queue-priority', + group_instance_restricted_create: 'group-instance-restricted-create', + group_invites_manage: 'group-invites-manage', + group_members_manage: 'group-members-manage', + group_members_remove: 'group-members-remove', + group_members_viewall: 'group-members-viewall', + group_roles_assign: 'group-roles-assign', + group_roles_manage: 'group-roles-manage' +} as const; + +export type GroupPermissions = typeof GroupPermissions[keyof typeof GroupPermissions]; + + /** * * @export @@ -5004,10 +4980,10 @@ export interface GroupRole { 'isSelfAssignable'?: boolean; /** * - * @type {Array} + * @type {Array} * @memberof GroupRole */ - 'permissions'?: Array; + 'permissions'?: Array; /** * * @type {boolean} @@ -5045,36 +5021,6 @@ export interface GroupRole { */ 'updatedAt'?: string; } - -export const GroupRolePermissionsEnum = { - group_all: '\\*', - group_announcement_manage: 'group-announcement-manage', - group_audit_view: 'group-audit-view', - group_bans_manage: 'group-bans-manage', - group_data_manage: 'group-data-manage', - group_default_role_manage: 'group-default-role-manage', - group_galleries_manage: 'group-galleries-manage', - group_instance_age_gated_create: 'group-instance-age-gated-create', - group_instance_join: 'group-instance-join', - group_instance_manage: 'group-instance-manage', - group_instance_moderate: 'group-instance-moderate', - group_instance_open_create: 'group-instance-open-create', - group_instance_plus_create: 'group-instance-plus-create', - group_instance_plus_portal: 'group-instance-plus-portal', - group_instance_plus_portal_unlocked: 'group-instance-plus-portal-unlocked', - group_instance_public_create: 'group-instance-public-create', - group_instance_queue_priority: 'group-instance-queue-priority', - group_instance_restricted_create: 'group-instance-restricted-create', - group_invites_manage: 'group-invites-manage', - group_members_manage: 'group-members-manage', - group_members_remove: 'group-members-remove', - group_members_viewall: 'group-members-viewall', - group_roles_assign: 'group-roles-assign', - group_roles_manage: 'group-roles-manage' -} as const; - -export type GroupRolePermissionsEnum = typeof GroupRolePermissionsEnum[keyof typeof GroupRolePermissionsEnum]; - /** * * @export @@ -8548,10 +8494,10 @@ export interface UpdateGroupRoleRequest { 'isSelfAssignable'?: boolean; /** * - * @type {Array} + * @type {Array} * @memberof UpdateGroupRoleRequest */ - 'permissions'?: Array; + 'permissions'?: Array; /** * * @type {number} @@ -8559,36 +8505,6 @@ export interface UpdateGroupRoleRequest { */ 'order'?: number; } - -export const UpdateGroupRoleRequestPermissionsEnum = { - group_all: '\\*', - group_announcement_manage: 'group-announcement-manage', - group_audit_view: 'group-audit-view', - group_bans_manage: 'group-bans-manage', - group_data_manage: 'group-data-manage', - group_default_role_manage: 'group-default-role-manage', - group_galleries_manage: 'group-galleries-manage', - group_instance_age_gated_create: 'group-instance-age-gated-create', - group_instance_join: 'group-instance-join', - group_instance_manage: 'group-instance-manage', - group_instance_moderate: 'group-instance-moderate', - group_instance_open_create: 'group-instance-open-create', - group_instance_plus_create: 'group-instance-plus-create', - group_instance_plus_portal: 'group-instance-plus-portal', - group_instance_plus_portal_unlocked: 'group-instance-plus-portal-unlocked', - group_instance_public_create: 'group-instance-public-create', - group_instance_queue_priority: 'group-instance-queue-priority', - group_instance_restricted_create: 'group-instance-restricted-create', - group_invites_manage: 'group-invites-manage', - group_members_manage: 'group-members-manage', - group_members_remove: 'group-members-remove', - group_members_viewall: 'group-members-viewall', - group_roles_assign: 'group-roles-assign', - group_roles_manage: 'group-roles-manage' -} as const; - -export type UpdateGroupRoleRequestPermissionsEnum = typeof UpdateGroupRoleRequestPermissionsEnum[keyof typeof UpdateGroupRoleRequestPermissionsEnum]; - /** * * @export From 25ab0e1b03915c9703b1df70b92d9153c48a8ff4 Mon Sep 17 00:00:00 2001 From: VRCCat Date: Tue, 21 Jan 2025 10:00:07 +0000 Subject: [PATCH 122/130] Upgrade Node SDK to spec 1.19.0 --- api.ts | 2 +- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 ++-- package.json | 2 +- 7 files changed, 8 insertions(+), 8 deletions(-) diff --git a/api.ts b/api.ts index b2d13ca..7eca7be 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.18.9 + * The version of the OpenAPI document: 1.19.0 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/base.ts b/base.ts index 0e48b79..a5ed651 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.18.9 + * The version of the OpenAPI document: 1.19.0 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index 1c51bff..c881c8a 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.18.9 + * The version of the OpenAPI document: 1.19.0 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index 7d36d1b..f707269 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.18.9 + * The version of the OpenAPI document: 1.19.0 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index 2ef4cb8..c152fef 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.18.9 + * The version of the OpenAPI document: 1.19.0 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index 3c9c333..be0e430 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.18.9", + "version": "1.19.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.18.9", + "version": "1.19.0", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index 44eb9ed..75334de 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.18.9", + "version": "1.19.0", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "repository": { From 54cafd31ef457f7493113dfea36fae4a112762a0 Mon Sep 17 00:00:00 2001 From: VRCCat Date: Sun, 23 Feb 2025 20:14:29 +0000 Subject: [PATCH 123/130] Upgrade Node SDK to spec 1.19.1 --- api.ts | 285 +++++++++++++++++++++++++++++++++++++++++++--- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 +- package.json | 2 +- 7 files changed, 279 insertions(+), 20 deletions(-) diff --git a/api.ts b/api.ts index 7eca7be..20f820a 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.19.0 + * The version of the OpenAPI document: 1.19.1 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -39,12 +39,24 @@ export interface APIConfig { * @memberof APIConfig */ 'VoiceEnableReceiverLimiting': boolean; + /** + * + * @type {APIConfigAccessLogsUrls} + * @memberof APIConfig + */ + 'accessLogsUrls': APIConfigAccessLogsUrls; /** * VRChat\'s office address * @type {string} * @memberof APIConfig */ 'address': string; + /** + * + * @type {boolean} + * @memberof APIConfig + */ + 'ageVerificationInviteVisible': boolean; /** * * @type {boolean} @@ -57,6 +69,18 @@ export interface APIConfig { * @memberof APIConfig */ 'ageVerificationStatusVisible': boolean; + /** + * Max retries for avatar analysis requests + * @type {number} + * @memberof APIConfig + */ + 'analysisMaxRetries': number; + /** + * Interval between retries for avatar analysis requests + * @type {number} + * @memberof APIConfig + */ + 'analysisRetryInterval': number; /** * Public Announcements * @type {Set} @@ -342,6 +366,12 @@ export interface APIConfig { * @memberof APIConfig */ 'disableFrontendBuilds': boolean; + /** + * Toggles if gift drops should be disabled + * @type {boolean} + * @memberof APIConfig + */ + 'disableGiftDrops': boolean; /** * Unknown * @type {boolean} @@ -433,6 +463,12 @@ export interface APIConfig { * @memberof APIConfig */ 'forceUseLatestWorld': boolean; + /** + * Display type of gifts + * @type {string} + * @memberof APIConfig + */ + 'giftDisplayType': string; /** * Unknown * @type {string} @@ -524,17 +560,23 @@ export interface APIConfig { */ 'reportFormUrl': string; /** - * Options for reporting content - * @type {object} + * + * @type {APIConfigReportOptions} * @memberof APIConfig */ - 'reportOptions': object; + 'reportOptions': APIConfigReportOptions; /** * * @type {APIConfigReportReasons} * @memberof APIConfig */ 'reportReasons': APIConfigReportReasons; + /** + * + * @type {boolean} + * @memberof APIConfig + */ + 'requireAgeVerificationBetaTag': boolean; /** * Link to the developer FAQ * @type {string} @@ -686,6 +728,37 @@ export interface APIConfig { */ 'websocketReconnectMaxDelay': number; } +/** + * + * @export + * @interface APIConfigAccessLogsUrls + */ +export interface APIConfigAccessLogsUrls { + /** + * + * @type {string} + * @memberof APIConfigAccessLogsUrls + */ + 'Default'?: string; + /** + * + * @type {string} + * @memberof APIConfigAccessLogsUrls + */ + 'Pico'?: string; + /** + * + * @type {string} + * @memberof APIConfigAccessLogsUrls + */ + 'Quest'?: string; + /** + * + * @type {string} + * @memberof APIConfigAccessLogsUrls + */ + 'XRElite'?: string; +} /** * Public Announcement * @export @@ -1224,6 +1297,161 @@ export interface APIConfigReportCategories { */ 'worldstore': ReportCategory; } +/** + * Options for reporting content + * @export + * @interface APIConfigReportOptions + */ +export interface APIConfigReportOptions { + /** + * + * @type {APIConfigReportOptionsAvatar} + * @memberof APIConfigReportOptions + */ + 'avatar'?: APIConfigReportOptionsAvatar; + /** + * + * @type {APIConfigReportOptionsGroup} + * @memberof APIConfigReportOptions + */ + 'group'?: APIConfigReportOptionsGroup; + /** + * + * @type {APIConfigReportOptionsUser} + * @memberof APIConfigReportOptions + */ + 'user'?: APIConfigReportOptionsUser; + /** + * + * @type {APIConfigReportOptionsWorld} + * @memberof APIConfigReportOptions + */ + 'world'?: APIConfigReportOptionsWorld; +} +/** + * + * @export + * @interface APIConfigReportOptionsAvatar + */ +export interface APIConfigReportOptionsAvatar { + /** + * + * @type {Array} + * @memberof APIConfigReportOptionsAvatar + */ + 'avatar'?: Array; + /** + * + * @type {Array} + * @memberof APIConfigReportOptionsAvatar + */ + 'warnings'?: Array; +} +/** + * + * @export + * @interface APIConfigReportOptionsGroup + */ +export interface APIConfigReportOptionsGroup { + /** + * + * @type {Array} + * @memberof APIConfigReportOptionsGroup + */ + 'groupstore'?: Array; + /** + * + * @type {Array} + * @memberof APIConfigReportOptionsGroup + */ + 'image'?: Array; + /** + * + * @type {Array} + * @memberof APIConfigReportOptionsGroup + */ + 'text'?: Array; +} +/** + * + * @export + * @interface APIConfigReportOptionsUser + */ +export interface APIConfigReportOptionsUser { + /** + * + * @type {Array} + * @memberof APIConfigReportOptionsUser + */ + 'behavior'?: Array; + /** + * + * @type {Array} + * @memberof APIConfigReportOptionsUser + */ + 'chat'?: Array; + /** + * + * @type {Array} + * @memberof APIConfigReportOptionsUser + */ + 'emoji'?: Array; + /** + * + * @type {Array} + * @memberof APIConfigReportOptionsUser + */ + 'image'?: Array; + /** + * + * @type {Array} + * @memberof APIConfigReportOptionsUser + */ + 'sticker'?: Array; + /** + * + * @type {Array} + * @memberof APIConfigReportOptionsUser + */ + 'text'?: Array; +} +/** + * + * @export + * @interface APIConfigReportOptionsWorld + */ +export interface APIConfigReportOptionsWorld { + /** + * + * @type {Array} + * @memberof APIConfigReportOptionsWorld + */ + 'environment'?: Array; + /** + * + * @type {Array} + * @memberof APIConfigReportOptionsWorld + */ + 'text'?: Array; + /** + * + * @type {Array} + * @memberof APIConfigReportOptionsWorld + */ + 'warnings'?: Array; + /** + * + * @type {Array} + * @memberof APIConfigReportOptionsWorld + */ + 'worldimage'?: Array; + /** + * + * @type {Array} + * @memberof APIConfigReportOptionsWorld + */ + 'worldstore'?: Array; +} /** * Reasons available for reporting users * @export @@ -1434,7 +1662,7 @@ export interface AddGroupGalleryImageRequest { 'fileId': string; } /** - * + * `verified` is obsolete. User who have verified and are 18+ can switch to `plus18` status. * @export * @enum {string} */ @@ -2271,7 +2499,7 @@ export interface CurrentUser { */ 'ageVerificationStatus': AgeVerificationStatus; /** - * + * `true` if, user is age verified (not 18+). * @type {boolean} * @memberof CurrentUser */ @@ -2541,6 +2769,12 @@ export interface CurrentUser { * @memberof CurrentUser */ 'presence'?: CurrentUserPresence; + /** + * + * @type {Array} + * @memberof CurrentUser + */ + 'platform_history'?: Array; /** * * @type {string} @@ -2657,6 +2891,31 @@ export interface CurrentUser { */ 'username'?: string; } +/** + * + * @export + * @interface CurrentUserPlatformHistoryInner + */ +export interface CurrentUserPlatformHistoryInner { + /** + * + * @type {boolean} + * @memberof CurrentUserPlatformHistoryInner + */ + 'isMobile'?: boolean; + /** + * + * @type {string} + * @memberof CurrentUserPlatformHistoryInner + */ + 'platform'?: string | null; + /** + * + * @type {string} + * @memberof CurrentUserPlatformHistoryInner + */ + 'recorded'?: string; +} /** * * @export @@ -6755,12 +7014,6 @@ export interface PastDisplayName { * @interface PerformanceLimiterInfo */ export interface PerformanceLimiterInfo { - /** - * - * @type {boolean} - * @memberof PerformanceLimiterInfo - */ - 'allowed': boolean; /** * Maximum amount of seats. -1 means no limit. * @type {number} @@ -6858,7 +7111,7 @@ export interface PlatformBuildInfo { * @type {string} * @memberof PlatformBuildInfo */ - 'redirectionAddress': string; + 'redirectionAddress'?: string; } /** * @@ -8707,6 +8960,12 @@ export interface User { * @memberof User */ 'ageVerificationStatus': AgeVerificationStatus; + /** + * `true` if, user is age verified (not 18+). + * @type {boolean} + * @memberof User + */ + 'ageVerified': boolean; /** * * @type {boolean} diff --git a/base.ts b/base.ts index a5ed651..4a06ba4 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.19.0 + * The version of the OpenAPI document: 1.19.1 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index c881c8a..ca8ca34 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.19.0 + * The version of the OpenAPI document: 1.19.1 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index f707269..67eb060 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.19.0 + * The version of the OpenAPI document: 1.19.1 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index c152fef..56248af 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.19.0 + * The version of the OpenAPI document: 1.19.1 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index be0e430..c7d20b5 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.19.0", + "version": "1.19.1", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.19.0", + "version": "1.19.1", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index 75334de..b7cfec3 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.19.0", + "version": "1.19.1", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "repository": { From c9ce57b264c115c968916679f8e343e47f820198 Mon Sep 17 00:00:00 2001 From: JelleJurre <76777936+jellejurre@users.noreply.github.com> Date: Tue, 20 May 2025 15:52:38 +0200 Subject: [PATCH 124/130] Move cache to v4 --- .github/workflows/ci.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index e5b801d..42a52c6 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -15,7 +15,7 @@ jobs: node-version: 16 - uses: actions/checkout@v2 - name: 'Cache node_modules' - uses: actions/cache@v2 + uses: actions/cache@v4 with: path: node_modules key: ${{ runner.os }}-node-v16-${{ hashFiles('**/generate.sh') }} From 82ac310fcdaae4dedd3a0b8c44bed3a84c6d82ee Mon Sep 17 00:00:00 2001 From: jellejurre Date: Tue, 20 May 2025 13:59:59 +0000 Subject: [PATCH 125/130] Upgrade Node SDK to spec 1.19.3 --- api.ts | 3956 ++++++++++++++++++++++++++++++++++++++++----- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 +- package.json | 2 +- 7 files changed, 3554 insertions(+), 416 deletions(-) diff --git a/api.ts b/api.ts index 20f820a..5a023c0 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.19.1 + * The version of the OpenAPI document: 1.19.3 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -99,13 +99,6 @@ export interface APIConfig { * @memberof APIConfig */ 'analyticsSegment_NewUI_Salt': string; - /** - * Game name - * @type {string} - * @memberof APIConfig - * @deprecated - */ - 'appName': string; /** * List of supported Languages * @type {Array} @@ -124,12 +117,6 @@ export interface APIConfig { * @memberof APIConfig */ 'avatarPerfLimiter': APIConfigAvatarPerfLimiter; - /** - * Build tag of the API server - * @type {string} - * @memberof APIConfig - */ - 'buildVersionTag': string; /** * Unknown * @type {number} @@ -274,12 +261,6 @@ export interface APIConfig { * @memberof APIConfig */ 'defaultStickerSet': string; - /** - * - * @type {DeploymentGroup} - * @memberof APIConfig - */ - 'deploymentGroup': DeploymentGroup; /** * Unknown * @type {Array} @@ -601,12 +582,6 @@ export interface APIConfig { * @memberof APIConfig */ 'sdkUnityVersion': string; - /** - * Server name of the API server currently responding - * @type {string} - * @memberof APIConfig - */ - 'serverName': string; /** * A list of explicitly allowed origins that worlds can request strings from via the Udon\'s [VRCStringDownloader.LoadUrl](https://creators.vrchat.com/worlds/udon/string-loading/#ivrcstringdownload). * @type {Array} @@ -709,6 +684,12 @@ export interface APIConfig { * @memberof APIConfig */ 'player-url-resolver-sha1': string; + /** + * Public key, hex encoded + * @type {string} + * @memberof APIConfig + */ + 'publicKey': string; /** * Unknown * @type {number} @@ -1230,6 +1211,12 @@ export interface APIConfigReportCategories { * @memberof APIConfigReportCategories */ 'avatar': ReportCategory; + /** + * + * @type {ReportCategory} + * @memberof APIConfigReportCategories + */ + 'avatarpage'?: ReportCategory; /** * * @type {ReportCategory} @@ -1340,6 +1327,12 @@ export interface APIConfigReportOptionsAvatar { * @memberof APIConfigReportOptionsAvatar */ 'avatar'?: Array; + /** + * + * @type {Array} + * @memberof APIConfigReportOptionsAvatar + */ + 'avatarpage'?: Array; /** * * @type {Array} @@ -1476,6 +1469,18 @@ export interface APIConfigReportReasons { * @memberof APIConfigReportReasons */ 'cancellation': ReportReason; + /** + * + * @type {ReportReason} + * @memberof APIConfigReportReasons + */ + 'copyright'?: ReportReason; + /** + * + * @type {ReportReason} + * @memberof APIConfigReportReasons + */ + 'fraud'?: ReportReason; /** * * @type {ReportReason} @@ -1560,6 +1565,12 @@ export interface APIConfigReportReasons { * @memberof APIConfigReportReasons */ 'sexual': ReportReason; + /** + * + * @type {ReportReason} + * @memberof APIConfigReportReasons + */ + 'technical'?: ReportReason; /** * * @type {ReportReason} @@ -1683,13 +1694,19 @@ export type AgeVerificationStatus = typeof AgeVerificationStatus[keyof typeof Ag */ export interface Avatar { /** - * Not present from general serach `/avatars`, only on specific requests `/avatars/{avatarId}`. + * + * @type {string} + * @memberof Avatar + */ + 'acknowledgements'?: string; + /** + * Not present from general search `/avatars`, only on specific requests `/avatars/{avatarId}`. * @type {string} * @memberof Avatar */ 'assetUrl'?: string; /** - * Not present from general serach `/avatars`, only on specific requests `/avatars/{avatarId}`. **Deprecation:** `Object` has unknown usage/fields, and is always empty. Use normal `Url` field instead. + * Not present from general search `/avatars`, only on specific requests `/avatars/{avatarId}`. **Deprecation:** `Object` has unknown usage/fields, and is always empty. Use normal `Url` field instead. * @type {object} * @memberof Avatar */ @@ -1724,6 +1741,12 @@ export interface Avatar { * @memberof Avatar */ 'featured': boolean; + /** + * + * @type {number} + * @memberof Avatar + */ + 'highestPrice'?: number; /** * * @type {string} @@ -1736,18 +1759,48 @@ export interface Avatar { * @memberof Avatar */ 'imageUrl': string; + /** + * + * @type {boolean} + * @memberof Avatar + */ + 'lock'?: boolean; + /** + * + * @type {number} + * @memberof Avatar + */ + 'lowestPrice'?: number; /** * * @type {string} * @memberof Avatar */ 'name': string; + /** + * + * @type {string} + * @memberof Avatar + */ + 'productId'?: string; + /** + * + * @type {Array} + * @memberof Avatar + */ + 'publishedListings'?: Array; /** * * @type {ReleaseStatus} * @memberof Avatar */ 'releaseStatus': ReleaseStatus; + /** + * + * @type {boolean} + * @memberof Avatar + */ + 'searchable'?: boolean; /** * * @type {AvatarStyles} @@ -1798,6 +1851,49 @@ export interface Avatar { */ 'version': number; } +/** + * + * @export + * @interface AvatarPublishedListingsInner + */ +export interface AvatarPublishedListingsInner { + /** + * + * @type {string} + * @memberof AvatarPublishedListingsInner + */ + 'description'?: string; + /** + * + * @type {string} + * @memberof AvatarPublishedListingsInner + */ + 'displayName'?: string; + /** + * + * @type {string} + * @memberof AvatarPublishedListingsInner + */ + 'imageId'?: string; + /** + * + * @type {string} + * @memberof AvatarPublishedListingsInner + */ + 'listingId'?: string; + /** + * + * @type {string} + * @memberof AvatarPublishedListingsInner + */ + 'listingType'?: string; + /** + * + * @type {number} + * @memberof AvatarPublishedListingsInner + */ + 'priceTokens'?: number; +} /** * * @export @@ -1929,6 +2025,19 @@ export interface BanGroupMemberRequest { */ 'userId': string; } +/** + * + * @export + * @interface ChangeUserTagsRequest + */ +export interface ChangeUserTagsRequest { + /** + * The tags being added or removed. + * @type {Array} + * @memberof ChangeUserTagsRequest + */ + 'tags': Array; +} /** * * @export @@ -1941,6 +2050,30 @@ export interface CreateAvatarRequest { * @memberof CreateAvatarRequest */ 'assetUrl'?: string; + /** + * + * @type {string} + * @memberof CreateAvatarRequest + */ + 'assetVersion'?: string; + /** + * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. + * @type {string} + * @memberof CreateAvatarRequest + */ + 'platform'?: string; + /** + * A date and time of the pattern `M/d/yyyy h:mm:ss tt` (see C Sharp `System.DateTime`) + * @type {string} + * @memberof CreateAvatarRequest + */ + 'created_at'?: string; + /** + * A date and time of the pattern `M/d/yyyy h:mm:ss tt` (see C Sharp `System.DateTime`) + * @type {string} + * @memberof CreateAvatarRequest + */ + 'updated_at'?: string; /** * * @type {string} @@ -1971,6 +2104,12 @@ export interface CreateAvatarRequest { * @memberof CreateAvatarRequest */ 'imageUrl': string; + /** + * + * @type {string} + * @memberof CreateAvatarRequest + */ + 'thumbnailImageUrl'?: string; /** * * @type {ReleaseStatus} @@ -2364,6 +2503,30 @@ export interface CreateInstanceRequest { * @memberof CreateInstanceRequest */ 'inviteOnly'?: boolean; + /** + * + * @type {boolean} + * @memberof CreateInstanceRequest + */ + 'ageGate'?: boolean; + /** + * + * @type {boolean} + * @memberof CreateInstanceRequest + */ + 'instancePersistenceEnabled'?: boolean | null; + /** + * + * @type {string} + * @memberof CreateInstanceRequest + */ + 'displayName'?: string | null; + /** + * + * @type {InstanceContentSettings} + * @memberof CreateInstanceRequest + */ + 'contentSettings'?: InstanceContentSettings; } /** * @@ -2510,6 +2673,12 @@ export interface CurrentUser { * @memberof CurrentUser */ 'allowAvatarCopying': boolean; + /** + * The auth token for NEWLY REGISTERED ACCOUNTS ONLY (/auth/register) + * @type {string} + * @memberof CurrentUser + */ + 'authToken'?: string; /** * * @type {Array} @@ -2529,17 +2698,17 @@ export interface CurrentUser { */ 'bioLinks': Array; /** - * - * @type {string} + * These tags begin with `content_` and control content gating + * @type {Array} * @memberof CurrentUser */ - 'currentAvatar': string; + 'contentFilters'?: Array; /** * * @type {string} * @memberof CurrentUser */ - 'currentAvatarAssetUrl': string; + 'currentAvatar': string; /** * When profilePicOverride is not empty, use it instead. * @type {string} @@ -3013,22 +3182,6 @@ export interface CurrentUserPresence { */ 'world'?: string; } -/** - * Used to identify which API deployment cluster is currently responding. `blue` and `green` are used by Production. `grape`and `cherry` are used during Development. [Blue Green Deployment by Martin Fowler](https://martinfowler.com/bliki/BlueGreenDeployment.html) - * @export - * @enum {string} - */ - -export const DeploymentGroup = { - Blue: 'blue', - Green: 'green', - Grape: 'grape', - Cherry: 'cherry' -} as const; - -export type DeploymentGroup = typeof DeploymentGroup[keyof typeof DeploymentGroup]; - - /** * \"none\" User is a normal user \"trusted\" Unknown \"internal\" Is a VRChat Developer \"moderator\" Is a VRChat Moderator Staff can hide their developerType at will. * @export @@ -3045,6 +3198,19 @@ export const DeveloperType = { export type DeveloperType = typeof DeveloperType[keyof typeof DeveloperType]; +/** + * + * @export + * @interface Disable2FAResult + */ +export interface Disable2FAResult { + /** + * + * @type {boolean} + * @memberof Disable2FAResult + */ + 'removed': boolean; +} /** * * @export @@ -3314,6 +3480,12 @@ export interface FavoritedWorld { * @memberof FavoritedWorld */ 'created_at': string; + /** + * + * @type {InstanceContentSettings} + * @memberof FavoritedWorld + */ + 'defaultContentSettings'?: InstanceContentSettings; /** * * @type {number} @@ -3556,12 +3728,24 @@ export interface FileAnalysis { * @memberof FileAnalysis */ 'created_at'?: string; + /** + * + * @type {string} + * @memberof FileAnalysis + */ + 'encryptionKey'?: string; /** * * @type {number} * @memberof FileAnalysis */ 'fileSize': number; + /** + * + * @type {string} + * @memberof FileAnalysis + */ + 'performanceRating'?: string; /** * * @type {boolean} @@ -4071,6 +4255,19 @@ export interface FriendStatus { */ 'outgoingRequest': boolean; } +/** + * + * @export + * @interface GetGroupPosts200Response + */ +export interface GetGroupPosts200Response { + /** + * + * @type {Array} + * @memberof GetGroupPosts200Response + */ + 'posts'?: Array; +} /** * * @export @@ -5299,48 +5496,110 @@ export type GroupRoleTemplate = typeof GroupRoleTemplate[keyof typeof GroupRoleT /** * * @export - * @enum {string} - */ - -export const GroupSearchSort = { - Asc: 'joinedAt:asc', - Desc: 'joinedAt:desc' -} as const; - -export type GroupSearchSort = typeof GroupSearchSort[keyof typeof GroupSearchSort]; - - -/** - * - * @export - * @enum {string} - */ - -export const GroupUserVisibility = { - Visible: 'visible', - Hidden: 'hidden', - Friends: 'friends' -} as const; - -export type GroupUserVisibility = typeof GroupUserVisibility[keyof typeof GroupUserVisibility]; - - -/** - * - * @export - * @interface InfoPush + * @interface GroupRoleTemplateValues */ -export interface InfoPush { +export interface GroupRoleTemplateValues { /** * - * @type {string} - * @memberof InfoPush + * @type {Array} + * @memberof GroupRoleTemplateValues */ - 'id': string; + 'basePermissions': Array; /** * - * @type {boolean} - * @memberof InfoPush + * @type {string} + * @memberof GroupRoleTemplateValues + */ + 'description': string; + /** + * + * @type {string} + * @memberof GroupRoleTemplateValues + */ + 'name': string; + /** + * + * @type {GroupRoleTemplateValuesRoles} + * @memberof GroupRoleTemplateValues + */ + 'roles': GroupRoleTemplateValuesRoles; +} +/** + * + * @export + * @interface GroupRoleTemplateValuesRoles + */ +export interface GroupRoleTemplateValuesRoles { + /** + * + * @type {string} + * @memberof GroupRoleTemplateValuesRoles + */ + 'description'?: string; + /** + * + * @type {string} + * @memberof GroupRoleTemplateValuesRoles + */ + 'name'?: string; + /** + * + * @type {Array} + * @memberof GroupRoleTemplateValuesRoles + */ + 'basePermissions'?: Array; + /** + * + * @type {boolean} + * @memberof GroupRoleTemplateValuesRoles + */ + 'isAddedOnJoin'?: boolean; +} +/** + * + * @export + * @enum {string} + */ + +export const GroupSearchSort = { + Asc: 'joinedAt:asc', + Desc: 'joinedAt:desc' +} as const; + +export type GroupSearchSort = typeof GroupSearchSort[keyof typeof GroupSearchSort]; + + +/** + * + * @export + * @enum {string} + */ + +export const GroupUserVisibility = { + Visible: 'visible', + Hidden: 'hidden', + Friends: 'friends' +} as const; + +export type GroupUserVisibility = typeof GroupUserVisibility[keyof typeof GroupUserVisibility]; + + +/** + * + * @export + * @interface InfoPush + */ +export interface InfoPush { + /** + * + * @type {string} + * @memberof InfoPush + */ + 'id': string; + /** + * + * @type {boolean} + * @memberof InfoPush */ 'isEnabled': boolean; /** @@ -5557,6 +5816,12 @@ export interface Instance { * @deprecated */ 'clientNumber': string; + /** + * + * @type {InstanceContentSettings} + * @memberof Instance + */ + 'contentSettings': InstanceContentSettings; /** * * @type {string} @@ -5574,7 +5839,7 @@ export interface Instance { * @type {number} * @memberof Instance */ - 'gameServerVersion': number; + 'gameServerVersion'?: number; /** * InstanceID can be \"offline\" on User profiles if you are not friends with that user and \"private\" if you are friends and user is in private instance. * @type {string} @@ -5774,6 +6039,43 @@ export interface Instance { */ 'hardClose'?: boolean | null; } +/** + * Types of dynamic user content permitted in an instance + * @export + * @interface InstanceContentSettings + */ +export interface InstanceContentSettings { + /** + * + * @type {boolean} + * @memberof InstanceContentSettings + */ + 'drones'?: boolean; + /** + * + * @type {boolean} + * @memberof InstanceContentSettings + */ + 'emoji'?: boolean; + /** + * + * @type {boolean} + * @memberof InstanceContentSettings + */ + 'pedestals'?: boolean; + /** + * + * @type {boolean} + * @memberof InstanceContentSettings + */ + 'prints'?: boolean; + /** + * + * @type {boolean} + * @memberof InstanceContentSettings + */ + 'stickers'?: boolean; +} /** * * @export @@ -6552,6 +6854,12 @@ export interface LimitedWorld { * @memberof LimitedWorld */ 'created_at': string; + /** + * + * @type {InstanceContentSettings} + * @memberof LimitedWorld + */ + 'defaultContentSettings'?: InstanceContentSettings; /** * * @type {number} @@ -6630,6 +6938,12 @@ export interface LimitedWorld { * @memberof LimitedWorld */ 'releaseStatus': ReleaseStatus; + /** + * + * @type {string} + * @memberof LimitedWorld + */ + 'storeId'?: string; /** * * @type {Array} @@ -6706,6 +7020,18 @@ export interface ModelError { * @interface ModelFile */ export interface ModelFile { + /** + * + * @type {string} + * @memberof ModelFile + */ + 'animationStyle'?: string; + /** + * + * @type {string} + * @memberof ModelFile + */ + 'maskTag'?: string; /** * * @type {string} @@ -7008,6 +7334,25 @@ export interface PastDisplayName { */ 'updated_at': string; } +/** + * + * @export + * @interface Pending2FAResult + */ +export interface Pending2FAResult { + /** + * + * @type {string} + * @memberof Pending2FAResult + */ + 'qrCodeDataUrl': string; + /** + * + * @type {string} + * @memberof Pending2FAResult + */ + 'secret': string; +} /** * Info about the performance limits on a platform * @export @@ -7180,6 +7525,92 @@ export const PlayerModerationType = { export type PlayerModerationType = typeof PlayerModerationType[keyof typeof PlayerModerationType]; +/** + * Info about a print + * @export + * @interface Print + */ +export interface Print { + /** + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof Print + */ + 'authorId': string; + /** + * + * @type {string} + * @memberof Print + */ + 'authorName': string; + /** + * + * @type {string} + * @memberof Print + */ + 'createdAt': string; + /** + * + * @type {PrintFiles} + * @memberof Print + */ + 'files': PrintFiles; + /** + * + * @type {string} + * @memberof Print + */ + 'id': string; + /** + * + * @type {string} + * @memberof Print + */ + 'note': string; + /** + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof Print + */ + 'ownerId'?: string; + /** + * + * @type {string} + * @memberof Print + */ + 'timestamp': string; + /** + * WorldID be \"offline\" on User profiles if you are not friends with that user. + * @type {string} + * @memberof Print + */ + 'worldId': string; + /** + * + * @type {string} + * @memberof Print + */ + 'worldName': string; +} +/** + * + * @export + * @interface PrintFiles + */ +export interface PrintFiles { + /** + * + * @type {string} + * @memberof PrintFiles + */ + 'fileId'?: string; + /** + * Link to file, e.g. https://api.vrchat.cloud/api/1/file/file_66fe782d-f2bd-4462-9761-1d766d7b2b26/1/file + * @type {string} + * @memberof PrintFiles + */ + 'image'?: string; +} /** * * @export @@ -7572,6 +8003,67 @@ export const Region = { export type Region = typeof Region[keyof typeof Region]; +/** + * + * @export + * @interface RegisterUserAccountRequest + */ +export interface RegisterUserAccountRequest { + /** + * Display Name / Username (Username is a sanitized version) + * @type {string} + * @memberof RegisterUserAccountRequest + */ + 'username': string; + /** + * Password + * @type {string} + * @memberof RegisterUserAccountRequest + */ + 'password': string; + /** + * Email address + * @type {string} + * @memberof RegisterUserAccountRequest + */ + 'email': string; + /** + * Birth year + * @type {string} + * @memberof RegisterUserAccountRequest + */ + 'year': string; + /** + * Birth month of year + * @type {string} + * @memberof RegisterUserAccountRequest + */ + 'month': string; + /** + * Birth day of month + * @type {string} + * @memberof RegisterUserAccountRequest + */ + 'day': string; + /** + * Captcha code + * @type {string} + * @memberof RegisterUserAccountRequest + */ + 'captchaCode': string; + /** + * Whether to recieve promotional emails + * @type {boolean} + * @memberof RegisterUserAccountRequest + */ + 'subscribe': boolean; + /** + * The most recent version of the TOS + * @type {number} + * @memberof RegisterUserAccountRequest + */ + 'acceptedTOSVersion': number; +} /** * * @export @@ -7594,6 +8086,18 @@ export type ReleaseStatus = typeof ReleaseStatus[keyof typeof ReleaseStatus]; * @interface ReportCategory */ export interface ReportCategory { + /** + * The description of the report category + * @type {string} + * @memberof ReportCategory + */ + 'description'?: string; + /** + * The title of the report category + * @type {string} + * @memberof ReportCategory + */ + 'title'?: string; /** * The label of the report category * @type {string} @@ -7825,18 +8329,92 @@ export interface SentNotification { 'type': NotificationType; } /** - * + * Statistics about the user\'s currently queued service request * @export - * @enum {string} + * @interface ServiceQueueStats */ - -export const SortOption = { - Popularity: 'popularity', - Heat: 'heat', - Trust: 'trust', - Shuffle: 'shuffle', - Random: 'random', - Favorites: 'favorites', +export interface ServiceQueueStats { + /** + * + * @type {number} + * @memberof ServiceQueueStats + */ + 'estimatedServiceDurationSeconds': number; +} +/** + * Status information for a service request + * @export + * @interface ServiceStatus + */ +export interface ServiceStatus { + /** + * + * @type {string} + * @memberof ServiceStatus + */ + 'created_at': string; + /** + * The id of this service, NOT the id of the thing this service was requested for. + * @type {string} + * @memberof ServiceStatus + */ + 'id': string; + /** + * + * @type {Array} + * @memberof ServiceStatus + */ + 'progress': Array; + /** + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof ServiceStatus + */ + 'requesterUserId': string; + /** + * + * @type {string} + * @memberof ServiceStatus + */ + 'state': string; + /** + * The id of the thing this service was requested for. + * @type {string} + * @memberof ServiceStatus + */ + 'subjectId': string; + /** + * The kind of the thing this service was requested for. + * @type {string} + * @memberof ServiceStatus + */ + 'subjectType': string; + /** + * The kind of service that was requested. + * @type {string} + * @memberof ServiceStatus + */ + 'type': string; + /** + * + * @type {string} + * @memberof ServiceStatus + */ + 'updated_at': string; +} +/** + * + * @export + * @enum {string} + */ + +export const SortOption = { + Popularity: 'popularity', + Heat: 'heat', + Trust: 'trust', + Shuffle: 'shuffle', + Random: 'random', + Favorites: 'favorites', ReportScore: 'reportScore', ReportCount: 'reportCount', PublicationDate: 'publicationDate', @@ -8012,6 +8590,24 @@ export interface TiliaStatus { * @memberof TiliaStatus */ 'economyOnline': boolean; + /** + * + * @type {number} + * @memberof TiliaStatus + */ + 'economyState'?: number; + /** + * + * @type {string} + * @memberof TiliaStatus + */ + 'plannedOfflineWindowStart'?: string; + /** + * + * @type {string} + * @memberof TiliaStatus + */ + 'plannedOfflineWindowEnd'?: string; } /** * @@ -8385,6 +8981,44 @@ export interface TwoFactorEmailCode { */ 'code': string; } +/** + * + * @export + * @interface TwoFactorRecoveryCodes + */ +export interface TwoFactorRecoveryCodes { + /** + * + * @type {Array} + * @memberof TwoFactorRecoveryCodes + */ + 'requiresTwoFactorAuth'?: Array; + /** + * + * @type {Array} + * @memberof TwoFactorRecoveryCodes + */ + 'otp'?: Array; +} +/** + * + * @export + * @interface TwoFactorRecoveryCodesOtpInner + */ +export interface TwoFactorRecoveryCodesOtpInner { + /** + * + * @type {string} + * @memberof TwoFactorRecoveryCodesOtpInner + */ + 'code': string; + /** + * + * @type {boolean} + * @memberof TwoFactorRecoveryCodesOtpInner + */ + 'used': boolean; +} /** * * @export @@ -8771,6 +9405,25 @@ export interface UpdateInviteMessageRequest { */ 'message': string; } +/** + * + * @export + * @interface UpdateUserBadgeRequest + */ +export interface UpdateUserBadgeRequest { + /** + * + * @type {boolean} + * @memberof UpdateUserBadgeRequest + */ + 'hidden'?: boolean; + /** + * + * @type {boolean} + * @memberof UpdateUserBadgeRequest + */ + 'showcased'?: boolean; +} /** * * @export @@ -8802,6 +9455,12 @@ export interface UpdateUserRequest { * @memberof UpdateUserRequest */ 'email'?: string; + /** + * + * @type {boolean} + * @memberof UpdateUserRequest + */ + 'unsubscribe'?: boolean; /** * * @type {string} @@ -8862,6 +9521,36 @@ export interface UpdateUserRequest { * @memberof UpdateUserRequest */ 'userIcon'?: string; + /** + * These tags begin with `content_` and control content gating + * @type {Array} + * @memberof UpdateUserRequest + */ + 'contentFilters'?: Array; + /** + * MUST specify currentPassword as well to change display name + * @type {string} + * @memberof UpdateUserRequest + */ + 'displayName'?: string; + /** + * MUST specify currentPassword as well to revert display name + * @type {boolean} + * @memberof UpdateUserRequest + */ + 'revertDisplayName'?: boolean; + /** + * MUST specify currentPassword as well to change password + * @type {string} + * @memberof UpdateUserRequest + */ + 'password'?: string; + /** + * + * @type {string} + * @memberof UpdateUserRequest + */ + 'currentPassword'?: string; } /** * @@ -9449,6 +10138,12 @@ export interface Verify2FAResult { * @memberof Verify2FAResult */ 'verified': boolean; + /** + * + * @type {boolean} + * @memberof Verify2FAResult + */ + 'enabled'?: boolean; } /** * @@ -9505,6 +10200,12 @@ export interface World { * @memberof World */ 'created_at': string; + /** + * + * @type {InstanceContentSettings} + * @memberof World + */ + 'defaultContentSettings'?: InstanceContentSettings; /** * * @type {string} @@ -9613,6 +10314,12 @@ export interface World { * @memberof World */ 'releaseStatus': ReleaseStatus; + /** + * + * @type {string} + * @memberof World + */ + 'storeId'?: string; /** * * @type {Array} @@ -9701,6 +10408,38 @@ export interface WorldPublishStatus { */ export const AuthenticationApiAxiosParamCreator = function (configuration?: Configuration) { return { + /** + * Cancels the sequence for enabling time-based 2FA. + * @summary Cancel pending enabling of time-based 2FA codes + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + cancelPending2FA: async (options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/auth/twofactorauth/totp/pending`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, /** * Checks if a user by a given `username`, `displayName` or `email` exist. This is used during registration to check if a username has already been taken, during change of displayName to check if a displayName is available, and during change of email to check if the email is already used. In the later two cases the `excludeUserId` is used to exclude oneself, otherwise the result would always be true. It is **REQUIRED** to include **AT LEAST** `username`, `displayName` **or** `email` query parameter. Although they can be combined - in addition with `excludeUserId` (generally to exclude yourself) - to further fine-tune the search. * @summary Check User Exists @@ -9752,17 +10491,19 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf }; }, /** - * Deletes the account with given ID. Normal users only have permission to delete their own account. Account deletion is 14 days from this request, and will be cancelled if you do an authenticated request with the account afterwards. **VRC+ NOTE:** Despite the 14-days cooldown, any VRC+ subscription will be cancelled **immediately**. **METHOD NOTE:** Despite this being a Delete action, the method type required is PUT. - * @summary Delete User - * @param {string} userId Must be a valid user ID. + * Confirms the email address for a user + * @summary Confirm Email + * @param {string} id Target user for which to verify email. + * @param {string} verifyEmail Token to verify email. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - deleteUser: async (userId: string, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'userId' is not null or undefined - assertParamExists('deleteUser', 'userId', userId) - const localVarPath = `/users/{userId}/delete` - .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); + confirmEmail: async (id: string, verifyEmail: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'id' is not null or undefined + assertParamExists('confirmEmail', 'id', id) + // verify required parameter 'verifyEmail' is not null or undefined + assertParamExists('confirmEmail', 'verifyEmail', verifyEmail) + const localVarPath = `/auth/confirmEmail`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -9770,11 +10511,17 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication authCookie required + if (id !== undefined) { + localVarQueryParameter['id'] = id; + } + + if (verifyEmail !== undefined) { + localVarQueryParameter['verify_email'] = verifyEmail; + } @@ -9788,13 +10535,17 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf }; }, /** - * This endpoint does the following two operations: 1) Checks if you are already logged in by looking for a valid `auth` cookie. If you are have a valid auth cookie then no additional auth-related actions are taken. If you are **not** logged in then it will log you in with the `Authorization` header and set the `auth` cookie. The `auth` cookie will only be sent once. 2) If logged in, this function will also return the CurrentUser object containing detailed information about the currently logged in user. The auth string after `Authorization: Basic {string}` is a base64-encoded string of the username and password, both individually url-encoded, and then joined with a colon. > base64(urlencode(username):urlencode(password)) **WARNING: Session Limit:** Each authentication with login credentials counts as a separate session, out of which you have a limited amount. Make sure to save and reuse the `auth` cookie if you are often restarting the program. The provided API libraries automatically save cookies during runtime, but does not persist during restart. While it can be fine to use username/password during development, expect in production to very fast run into the rate-limit and be temporarily blocked from making new sessions until older ones expire. The exact number of simultaneous sessions is unknown/undisclosed. - * @summary Login and/or Get Current User Info + * Deletes the account with given ID. Normal users only have permission to delete their own account. Account deletion is 14 days from this request, and will be cancelled if you do an authenticated request with the account afterwards. **VRC+ NOTE:** Despite the 14-days cooldown, any VRC+ subscription will be cancelled **immediately**. **METHOD NOTE:** Despite this being a Delete action, the method type required is PUT. + * @summary Delete User + * @param {string} userId Must be a valid user ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getCurrentUser: async (options: AxiosRequestConfig = {}): Promise => { - const localVarPath = `/auth/user`; + deleteUser: async (userId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'userId' is not null or undefined + assertParamExists('deleteUser', 'userId', userId) + const localVarPath = `/users/{userId}/delete` + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -9802,18 +10553,12 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; // authentication authCookie required - // authentication authHeader required - // http basic authentication required - setBasicAuthToObject(localVarRequestOptions, configuration) - - // authentication twoFactorAuthCookie required - setSearchParams(localVarUrlObj, localVarQueryParameter); @@ -9826,13 +10571,13 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf }; }, /** - * Invalidates the login session. - * @summary Logout + * Disables 2FA for the currently logged in account + * @summary Disable 2FA * @param {*} [options] Override http request option. * @throws {RequiredError} */ - logout: async (options: AxiosRequestConfig = {}): Promise => { - const localVarPath = `/logout`; + disable2FA: async (options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/auth/twofactorauth`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -9840,7 +10585,7 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; @@ -9858,16 +10603,13 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf }; }, /** - * Finishes the login sequence with a normal 2FA-generated code for accounts with 2FA-protection enabled. - * @summary Verify 2FA code - * @param {TwoFactorAuthCode} twoFactorAuthCode + * Begins the sequence for enabling time-based 2FA. + * @summary Enable time-based 2FA codes * @param {*} [options] Override http request option. * @throws {RequiredError} */ - verify2FA: async (twoFactorAuthCode: TwoFactorAuthCode, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'twoFactorAuthCode' is not null or undefined - assertParamExists('verify2FA', 'twoFactorAuthCode', twoFactorAuthCode) - const localVarPath = `/auth/twofactorauth/totp/verify`; + enable2FA: async (options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/auth/twofactorauth/totp/pending`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -9883,12 +10625,9 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf - localVarHeaderParameter['Content-Type'] = 'application/json'; - setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - localVarRequestOptions.data = serializeDataIfNeeded(twoFactorAuthCode, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), @@ -9896,16 +10635,13 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf }; }, /** - * Finishes the login sequence with an 2FA email code. - * @summary Verify 2FA email code - * @param {TwoFactorEmailCode} twoFactorEmailCode + * This endpoint does the following two operations: 1) Checks if you are already logged in by looking for a valid `auth` cookie. If you are have a valid auth cookie then no additional auth-related actions are taken. If you are **not** logged in then it will log you in with the `Authorization` header and set the `auth` cookie. The `auth` cookie will only be sent once. 2) If logged in, this function will also return the CurrentUser object containing detailed information about the currently logged in user. The auth string after `Authorization: Basic {string}` is a base64-encoded string of the username and password, both individually url-encoded, and then joined with a colon. > base64(urlencode(username):urlencode(password)) **WARNING: Session Limit:** Each authentication with login credentials counts as a separate session, out of which you have a limited amount. Make sure to save and reuse the `auth` cookie if you are often restarting the program. The provided API libraries automatically save cookies during runtime, but does not persist during restart. While it can be fine to use username/password during development, expect in production to very fast run into the rate-limit and be temporarily blocked from making new sessions until older ones expire. The exact number of simultaneous sessions is unknown/undisclosed. + * @summary Login and/or Get Current User Info * @param {*} [options] Override http request option. * @throws {RequiredError} */ - verify2FAEmailCode: async (twoFactorEmailCode: TwoFactorEmailCode, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'twoFactorEmailCode' is not null or undefined - assertParamExists('verify2FAEmailCode', 'twoFactorEmailCode', twoFactorEmailCode) - const localVarPath = `/auth/twofactorauth/emailotp/verify`; + getCurrentUser: async (options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/auth/user`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -9913,20 +10649,23 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; // authentication authCookie required + // authentication authHeader required + // http basic authentication required + setBasicAuthToObject(localVarRequestOptions, configuration) + + // authentication twoFactorAuthCookie required - - localVarHeaderParameter['Content-Type'] = 'application/json'; + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - localVarRequestOptions.data = serializeDataIfNeeded(twoFactorEmailCode, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), @@ -9934,7 +10673,216 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf }; }, /** - * Verify whether the currently provided Auth Token is valid. + * Gets the OTP (One Time Password) recovery codes for accounts with 2FA-protection enabled. + * @summary Get 2FA Recovery codes + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getRecoveryCodes: async (options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/auth/user/twofactorauth/otp`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Invalidates the login session. + * @summary Logout + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + logout: async (options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/logout`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * ~~Register a new user account.~~ **DEPRECATED:** Automated creation of accounts has no legitimate public third-party use case, and would be in violation of ToS §13.2: *By using the Platform, you agree not to: i. [...] use the Platform in a manner inconsistent with individual human usage* This endpoint is documented in the interest of completeness + * @summary Register User Account + * @param {RegisterUserAccountRequest} registerUserAccountRequest + * @param {*} [options] Override http request option. + * @deprecated + * @throws {RequiredError} + */ + registerUserAccount: async (registerUserAccountRequest: RegisterUserAccountRequest, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'registerUserAccountRequest' is not null or undefined + assertParamExists('registerUserAccount', 'registerUserAccountRequest', registerUserAccountRequest) + const localVarPath = `/auth/register`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(registerUserAccountRequest, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Requests a resend of pending email address confirmation email + * @summary Resend Email Confirmation + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + resendEmailConfirmation: async (options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/auth/user/resendEmail`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Finishes the login sequence with a normal 2FA-generated code for accounts with 2FA-protection enabled. + * @summary Verify 2FA code + * @param {TwoFactorAuthCode} twoFactorAuthCode + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + verify2FA: async (twoFactorAuthCode: TwoFactorAuthCode, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'twoFactorAuthCode' is not null or undefined + assertParamExists('verify2FA', 'twoFactorAuthCode', twoFactorAuthCode) + const localVarPath = `/auth/twofactorauth/totp/verify`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(twoFactorAuthCode, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Finishes the login sequence with an 2FA email code. + * @summary Verify 2FA email code + * @param {TwoFactorEmailCode} twoFactorEmailCode + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + verify2FAEmailCode: async (twoFactorEmailCode: TwoFactorEmailCode, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'twoFactorEmailCode' is not null or undefined + assertParamExists('verify2FAEmailCode', 'twoFactorEmailCode', twoFactorEmailCode) + const localVarPath = `/auth/twofactorauth/emailotp/verify`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(twoFactorEmailCode, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Verify whether the currently provided Auth Token is valid. * @summary Verify Auth Token * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -9965,6 +10913,86 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf options: localVarRequestOptions, }; }, + /** + * Verifies a login attempt for a user + * @summary Verify Login Place + * @param {string} token Token to verify login attempt. + * @param {string} [userId] Filter by UserID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + verifyLoginPlace: async (token: string, userId?: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'token' is not null or undefined + assertParamExists('verifyLoginPlace', 'token', token) + const localVarPath = `/auth/verifyLoginPlace`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (userId !== undefined) { + localVarQueryParameter['userId'] = userId; + } + + if (token !== undefined) { + localVarQueryParameter['token'] = token; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Finishes sequence for enabling time-based 2FA. + * @summary Verify Pending 2FA code + * @param {TwoFactorAuthCode} twoFactorAuthCode + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + verifyPending2FA: async (twoFactorAuthCode: TwoFactorAuthCode, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'twoFactorAuthCode' is not null or undefined + assertParamExists('verifyPending2FA', 'twoFactorAuthCode', twoFactorAuthCode) + const localVarPath = `/auth/twofactorauth/totp/pending/verify`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(twoFactorAuthCode, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, /** * Finishes the login sequence with an OTP (One Time Password) recovery code for accounts with 2FA-protection enabled. * @summary Verify 2FA code with Recovery code @@ -10013,6 +11041,16 @@ export const AuthenticationApiAxiosParamCreator = function (configuration?: Conf export const AuthenticationApiFp = function(configuration?: Configuration) { const localVarAxiosParamCreator = AuthenticationApiAxiosParamCreator(configuration) return { + /** + * Cancels the sequence for enabling time-based 2FA. + * @summary Cancel pending enabling of time-based 2FA codes + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async cancelPending2FA(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.cancelPending2FA(options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** * Checks if a user by a given `username`, `displayName` or `email` exist. This is used during registration to check if a username has already been taken, during change of displayName to check if a displayName is available, and during change of email to check if the email is already used. In the later two cases the `excludeUserId` is used to exclude oneself, otherwise the result would always be true. It is **REQUIRED** to include **AT LEAST** `username`, `displayName` **or** `email` query parameter. Although they can be combined - in addition with `excludeUserId` (generally to exclude yourself) - to further fine-tune the search. * @summary Check User Exists @@ -10027,6 +11065,18 @@ export const AuthenticationApiFp = function(configuration?: Configuration) { const localVarAxiosArgs = await localVarAxiosParamCreator.checkUserExists(email, displayName, username, excludeUserId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, + /** + * Confirms the email address for a user + * @summary Confirm Email + * @param {string} id Target user for which to verify email. + * @param {string} verifyEmail Token to verify email. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async confirmEmail(id: string, verifyEmail: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.confirmEmail(id, verifyEmail, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** * Deletes the account with given ID. Normal users only have permission to delete their own account. Account deletion is 14 days from this request, and will be cancelled if you do an authenticated request with the account afterwards. **VRC+ NOTE:** Despite the 14-days cooldown, any VRC+ subscription will be cancelled **immediately**. **METHOD NOTE:** Despite this being a Delete action, the method type required is PUT. * @summary Delete User @@ -10038,6 +11088,26 @@ export const AuthenticationApiFp = function(configuration?: Configuration) { const localVarAxiosArgs = await localVarAxiosParamCreator.deleteUser(userId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, + /** + * Disables 2FA for the currently logged in account + * @summary Disable 2FA + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async disable2FA(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.disable2FA(options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Begins the sequence for enabling time-based 2FA. + * @summary Enable time-based 2FA codes + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async enable2FA(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.enable2FA(options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** * This endpoint does the following two operations: 1) Checks if you are already logged in by looking for a valid `auth` cookie. If you are have a valid auth cookie then no additional auth-related actions are taken. If you are **not** logged in then it will log you in with the `Authorization` header and set the `auth` cookie. The `auth` cookie will only be sent once. 2) If logged in, this function will also return the CurrentUser object containing detailed information about the currently logged in user. The auth string after `Authorization: Basic {string}` is a base64-encoded string of the username and password, both individually url-encoded, and then joined with a colon. > base64(urlencode(username):urlencode(password)) **WARNING: Session Limit:** Each authentication with login credentials counts as a separate session, out of which you have a limited amount. Make sure to save and reuse the `auth` cookie if you are often restarting the program. The provided API libraries automatically save cookies during runtime, but does not persist during restart. While it can be fine to use username/password during development, expect in production to very fast run into the rate-limit and be temporarily blocked from making new sessions until older ones expire. The exact number of simultaneous sessions is unknown/undisclosed. * @summary Login and/or Get Current User Info @@ -10048,6 +11118,16 @@ export const AuthenticationApiFp = function(configuration?: Configuration) { const localVarAxiosArgs = await localVarAxiosParamCreator.getCurrentUser(options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, + /** + * Gets the OTP (One Time Password) recovery codes for accounts with 2FA-protection enabled. + * @summary Get 2FA Recovery codes + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getRecoveryCodes(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getRecoveryCodes(options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** * Invalidates the login session. * @summary Logout @@ -10058,6 +11138,28 @@ export const AuthenticationApiFp = function(configuration?: Configuration) { const localVarAxiosArgs = await localVarAxiosParamCreator.logout(options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, + /** + * ~~Register a new user account.~~ **DEPRECATED:** Automated creation of accounts has no legitimate public third-party use case, and would be in violation of ToS §13.2: *By using the Platform, you agree not to: i. [...] use the Platform in a manner inconsistent with individual human usage* This endpoint is documented in the interest of completeness + * @summary Register User Account + * @param {RegisterUserAccountRequest} registerUserAccountRequest + * @param {*} [options] Override http request option. + * @deprecated + * @throws {RequiredError} + */ + async registerUserAccount(registerUserAccountRequest: RegisterUserAccountRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.registerUserAccount(registerUserAccountRequest, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Requests a resend of pending email address confirmation email + * @summary Resend Email Confirmation + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async resendEmailConfirmation(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.resendEmailConfirmation(options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** * Finishes the login sequence with a normal 2FA-generated code for accounts with 2FA-protection enabled. * @summary Verify 2FA code @@ -10090,6 +11192,29 @@ export const AuthenticationApiFp = function(configuration?: Configuration) { const localVarAxiosArgs = await localVarAxiosParamCreator.verifyAuthToken(options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, + /** + * Verifies a login attempt for a user + * @summary Verify Login Place + * @param {string} token Token to verify login attempt. + * @param {string} [userId] Filter by UserID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async verifyLoginPlace(token: string, userId?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.verifyLoginPlace(token, userId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Finishes sequence for enabling time-based 2FA. + * @summary Verify Pending 2FA code + * @param {TwoFactorAuthCode} twoFactorAuthCode + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async verifyPending2FA(twoFactorAuthCode: TwoFactorAuthCode, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.verifyPending2FA(twoFactorAuthCode, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** * Finishes the login sequence with an OTP (One Time Password) recovery code for accounts with 2FA-protection enabled. * @summary Verify 2FA code with Recovery code @@ -10111,6 +11236,15 @@ export const AuthenticationApiFp = function(configuration?: Configuration) { export const AuthenticationApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { const localVarFp = AuthenticationApiFp(configuration) return { + /** + * Cancels the sequence for enabling time-based 2FA. + * @summary Cancel pending enabling of time-based 2FA codes + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + cancelPending2FA(options?: any): AxiosPromise { + return localVarFp.cancelPending2FA(options).then((request) => request(axios, basePath)); + }, /** * Checks if a user by a given `username`, `displayName` or `email` exist. This is used during registration to check if a username has already been taken, during change of displayName to check if a displayName is available, and during change of email to check if the email is already used. In the later two cases the `excludeUserId` is used to exclude oneself, otherwise the result would always be true. It is **REQUIRED** to include **AT LEAST** `username`, `displayName` **or** `email` query parameter. Although they can be combined - in addition with `excludeUserId` (generally to exclude yourself) - to further fine-tune the search. * @summary Check User Exists @@ -10124,6 +11258,17 @@ export const AuthenticationApiFactory = function (configuration?: Configuration, checkUserExists(email?: string, displayName?: string, username?: string, excludeUserId?: string, options?: any): AxiosPromise { return localVarFp.checkUserExists(email, displayName, username, excludeUserId, options).then((request) => request(axios, basePath)); }, + /** + * Confirms the email address for a user + * @summary Confirm Email + * @param {string} id Target user for which to verify email. + * @param {string} verifyEmail Token to verify email. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + confirmEmail(id: string, verifyEmail: string, options?: any): AxiosPromise { + return localVarFp.confirmEmail(id, verifyEmail, options).then((request) => request(axios, basePath)); + }, /** * Deletes the account with given ID. Normal users only have permission to delete their own account. Account deletion is 14 days from this request, and will be cancelled if you do an authenticated request with the account afterwards. **VRC+ NOTE:** Despite the 14-days cooldown, any VRC+ subscription will be cancelled **immediately**. **METHOD NOTE:** Despite this being a Delete action, the method type required is PUT. * @summary Delete User @@ -10134,6 +11279,24 @@ export const AuthenticationApiFactory = function (configuration?: Configuration, deleteUser(userId: string, options?: any): AxiosPromise { return localVarFp.deleteUser(userId, options).then((request) => request(axios, basePath)); }, + /** + * Disables 2FA for the currently logged in account + * @summary Disable 2FA + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + disable2FA(options?: any): AxiosPromise { + return localVarFp.disable2FA(options).then((request) => request(axios, basePath)); + }, + /** + * Begins the sequence for enabling time-based 2FA. + * @summary Enable time-based 2FA codes + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + enable2FA(options?: any): AxiosPromise { + return localVarFp.enable2FA(options).then((request) => request(axios, basePath)); + }, /** * This endpoint does the following two operations: 1) Checks if you are already logged in by looking for a valid `auth` cookie. If you are have a valid auth cookie then no additional auth-related actions are taken. If you are **not** logged in then it will log you in with the `Authorization` header and set the `auth` cookie. The `auth` cookie will only be sent once. 2) If logged in, this function will also return the CurrentUser object containing detailed information about the currently logged in user. The auth string after `Authorization: Basic {string}` is a base64-encoded string of the username and password, both individually url-encoded, and then joined with a colon. > base64(urlencode(username):urlencode(password)) **WARNING: Session Limit:** Each authentication with login credentials counts as a separate session, out of which you have a limited amount. Make sure to save and reuse the `auth` cookie if you are often restarting the program. The provided API libraries automatically save cookies during runtime, but does not persist during restart. While it can be fine to use username/password during development, expect in production to very fast run into the rate-limit and be temporarily blocked from making new sessions until older ones expire. The exact number of simultaneous sessions is unknown/undisclosed. * @summary Login and/or Get Current User Info @@ -10143,6 +11306,15 @@ export const AuthenticationApiFactory = function (configuration?: Configuration, getCurrentUser(options?: any): AxiosPromise { return localVarFp.getCurrentUser(options).then((request) => request(axios, basePath)); }, + /** + * Gets the OTP (One Time Password) recovery codes for accounts with 2FA-protection enabled. + * @summary Get 2FA Recovery codes + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getRecoveryCodes(options?: any): AxiosPromise { + return localVarFp.getRecoveryCodes(options).then((request) => request(axios, basePath)); + }, /** * Invalidates the login session. * @summary Logout @@ -10152,6 +11324,26 @@ export const AuthenticationApiFactory = function (configuration?: Configuration, logout(options?: any): AxiosPromise { return localVarFp.logout(options).then((request) => request(axios, basePath)); }, + /** + * ~~Register a new user account.~~ **DEPRECATED:** Automated creation of accounts has no legitimate public third-party use case, and would be in violation of ToS §13.2: *By using the Platform, you agree not to: i. [...] use the Platform in a manner inconsistent with individual human usage* This endpoint is documented in the interest of completeness + * @summary Register User Account + * @param {RegisterUserAccountRequest} registerUserAccountRequest + * @param {*} [options] Override http request option. + * @deprecated + * @throws {RequiredError} + */ + registerUserAccount(registerUserAccountRequest: RegisterUserAccountRequest, options?: any): AxiosPromise { + return localVarFp.registerUserAccount(registerUserAccountRequest, options).then((request) => request(axios, basePath)); + }, + /** + * Requests a resend of pending email address confirmation email + * @summary Resend Email Confirmation + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + resendEmailConfirmation(options?: any): AxiosPromise { + return localVarFp.resendEmailConfirmation(options).then((request) => request(axios, basePath)); + }, /** * Finishes the login sequence with a normal 2FA-generated code for accounts with 2FA-protection enabled. * @summary Verify 2FA code @@ -10181,6 +11373,27 @@ export const AuthenticationApiFactory = function (configuration?: Configuration, verifyAuthToken(options?: any): AxiosPromise { return localVarFp.verifyAuthToken(options).then((request) => request(axios, basePath)); }, + /** + * Verifies a login attempt for a user + * @summary Verify Login Place + * @param {string} token Token to verify login attempt. + * @param {string} [userId] Filter by UserID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + verifyLoginPlace(token: string, userId?: string, options?: any): AxiosPromise { + return localVarFp.verifyLoginPlace(token, userId, options).then((request) => request(axios, basePath)); + }, + /** + * Finishes sequence for enabling time-based 2FA. + * @summary Verify Pending 2FA code + * @param {TwoFactorAuthCode} twoFactorAuthCode + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + verifyPending2FA(twoFactorAuthCode: TwoFactorAuthCode, options?: any): AxiosPromise { + return localVarFp.verifyPending2FA(twoFactorAuthCode, options).then((request) => request(axios, basePath)); + }, /** * Finishes the login sequence with an OTP (One Time Password) recovery code for accounts with 2FA-protection enabled. * @summary Verify 2FA code with Recovery code @@ -10201,6 +11414,17 @@ export const AuthenticationApiFactory = function (configuration?: Configuration, * @extends {BaseAPI} */ export class AuthenticationApi extends BaseAPI { + /** + * Cancels the sequence for enabling time-based 2FA. + * @summary Cancel pending enabling of time-based 2FA codes + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AuthenticationApi + */ + public cancelPending2FA(options?: AxiosRequestConfig) { + return AuthenticationApiFp(this.configuration).cancelPending2FA(options).then((request) => request(this.axios, this.basePath)); + } + /** * Checks if a user by a given `username`, `displayName` or `email` exist. This is used during registration to check if a username has already been taken, during change of displayName to check if a displayName is available, and during change of email to check if the email is already used. In the later two cases the `excludeUserId` is used to exclude oneself, otherwise the result would always be true. It is **REQUIRED** to include **AT LEAST** `username`, `displayName` **or** `email` query parameter. Although they can be combined - in addition with `excludeUserId` (generally to exclude yourself) - to further fine-tune the search. * @summary Check User Exists @@ -10216,6 +11440,19 @@ export class AuthenticationApi extends BaseAPI { return AuthenticationApiFp(this.configuration).checkUserExists(email, displayName, username, excludeUserId, options).then((request) => request(this.axios, this.basePath)); } + /** + * Confirms the email address for a user + * @summary Confirm Email + * @param {string} id Target user for which to verify email. + * @param {string} verifyEmail Token to verify email. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AuthenticationApi + */ + public confirmEmail(id: string, verifyEmail: string, options?: AxiosRequestConfig) { + return AuthenticationApiFp(this.configuration).confirmEmail(id, verifyEmail, options).then((request) => request(this.axios, this.basePath)); + } + /** * Deletes the account with given ID. Normal users only have permission to delete their own account. Account deletion is 14 days from this request, and will be cancelled if you do an authenticated request with the account afterwards. **VRC+ NOTE:** Despite the 14-days cooldown, any VRC+ subscription will be cancelled **immediately**. **METHOD NOTE:** Despite this being a Delete action, the method type required is PUT. * @summary Delete User @@ -10228,6 +11465,28 @@ export class AuthenticationApi extends BaseAPI { return AuthenticationApiFp(this.configuration).deleteUser(userId, options).then((request) => request(this.axios, this.basePath)); } + /** + * Disables 2FA for the currently logged in account + * @summary Disable 2FA + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AuthenticationApi + */ + public disable2FA(options?: AxiosRequestConfig) { + return AuthenticationApiFp(this.configuration).disable2FA(options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Begins the sequence for enabling time-based 2FA. + * @summary Enable time-based 2FA codes + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AuthenticationApi + */ + public enable2FA(options?: AxiosRequestConfig) { + return AuthenticationApiFp(this.configuration).enable2FA(options).then((request) => request(this.axios, this.basePath)); + } + /** * This endpoint does the following two operations: 1) Checks if you are already logged in by looking for a valid `auth` cookie. If you are have a valid auth cookie then no additional auth-related actions are taken. If you are **not** logged in then it will log you in with the `Authorization` header and set the `auth` cookie. The `auth` cookie will only be sent once. 2) If logged in, this function will also return the CurrentUser object containing detailed information about the currently logged in user. The auth string after `Authorization: Basic {string}` is a base64-encoded string of the username and password, both individually url-encoded, and then joined with a colon. > base64(urlencode(username):urlencode(password)) **WARNING: Session Limit:** Each authentication with login credentials counts as a separate session, out of which you have a limited amount. Make sure to save and reuse the `auth` cookie if you are often restarting the program. The provided API libraries automatically save cookies during runtime, but does not persist during restart. While it can be fine to use username/password during development, expect in production to very fast run into the rate-limit and be temporarily blocked from making new sessions until older ones expire. The exact number of simultaneous sessions is unknown/undisclosed. * @summary Login and/or Get Current User Info @@ -10239,6 +11498,17 @@ export class AuthenticationApi extends BaseAPI { return AuthenticationApiFp(this.configuration).getCurrentUser(options).then((request) => request(this.axios, this.basePath)); } + /** + * Gets the OTP (One Time Password) recovery codes for accounts with 2FA-protection enabled. + * @summary Get 2FA Recovery codes + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AuthenticationApi + */ + public getRecoveryCodes(options?: AxiosRequestConfig) { + return AuthenticationApiFp(this.configuration).getRecoveryCodes(options).then((request) => request(this.axios, this.basePath)); + } + /** * Invalidates the login session. * @summary Logout @@ -10250,6 +11520,30 @@ export class AuthenticationApi extends BaseAPI { return AuthenticationApiFp(this.configuration).logout(options).then((request) => request(this.axios, this.basePath)); } + /** + * ~~Register a new user account.~~ **DEPRECATED:** Automated creation of accounts has no legitimate public third-party use case, and would be in violation of ToS §13.2: *By using the Platform, you agree not to: i. [...] use the Platform in a manner inconsistent with individual human usage* This endpoint is documented in the interest of completeness + * @summary Register User Account + * @param {RegisterUserAccountRequest} registerUserAccountRequest + * @param {*} [options] Override http request option. + * @deprecated + * @throws {RequiredError} + * @memberof AuthenticationApi + */ + public registerUserAccount(registerUserAccountRequest: RegisterUserAccountRequest, options?: AxiosRequestConfig) { + return AuthenticationApiFp(this.configuration).registerUserAccount(registerUserAccountRequest, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Requests a resend of pending email address confirmation email + * @summary Resend Email Confirmation + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AuthenticationApi + */ + public resendEmailConfirmation(options?: AxiosRequestConfig) { + return AuthenticationApiFp(this.configuration).resendEmailConfirmation(options).then((request) => request(this.axios, this.basePath)); + } + /** * Finishes the login sequence with a normal 2FA-generated code for accounts with 2FA-protection enabled. * @summary Verify 2FA code @@ -10285,6 +11579,31 @@ export class AuthenticationApi extends BaseAPI { return AuthenticationApiFp(this.configuration).verifyAuthToken(options).then((request) => request(this.axios, this.basePath)); } + /** + * Verifies a login attempt for a user + * @summary Verify Login Place + * @param {string} token Token to verify login attempt. + * @param {string} [userId] Filter by UserID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AuthenticationApi + */ + public verifyLoginPlace(token: string, userId?: string, options?: AxiosRequestConfig) { + return AuthenticationApiFp(this.configuration).verifyLoginPlace(token, userId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Finishes sequence for enabling time-based 2FA. + * @summary Verify Pending 2FA code + * @param {TwoFactorAuthCode} twoFactorAuthCode + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AuthenticationApi + */ + public verifyPending2FA(twoFactorAuthCode: TwoFactorAuthCode, options?: AxiosRequestConfig) { + return AuthenticationApiFp(this.configuration).verifyPending2FA(twoFactorAuthCode, options).then((request) => request(this.axios, this.basePath)); + } + /** * Finishes the login sequence with an OTP (One Time Password) recovery code for accounts with 2FA-protection enabled. * @summary Verify 2FA code with Recovery code @@ -10368,6 +11687,78 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Delete generated Impostor for that avatar. + * @summary Delete generated Impostor + * @param {string} avatarId Must be a valid avatar ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + deleteImpostor: async (avatarId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'avatarId' is not null or undefined + assertParamExists('deleteImpostor', 'avatarId', avatarId) + const localVarPath = `/avatars/{avatarId}/impostor` + .replace(`{${"avatarId"}}`, encodeURIComponent(String(avatarId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Enqueue Impostor generation for that avatar. + * @summary Enqueue Impostor generation + * @param {string} avatarId Must be a valid avatar ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + enqueueImpostor: async (avatarId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'avatarId' is not null or undefined + assertParamExists('enqueueImpostor', 'avatarId', avatarId) + const localVarPath = `/avatars/{avatarId}/impostor/enqueue` + .replace(`{${"avatarId"}}`, encodeURIComponent(String(avatarId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -10495,8 +11886,82 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati localVarQueryParameter['platform'] = platform; } - if (userId !== undefined) { - localVarQueryParameter['userId'] = userId; + if (userId !== undefined) { + localVarQueryParameter['userId'] = userId; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Gets service stats for queued impostor. + * @summary Get Impostor Queue Stats + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getImpostorQueueStats: async (options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/avatars/impostor/queue/stats`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * List licensed avatars. + * @summary List Licensed Avatars + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getLicensedAvatars: async (n?: number, offset?: number, options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/avatars/licensed`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + if (n !== undefined) { + localVarQueryParameter['n'] = n; + } + + if (offset !== undefined) { + localVarQueryParameter['offset'] = offset; } @@ -10787,6 +12252,28 @@ export const AvatarsApiFp = function(configuration?: Configuration) { const localVarAxiosArgs = await localVarAxiosParamCreator.deleteAvatar(avatarId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, + /** + * Delete generated Impostor for that avatar. + * @summary Delete generated Impostor + * @param {string} avatarId Must be a valid avatar ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async deleteImpostor(avatarId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.deleteImpostor(avatarId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Enqueue Impostor generation for that avatar. + * @summary Enqueue Impostor generation + * @param {string} avatarId Must be a valid avatar ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async enqueueImpostor(avatarId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.enqueueImpostor(avatarId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** * Get information about a specific Avatar. * @summary Get Avatar @@ -10821,6 +12308,28 @@ export const AvatarsApiFp = function(configuration?: Configuration) { const localVarAxiosArgs = await localVarAxiosParamCreator.getFavoritedAvatars(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, + /** + * Gets service stats for queued impostor. + * @summary Get Impostor Queue Stats + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getImpostorQueueStats(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getImpostorQueueStats(options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * List licensed avatars. + * @summary List Licensed Avatars + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getLicensedAvatars(n?: number, offset?: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getLicensedAvatars(n, offset, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** * Get the current avatar for the user. This will return an error for any other user than the one logged in. * @summary Get Own Avatar @@ -10919,6 +12428,26 @@ export const AvatarsApiFactory = function (configuration?: Configuration, basePa deleteAvatar(avatarId: string, options?: any): AxiosPromise { return localVarFp.deleteAvatar(avatarId, options).then((request) => request(axios, basePath)); }, + /** + * Delete generated Impostor for that avatar. + * @summary Delete generated Impostor + * @param {string} avatarId Must be a valid avatar ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + deleteImpostor(avatarId: string, options?: any): AxiosPromise { + return localVarFp.deleteImpostor(avatarId, options).then((request) => request(axios, basePath)); + }, + /** + * Enqueue Impostor generation for that avatar. + * @summary Enqueue Impostor generation + * @param {string} avatarId Must be a valid avatar ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + enqueueImpostor(avatarId: string, options?: any): AxiosPromise { + return localVarFp.enqueueImpostor(avatarId, options).then((request) => request(axios, basePath)); + }, /** * Get information about a specific Avatar. * @summary Get Avatar @@ -10951,6 +12480,26 @@ export const AvatarsApiFactory = function (configuration?: Configuration, basePa getFavoritedAvatars(featured?: boolean, sort?: SortOption, n?: number, order?: OrderOption, offset?: number, search?: string, tag?: string, notag?: string, releaseStatus?: ReleaseStatus, maxUnityVersion?: string, minUnityVersion?: string, platform?: string, userId?: string, options?: any): AxiosPromise> { return localVarFp.getFavoritedAvatars(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options).then((request) => request(axios, basePath)); }, + /** + * Gets service stats for queued impostor. + * @summary Get Impostor Queue Stats + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getImpostorQueueStats(options?: any): AxiosPromise { + return localVarFp.getImpostorQueueStats(options).then((request) => request(axios, basePath)); + }, + /** + * List licensed avatars. + * @summary List Licensed Avatars + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getLicensedAvatars(n?: number, offset?: number, options?: any): AxiosPromise> { + return localVarFp.getLicensedAvatars(n, offset, options).then((request) => request(axios, basePath)); + }, /** * Get the current avatar for the user. This will return an error for any other user than the one logged in. * @summary Get Own Avatar @@ -11048,6 +12597,30 @@ export class AvatarsApi extends BaseAPI { return AvatarsApiFp(this.configuration).deleteAvatar(avatarId, options).then((request) => request(this.axios, this.basePath)); } + /** + * Delete generated Impostor for that avatar. + * @summary Delete generated Impostor + * @param {string} avatarId Must be a valid avatar ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AvatarsApi + */ + public deleteImpostor(avatarId: string, options?: AxiosRequestConfig) { + return AvatarsApiFp(this.configuration).deleteImpostor(avatarId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Enqueue Impostor generation for that avatar. + * @summary Enqueue Impostor generation + * @param {string} avatarId Must be a valid avatar ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AvatarsApi + */ + public enqueueImpostor(avatarId: string, options?: AxiosRequestConfig) { + return AvatarsApiFp(this.configuration).enqueueImpostor(avatarId, options).then((request) => request(this.axios, this.basePath)); + } + /** * Get information about a specific Avatar. * @summary Get Avatar @@ -11084,6 +12657,30 @@ export class AvatarsApi extends BaseAPI { return AvatarsApiFp(this.configuration).getFavoritedAvatars(featured, sort, n, order, offset, search, tag, notag, releaseStatus, maxUnityVersion, minUnityVersion, platform, userId, options).then((request) => request(this.axios, this.basePath)); } + /** + * Gets service stats for queued impostor. + * @summary Get Impostor Queue Stats + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AvatarsApi + */ + public getImpostorQueueStats(options?: AxiosRequestConfig) { + return AvatarsApiFp(this.configuration).getImpostorQueueStats(options).then((request) => request(this.axios, this.basePath)); + } + + /** + * List licensed avatars. + * @summary List Licensed Avatars + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AvatarsApi + */ + public getLicensedAvatars(n?: number, offset?: number, options?: AxiosRequestConfig) { + return AvatarsApiFp(this.configuration).getLicensedAvatars(n, offset, options).then((request) => request(this.axios, this.basePath)); + } + /** * Get the current avatar for the user. This will return an error for any other user than the one logged in. * @summary Get Own Avatar @@ -12050,42 +13647,6 @@ export const FavoritesApiAxiosParamCreator = function (configuration?: Configura - setSearchParams(localVarUrlObj, localVarQueryParameter); - let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; - localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - - return { - url: toPathString(localVarUrlObj), - options: localVarRequestOptions, - }; - }, - /** - * Return information about a specific Favorite. - * @summary Show Favorite - * @param {string} favoriteId Must be a valid favorite ID. - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - getFavorite: async (favoriteId: string, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'favoriteId' is not null or undefined - assertParamExists('getFavorite', 'favoriteId', favoriteId) - const localVarPath = `/favorites/{favoriteId}` - .replace(`{${"favoriteId"}}`, encodeURIComponent(String(favoriteId))); - // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); - let baseOptions; - if (configuration) { - baseOptions = configuration.baseOptions; - } - - const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; - const localVarHeaderParameter = {} as any; - const localVarQueryParameter = {} as any; - - // authentication authCookie required - - - setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -12144,11 +13705,12 @@ export const FavoritesApiAxiosParamCreator = function (configuration?: Configura * @summary List Favorite Groups * @param {number} [n] The number of objects to return. * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [userId] Target user to see information on, admin-only. * @param {string} [ownerId] The owner of whoms favorite groups to return. Must be a UserID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFavoriteGroups: async (n?: number, offset?: number, ownerId?: string, options: AxiosRequestConfig = {}): Promise => { + getFavoriteGroups: async (n?: number, offset?: number, userId?: string, ownerId?: string, options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/favorite/groups`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -12171,6 +13733,10 @@ export const FavoritesApiAxiosParamCreator = function (configuration?: Configura localVarQueryParameter['offset'] = offset; } + if (userId !== undefined) { + localVarQueryParameter['userId'] = userId; + } + if (ownerId !== undefined) { localVarQueryParameter['ownerId'] = ownerId; } @@ -12388,17 +13954,6 @@ export const FavoritesApiFp = function(configuration?: Configuration) { const localVarAxiosArgs = await localVarAxiosParamCreator.clearFavoriteGroup(favoriteGroupType, favoriteGroupName, userId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, - /** - * Return information about a specific Favorite. - * @summary Show Favorite - * @param {string} favoriteId Must be a valid favorite ID. - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - async getFavorite(favoriteId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getFavorite(favoriteId, options); - return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); - }, /** * Fetch information about a specific favorite group. * @summary Show Favorite Group @@ -12417,12 +13972,13 @@ export const FavoritesApiFp = function(configuration?: Configuration) { * @summary List Favorite Groups * @param {number} [n] The number of objects to return. * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [userId] Target user to see information on, admin-only. * @param {string} [ownerId] The owner of whoms favorite groups to return. Must be a UserID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getFavoriteGroups(n?: number, offset?: number, ownerId?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getFavoriteGroups(n, offset, ownerId, options); + async getFavoriteGroups(n?: number, offset?: number, userId?: string, ownerId?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getFavoriteGroups(n, offset, userId, ownerId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** @@ -12506,16 +14062,6 @@ export const FavoritesApiFactory = function (configuration?: Configuration, base clearFavoriteGroup(favoriteGroupType: 'world' | 'friend' | 'avatar', favoriteGroupName: string, userId: string, options?: any): AxiosPromise { return localVarFp.clearFavoriteGroup(favoriteGroupType, favoriteGroupName, userId, options).then((request) => request(axios, basePath)); }, - /** - * Return information about a specific Favorite. - * @summary Show Favorite - * @param {string} favoriteId Must be a valid favorite ID. - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - getFavorite(favoriteId: string, options?: any): AxiosPromise { - return localVarFp.getFavorite(favoriteId, options).then((request) => request(axios, basePath)); - }, /** * Fetch information about a specific favorite group. * @summary Show Favorite Group @@ -12533,12 +14079,13 @@ export const FavoritesApiFactory = function (configuration?: Configuration, base * @summary List Favorite Groups * @param {number} [n] The number of objects to return. * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [userId] Target user to see information on, admin-only. * @param {string} [ownerId] The owner of whoms favorite groups to return. Must be a UserID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFavoriteGroups(n?: number, offset?: number, ownerId?: string, options?: any): AxiosPromise> { - return localVarFp.getFavoriteGroups(n, offset, ownerId, options).then((request) => request(axios, basePath)); + getFavoriteGroups(n?: number, offset?: number, userId?: string, ownerId?: string, options?: any): AxiosPromise> { + return localVarFp.getFavoriteGroups(n, offset, userId, ownerId, options).then((request) => request(axios, basePath)); }, /** * Return information about a specific Favorite. @@ -12621,18 +14168,6 @@ export class FavoritesApi extends BaseAPI { return FavoritesApiFp(this.configuration).clearFavoriteGroup(favoriteGroupType, favoriteGroupName, userId, options).then((request) => request(this.axios, this.basePath)); } - /** - * Return information about a specific Favorite. - * @summary Show Favorite - * @param {string} favoriteId Must be a valid favorite ID. - * @param {*} [options] Override http request option. - * @throws {RequiredError} - * @memberof FavoritesApi - */ - public getFavorite(favoriteId: string, options?: AxiosRequestConfig) { - return FavoritesApiFp(this.configuration).getFavorite(favoriteId, options).then((request) => request(this.axios, this.basePath)); - } - /** * Fetch information about a specific favorite group. * @summary Show Favorite Group @@ -12652,13 +14187,14 @@ export class FavoritesApi extends BaseAPI { * @summary List Favorite Groups * @param {number} [n] The number of objects to return. * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {string} [userId] Target user to see information on, admin-only. * @param {string} [ownerId] The owner of whoms favorite groups to return. Must be a UserID. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof FavoritesApi */ - public getFavoriteGroups(n?: number, offset?: number, ownerId?: string, options?: AxiosRequestConfig) { - return FavoritesApiFp(this.configuration).getFavoriteGroups(n, offset, ownerId, options).then((request) => request(this.axios, this.basePath)); + public getFavoriteGroups(n?: number, offset?: number, userId?: string, ownerId?: string, options?: AxiosRequestConfig) { + return FavoritesApiFp(this.configuration).getFavoriteGroups(n, offset, userId, ownerId, options).then((request) => request(this.axios, this.basePath)); } /** @@ -13258,6 +14794,162 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Upload a gallery image + * @summary Upload gallery image + * @param {File} file The binary blob of the png file. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + uploadGalleryImage: async (file: File, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'file' is not null or undefined + assertParamExists('uploadGalleryImage', 'file', file) + const localVarPath = `/gallery`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + const localVarFormParams = new ((configuration && configuration.formDataCtor) || FormData)(); + + // authentication authCookie required + + + if (file !== undefined) { + localVarFormParams.append('file', file as any); + } + + + localVarHeaderParameter['Content-Type'] = 'multipart/form-data'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = localVarFormParams; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Upload an icon + * @summary Upload icon + * @param {File} file The binary blob of the png file. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + uploadIcon: async (file: File, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'file' is not null or undefined + assertParamExists('uploadIcon', 'file', file) + const localVarPath = `/icon`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + const localVarFormParams = new ((configuration && configuration.formDataCtor) || FormData)(); + + // authentication authCookie required + + + if (file !== undefined) { + localVarFormParams.append('file', file as any); + } + + + localVarHeaderParameter['Content-Type'] = 'multipart/form-data'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = localVarFormParams; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Upload an image, which can be an icon, gallery image, sticker or emoji + * @summary Upload gallery image, icon, emoji or sticker + * @param {File} file The binary blob of the png file. + * @param {string} tag Needs to be either icon, gallery, sticker, emoji, or emojianimated + * @param {number} [frames] Required for emojianimated. Total number of frames to be animated (2-64) + * @param {number} [framesOverTime] Required for emojianimated. Animation frames per second (1-64) + * @param {string} [animationStyle] Animation style for sticker, required for emoji. + * @param {string} [maskTag] Mask of the sticker, optional for emoji. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + uploadImage: async (file: File, tag: string, frames?: number, framesOverTime?: number, animationStyle?: string, maskTag?: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'file' is not null or undefined + assertParamExists('uploadImage', 'file', file) + // verify required parameter 'tag' is not null or undefined + assertParamExists('uploadImage', 'tag', tag) + const localVarPath = `/file/image`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + const localVarFormParams = new ((configuration && configuration.formDataCtor) || FormData)(); + + // authentication authCookie required + + + if (file !== undefined) { + localVarFormParams.append('file', file as any); + } + + if (tag !== undefined) { + localVarFormParams.append('tag', tag as any); + } + + if (frames !== undefined) { + localVarFormParams.append('frames', frames as any); + } + + if (framesOverTime !== undefined) { + localVarFormParams.append('framesOverTime', framesOverTime as any); + } + + if (animationStyle !== undefined) { + localVarFormParams.append('animationStyle', animationStyle as any); + } + + if (maskTag !== undefined) { + localVarFormParams.append('maskTag', maskTag as any); + } + + + localVarHeaderParameter['Content-Type'] = 'multipart/form-data'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = localVarFormParams; + return { url: toPathString(localVarUrlObj), options: localVarRequestOptions, @@ -13327,7 +15019,7 @@ export const FilesApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async downloadFileVersion(fileId: string, versionId: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async downloadFileVersion(fileId: string, versionId: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.downloadFileVersion(fileId, versionId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -13433,6 +15125,44 @@ export const FilesApiFp = function(configuration?: Configuration) { const localVarAxiosArgs = await localVarAxiosParamCreator.startFileDataUpload(fileId, versionId, fileType, partNumber, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, + /** + * Upload a gallery image + * @summary Upload gallery image + * @param {File} file The binary blob of the png file. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async uploadGalleryImage(file: File, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.uploadGalleryImage(file, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Upload an icon + * @summary Upload icon + * @param {File} file The binary blob of the png file. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async uploadIcon(file: File, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.uploadIcon(file, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Upload an image, which can be an icon, gallery image, sticker or emoji + * @summary Upload gallery image, icon, emoji or sticker + * @param {File} file The binary blob of the png file. + * @param {string} tag Needs to be either icon, gallery, sticker, emoji, or emojianimated + * @param {number} [frames] Required for emojianimated. Total number of frames to be animated (2-64) + * @param {number} [framesOverTime] Required for emojianimated. Animation frames per second (1-64) + * @param {string} [animationStyle] Animation style for sticker, required for emoji. + * @param {string} [maskTag] Mask of the sticker, optional for emoji. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async uploadImage(file: File, tag: string, frames?: number, framesOverTime?: number, animationStyle?: string, maskTag?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.uploadImage(file, tag, frames, framesOverTime, animationStyle, maskTag, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, } }; @@ -13493,7 +15223,7 @@ export const FilesApiFactory = function (configuration?: Configuration, basePath * @param {*} [options] Override http request option. * @throws {RequiredError} */ - downloadFileVersion(fileId: string, versionId: number, options?: any): AxiosPromise { + downloadFileVersion(fileId: string, versionId: number, options?: any): AxiosPromise { return localVarFp.downloadFileVersion(fileId, versionId, options).then((request) => request(axios, basePath)); }, /** @@ -13590,6 +15320,41 @@ export const FilesApiFactory = function (configuration?: Configuration, basePath startFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', partNumber?: number, options?: any): AxiosPromise { return localVarFp.startFileDataUpload(fileId, versionId, fileType, partNumber, options).then((request) => request(axios, basePath)); }, + /** + * Upload a gallery image + * @summary Upload gallery image + * @param {File} file The binary blob of the png file. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + uploadGalleryImage(file: File, options?: any): AxiosPromise { + return localVarFp.uploadGalleryImage(file, options).then((request) => request(axios, basePath)); + }, + /** + * Upload an icon + * @summary Upload icon + * @param {File} file The binary blob of the png file. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + uploadIcon(file: File, options?: any): AxiosPromise { + return localVarFp.uploadIcon(file, options).then((request) => request(axios, basePath)); + }, + /** + * Upload an image, which can be an icon, gallery image, sticker or emoji + * @summary Upload gallery image, icon, emoji or sticker + * @param {File} file The binary blob of the png file. + * @param {string} tag Needs to be either icon, gallery, sticker, emoji, or emojianimated + * @param {number} [frames] Required for emojianimated. Total number of frames to be animated (2-64) + * @param {number} [framesOverTime] Required for emojianimated. Animation frames per second (1-64) + * @param {string} [animationStyle] Animation style for sticker, required for emoji. + * @param {string} [maskTag] Mask of the sticker, optional for emoji. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + uploadImage(file: File, tag: string, frames?: number, framesOverTime?: number, animationStyle?: string, maskTag?: string, options?: any): AxiosPromise { + return localVarFp.uploadImage(file, tag, frames, framesOverTime, animationStyle, maskTag, options).then((request) => request(axios, basePath)); + }, }; }; @@ -13772,6 +15537,47 @@ export class FilesApi extends BaseAPI { public startFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', partNumber?: number, options?: AxiosRequestConfig) { return FilesApiFp(this.configuration).startFileDataUpload(fileId, versionId, fileType, partNumber, options).then((request) => request(this.axios, this.basePath)); } + + /** + * Upload a gallery image + * @summary Upload gallery image + * @param {File} file The binary blob of the png file. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FilesApi + */ + public uploadGalleryImage(file: File, options?: AxiosRequestConfig) { + return FilesApiFp(this.configuration).uploadGalleryImage(file, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Upload an icon + * @summary Upload icon + * @param {File} file The binary blob of the png file. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FilesApi + */ + public uploadIcon(file: File, options?: AxiosRequestConfig) { + return FilesApiFp(this.configuration).uploadIcon(file, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Upload an image, which can be an icon, gallery image, sticker or emoji + * @summary Upload gallery image, icon, emoji or sticker + * @param {File} file The binary blob of the png file. + * @param {string} tag Needs to be either icon, gallery, sticker, emoji, or emojianimated + * @param {number} [frames] Required for emojianimated. Total number of frames to be animated (2-64) + * @param {number} [framesOverTime] Required for emojianimated. Animation frames per second (1-64) + * @param {string} [animationStyle] Animation style for sticker, required for emoji. + * @param {string} [maskTag] Mask of the sticker, optional for emoji. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FilesApi + */ + public uploadImage(file: File, tag: string, frames?: number, framesOverTime?: number, animationStyle?: string, maskTag?: string, options?: AxiosRequestConfig) { + return FilesApiFp(this.configuration).uploadImage(file, tag, frames, framesOverTime, animationStyle, maskTag, options).then((request) => request(this.axios, this.basePath)); + } } @@ -15350,9 +17156,9 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getGroupPost: async (groupId: string, n?: number, offset?: number, publicOnly?: boolean, options: AxiosRequestConfig = {}): Promise => { + getGroupPosts: async (groupId: string, n?: number, offset?: number, publicOnly?: boolean, options: AxiosRequestConfig = {}): Promise => { // verify required parameter 'groupId' is not null or undefined - assertParamExists('getGroupPost', 'groupId', groupId) + assertParamExists('getGroupPosts', 'groupId', groupId) const localVarPath = `/groups/{groupId}/posts` .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. @@ -15433,6 +17239,38 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Obtain predefined templates for group roles + * @summary Get Group Role Templates + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getGroupRoleTemplates: async (options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/groups/roleTemplates`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -16337,8 +18175,8 @@ export const GroupsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getGroupPost(groupId: string, n?: number, offset?: number, publicOnly?: boolean, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getGroupPost(groupId, n, offset, publicOnly, options); + async getGroupPosts(groupId: string, n?: number, offset?: number, publicOnly?: boolean, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getGroupPosts(groupId, n, offset, publicOnly, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** @@ -16355,6 +18193,16 @@ export const GroupsApiFp = function(configuration?: Configuration) { const localVarAxiosArgs = await localVarAxiosParamCreator.getGroupRequests(groupId, n, offset, blocked, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, + /** + * Obtain predefined templates for group roles + * @summary Get Group Role Templates + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getGroupRoleTemplates(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<{ [key: string]: GroupRoleTemplateValues; }>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getGroupRoleTemplates(options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** * Returns a Group Role by ID. * @summary Get Group Roles @@ -16842,8 +18690,8 @@ export const GroupsApiFactory = function (configuration?: Configuration, basePat * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getGroupPost(groupId: string, n?: number, offset?: number, publicOnly?: boolean, options?: any): AxiosPromise { - return localVarFp.getGroupPost(groupId, n, offset, publicOnly, options).then((request) => request(axios, basePath)); + getGroupPosts(groupId: string, n?: number, offset?: number, publicOnly?: boolean, options?: any): AxiosPromise { + return localVarFp.getGroupPosts(groupId, n, offset, publicOnly, options).then((request) => request(axios, basePath)); }, /** * Returns a list of members that have requested to join the Group. @@ -16858,6 +18706,15 @@ export const GroupsApiFactory = function (configuration?: Configuration, basePat getGroupRequests(groupId: string, n?: number, offset?: number, blocked?: boolean, options?: any): AxiosPromise> { return localVarFp.getGroupRequests(groupId, n, offset, blocked, options).then((request) => request(axios, basePath)); }, + /** + * Obtain predefined templates for group roles + * @summary Get Group Role Templates + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getGroupRoleTemplates(options?: any): AxiosPromise<{ [key: string]: GroupRoleTemplateValues; }> { + return localVarFp.getGroupRoleTemplates(options).then((request) => request(axios, basePath)); + }, /** * Returns a Group Role by ID. * @summary Get Group Roles @@ -17387,8 +19244,8 @@ export class GroupsApi extends BaseAPI { * @throws {RequiredError} * @memberof GroupsApi */ - public getGroupPost(groupId: string, n?: number, offset?: number, publicOnly?: boolean, options?: AxiosRequestConfig) { - return GroupsApiFp(this.configuration).getGroupPost(groupId, n, offset, publicOnly, options).then((request) => request(this.axios, this.basePath)); + public getGroupPosts(groupId: string, n?: number, offset?: number, publicOnly?: boolean, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).getGroupPosts(groupId, n, offset, publicOnly, options).then((request) => request(this.axios, this.basePath)); } /** @@ -17406,6 +19263,17 @@ export class GroupsApi extends BaseAPI { return GroupsApiFp(this.configuration).getGroupRequests(groupId, n, offset, blocked, options).then((request) => request(this.axios, this.basePath)); } + /** + * Obtain predefined templates for group roles + * @summary Get Group Role Templates + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof GroupsApi + */ + public getGroupRoleTemplates(options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).getGroupRoleTemplates(options).then((request) => request(this.axios, this.basePath)); + } + /** * Returns a Group Role by ID. * @summary Get Group Roles @@ -17588,7 +19456,7 @@ export class GroupsApi extends BaseAPI { export const InstancesApiAxiosParamCreator = function (configuration?: Configuration) { return { /** - * Close an instance or update the closedAt time when it will be closed. You can only close an instance if the ownerId is yourself or if the instance owner is a group and you have the `group-instance-moderate` permission. + * Close an instance or update the closedAt time when it will be closed. You can only close an instance if the ownerId is yourself or if the instance owner is a group and you have the `group-instance-manage` permission. * @summary Close Instance * @param {string} worldId Must be a valid world ID. * @param {string} instanceId Must be a valid instance ID. @@ -17804,7 +19672,7 @@ export const InstancesApiFp = function(configuration?: Configuration) { const localVarAxiosParamCreator = InstancesApiAxiosParamCreator(configuration) return { /** - * Close an instance or update the closedAt time when it will be closed. You can only close an instance if the ownerId is yourself or if the instance owner is a group and you have the `group-instance-moderate` permission. + * Close an instance or update the closedAt time when it will be closed. You can only close an instance if the ownerId is yourself or if the instance owner is a group and you have the `group-instance-manage` permission. * @summary Close Instance * @param {string} worldId Must be a valid world ID. * @param {string} instanceId Must be a valid instance ID. @@ -17874,7 +19742,7 @@ export const InstancesApiFactory = function (configuration?: Configuration, base const localVarFp = InstancesApiFp(configuration) return { /** - * Close an instance or update the closedAt time when it will be closed. You can only close an instance if the ownerId is yourself or if the instance owner is a group and you have the `group-instance-moderate` permission. + * Close an instance or update the closedAt time when it will be closed. You can only close an instance if the ownerId is yourself or if the instance owner is a group and you have the `group-instance-manage` permission. * @summary Close Instance * @param {string} worldId Must be a valid world ID. * @param {string} instanceId Must be a valid instance ID. @@ -17939,7 +19807,7 @@ export const InstancesApiFactory = function (configuration?: Configuration, base */ export class InstancesApi extends BaseAPI { /** - * Close an instance or update the closedAt time when it will be closed. You can only close an instance if the ownerId is yourself or if the instance owner is a group and you have the `group-instance-moderate` permission. + * Close an instance or update the closedAt time when it will be closed. You can only close an instance if the ownerId is yourself or if the instance owner is a group and you have the `group-instance-manage` permission. * @summary Close Instance * @param {string} worldId Must be a valid world ID. * @param {string} instanceId Must be a valid instance ID. @@ -18177,6 +20045,60 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio options: localVarRequestOptions, }; }, + /** + * Sends an photo invite to a user. Returns the Notification of type `invite` that was sent. + * @summary Invite User with photo + * @param {string} userId Must be a valid user ID. + * @param {File} image The binary blob of the png file. + * @param {InviteRequest} data + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + inviteUserWithPhoto: async (userId: string, image: File, data: InviteRequest, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'userId' is not null or undefined + assertParamExists('inviteUserWithPhoto', 'userId', userId) + // verify required parameter 'image' is not null or undefined + assertParamExists('inviteUserWithPhoto', 'image', image) + // verify required parameter 'data' is not null or undefined + assertParamExists('inviteUserWithPhoto', 'data', data) + const localVarPath = `/invite/{userId}/photo` + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + const localVarFormParams = new ((configuration && configuration.formDataCtor) || FormData)(); + + // authentication authCookie required + + + if (image !== undefined) { + localVarFormParams.append('image', image as any); + } + + if (data !== undefined) { + localVarFormParams.append('data', new Blob([JSON.stringify(data)], { type: "application/json", })); + } + + + localVarHeaderParameter['Content-Type'] = 'multipart/form-data'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = localVarFormParams; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, /** * Requests an invite from a user. Returns the Notification of type `requestInvite` that was sent. * @summary Request Invite @@ -18217,6 +20139,60 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio options: localVarRequestOptions, }; }, + /** + * Requests with photo an invite from a user. Returns the Notification of type `requestInvite` that was sent. + * @summary Request Invite with photo + * @param {string} userId Must be a valid user ID. + * @param {File} image The binary blob of the png file. + * @param {RequestInviteRequest} data + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + requestInviteWithPhoto: async (userId: string, image: File, data: RequestInviteRequest, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'userId' is not null or undefined + assertParamExists('requestInviteWithPhoto', 'userId', userId) + // verify required parameter 'image' is not null or undefined + assertParamExists('requestInviteWithPhoto', 'image', image) + // verify required parameter 'data' is not null or undefined + assertParamExists('requestInviteWithPhoto', 'data', data) + const localVarPath = `/requestInvite/{userId}/photo` + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + const localVarFormParams = new ((configuration && configuration.formDataCtor) || FormData)(); + + // authentication authCookie required + + + if (image !== undefined) { + localVarFormParams.append('image', image as any); + } + + if (data !== undefined) { + localVarFormParams.append('data', new Blob([JSON.stringify(data)], { type: "application/json", })); + } + + + localVarHeaderParameter['Content-Type'] = 'multipart/form-data'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = localVarFormParams; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, /** * Resets a single Invite Message back to its original message, and then returns a list of all of them. Admin Credentials are required to update messages of other users! Resetting a message respects the rate-limit, so it is not possible to reset within the 60 minutes countdown. Resetting it does however not set the rate-limit to 60 like when editing it. It is possible to edit it right after resetting it. Trying to edit a message before the cooldown timer expires results in a 429 \"Too Fast Error\". Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite The DELETE endpoint does not have/require any request body. * @summary Reset Invite Message @@ -18262,7 +20238,7 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio }; }, /** - * Respond to an invite request by sending a world invite to the requesting user. `:notificationId` is the ID of the requesting notification. + * Respond to an invite or invite request without accepting it. `:notificationId` is the ID of the requesting notification. In case the notification being replied to is an invite, the `responseSlot` refers to a response message from the the `message` collection. In case the notification is an invite request, it will refer to one from the `requestResponse` collection instead. * @summary Respond Invite * @param {string} notificationId Must be a valid notification ID. * @param {InviteResponse} inviteResponse Slot number of the Response Message to use when responding to a user. @@ -18303,6 +20279,60 @@ export const InviteApiAxiosParamCreator = function (configuration?: Configuratio options: localVarRequestOptions, }; }, + /** + * Respond with photo to an invite or invite request without accepting it. `:notificationId` is the ID of the requesting notification. In case the notification being replied to is an invite, the `responseSlot` refers to a response message from the the `message` collection. In case the notification is an invite request, it will refer to one from the `requestResponse` collection instead.\' + * @summary Respond Invite with photo + * @param {string} notificationId Must be a valid notification ID. + * @param {File} image The binary blob of the png file. + * @param {InviteResponse} data + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + respondInviteWithPhoto: async (notificationId: string, image: File, data: InviteResponse, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'notificationId' is not null or undefined + assertParamExists('respondInviteWithPhoto', 'notificationId', notificationId) + // verify required parameter 'image' is not null or undefined + assertParamExists('respondInviteWithPhoto', 'image', image) + // verify required parameter 'data' is not null or undefined + assertParamExists('respondInviteWithPhoto', 'data', data) + const localVarPath = `/invite/{notificationId}/response/photo` + .replace(`{${"notificationId"}}`, encodeURIComponent(String(notificationId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + const localVarFormParams = new ((configuration && configuration.formDataCtor) || FormData)(); + + // authentication authCookie required + + + if (image !== undefined) { + localVarFormParams.append('image', image as any); + } + + if (data !== undefined) { + localVarFormParams.append('data', new Blob([JSON.stringify(data)], { type: "application/json", })); + } + + + localVarHeaderParameter['Content-Type'] = 'multipart/form-data'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = localVarFormParams; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, /** * Updates a single Invite Message and then returns a list of all of them. Admin Credentials are required to update messages of other users! Updating a message automatically sets the cooldown timer to 60 minutes. Trying to edit a message before the cooldown timer expires results in a 429 \"Too Fast Error\". Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite * @summary Update Invite Message @@ -18410,6 +20440,19 @@ export const InviteApiFp = function(configuration?: Configuration) { const localVarAxiosArgs = await localVarAxiosParamCreator.inviteUser(userId, inviteRequest, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, + /** + * Sends an photo invite to a user. Returns the Notification of type `invite` that was sent. + * @summary Invite User with photo + * @param {string} userId Must be a valid user ID. + * @param {File} image The binary blob of the png file. + * @param {InviteRequest} data + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async inviteUserWithPhoto(userId: string, image: File, data: InviteRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.inviteUserWithPhoto(userId, image, data, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** * Requests an invite from a user. Returns the Notification of type `requestInvite` that was sent. * @summary Request Invite @@ -18422,6 +20465,19 @@ export const InviteApiFp = function(configuration?: Configuration) { const localVarAxiosArgs = await localVarAxiosParamCreator.requestInvite(userId, requestInviteRequest, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, + /** + * Requests with photo an invite from a user. Returns the Notification of type `requestInvite` that was sent. + * @summary Request Invite with photo + * @param {string} userId Must be a valid user ID. + * @param {File} image The binary blob of the png file. + * @param {RequestInviteRequest} data + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async requestInviteWithPhoto(userId: string, image: File, data: RequestInviteRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.requestInviteWithPhoto(userId, image, data, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** * Resets a single Invite Message back to its original message, and then returns a list of all of them. Admin Credentials are required to update messages of other users! Resetting a message respects the rate-limit, so it is not possible to reset within the 60 minutes countdown. Resetting it does however not set the rate-limit to 60 like when editing it. It is possible to edit it right after resetting it. Trying to edit a message before the cooldown timer expires results in a 429 \"Too Fast Error\". Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite The DELETE endpoint does not have/require any request body. * @summary Reset Invite Message @@ -18436,7 +20492,7 @@ export const InviteApiFp = function(configuration?: Configuration) { return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Respond to an invite request by sending a world invite to the requesting user. `:notificationId` is the ID of the requesting notification. + * Respond to an invite or invite request without accepting it. `:notificationId` is the ID of the requesting notification. In case the notification being replied to is an invite, the `responseSlot` refers to a response message from the the `message` collection. In case the notification is an invite request, it will refer to one from the `requestResponse` collection instead. * @summary Respond Invite * @param {string} notificationId Must be a valid notification ID. * @param {InviteResponse} inviteResponse Slot number of the Response Message to use when responding to a user. @@ -18447,6 +20503,19 @@ export const InviteApiFp = function(configuration?: Configuration) { const localVarAxiosArgs = await localVarAxiosParamCreator.respondInvite(notificationId, inviteResponse, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, + /** + * Respond with photo to an invite or invite request without accepting it. `:notificationId` is the ID of the requesting notification. In case the notification being replied to is an invite, the `responseSlot` refers to a response message from the the `message` collection. In case the notification is an invite request, it will refer to one from the `requestResponse` collection instead.\' + * @summary Respond Invite with photo + * @param {string} notificationId Must be a valid notification ID. + * @param {File} image The binary blob of the png file. + * @param {InviteResponse} data + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async respondInviteWithPhoto(notificationId: string, image: File, data: InviteResponse, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.respondInviteWithPhoto(notificationId, image, data, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** * Updates a single Invite Message and then returns a list of all of them. Admin Credentials are required to update messages of other users! Updating a message automatically sets the cooldown timer to 60 minutes. Trying to edit a message before the cooldown timer expires results in a 429 \"Too Fast Error\". Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite * @summary Update Invite Message @@ -18516,6 +20585,18 @@ export const InviteApiFactory = function (configuration?: Configuration, basePat inviteUser(userId: string, inviteRequest: InviteRequest, options?: any): AxiosPromise { return localVarFp.inviteUser(userId, inviteRequest, options).then((request) => request(axios, basePath)); }, + /** + * Sends an photo invite to a user. Returns the Notification of type `invite` that was sent. + * @summary Invite User with photo + * @param {string} userId Must be a valid user ID. + * @param {File} image The binary blob of the png file. + * @param {InviteRequest} data + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + inviteUserWithPhoto(userId: string, image: File, data: InviteRequest, options?: any): AxiosPromise { + return localVarFp.inviteUserWithPhoto(userId, image, data, options).then((request) => request(axios, basePath)); + }, /** * Requests an invite from a user. Returns the Notification of type `requestInvite` that was sent. * @summary Request Invite @@ -18527,6 +20608,18 @@ export const InviteApiFactory = function (configuration?: Configuration, basePat requestInvite(userId: string, requestInviteRequest?: RequestInviteRequest, options?: any): AxiosPromise { return localVarFp.requestInvite(userId, requestInviteRequest, options).then((request) => request(axios, basePath)); }, + /** + * Requests with photo an invite from a user. Returns the Notification of type `requestInvite` that was sent. + * @summary Request Invite with photo + * @param {string} userId Must be a valid user ID. + * @param {File} image The binary blob of the png file. + * @param {RequestInviteRequest} data + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + requestInviteWithPhoto(userId: string, image: File, data: RequestInviteRequest, options?: any): AxiosPromise { + return localVarFp.requestInviteWithPhoto(userId, image, data, options).then((request) => request(axios, basePath)); + }, /** * Resets a single Invite Message back to its original message, and then returns a list of all of them. Admin Credentials are required to update messages of other users! Resetting a message respects the rate-limit, so it is not possible to reset within the 60 minutes countdown. Resetting it does however not set the rate-limit to 60 like when editing it. It is possible to edit it right after resetting it. Trying to edit a message before the cooldown timer expires results in a 429 \"Too Fast Error\". Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite The DELETE endpoint does not have/require any request body. * @summary Reset Invite Message @@ -18540,7 +20633,7 @@ export const InviteApiFactory = function (configuration?: Configuration, basePat return localVarFp.resetInviteMessage(userId, messageType, slot, options).then((request) => request(axios, basePath)); }, /** - * Respond to an invite request by sending a world invite to the requesting user. `:notificationId` is the ID of the requesting notification. + * Respond to an invite or invite request without accepting it. `:notificationId` is the ID of the requesting notification. In case the notification being replied to is an invite, the `responseSlot` refers to a response message from the the `message` collection. In case the notification is an invite request, it will refer to one from the `requestResponse` collection instead. * @summary Respond Invite * @param {string} notificationId Must be a valid notification ID. * @param {InviteResponse} inviteResponse Slot number of the Response Message to use when responding to a user. @@ -18550,6 +20643,18 @@ export const InviteApiFactory = function (configuration?: Configuration, basePat respondInvite(notificationId: string, inviteResponse: InviteResponse, options?: any): AxiosPromise { return localVarFp.respondInvite(notificationId, inviteResponse, options).then((request) => request(axios, basePath)); }, + /** + * Respond with photo to an invite or invite request without accepting it. `:notificationId` is the ID of the requesting notification. In case the notification being replied to is an invite, the `responseSlot` refers to a response message from the the `message` collection. In case the notification is an invite request, it will refer to one from the `requestResponse` collection instead.\' + * @summary Respond Invite with photo + * @param {string} notificationId Must be a valid notification ID. + * @param {File} image The binary blob of the png file. + * @param {InviteResponse} data + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + respondInviteWithPhoto(notificationId: string, image: File, data: InviteResponse, options?: any): AxiosPromise { + return localVarFp.respondInviteWithPhoto(notificationId, image, data, options).then((request) => request(axios, basePath)); + }, /** * Updates a single Invite Message and then returns a list of all of them. Admin Credentials are required to update messages of other users! Updating a message automatically sets the cooldown timer to 60 minutes. Trying to edit a message before the cooldown timer expires results in a 429 \"Too Fast Error\". Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite * @summary Update Invite Message @@ -18626,6 +20731,20 @@ export class InviteApi extends BaseAPI { return InviteApiFp(this.configuration).inviteUser(userId, inviteRequest, options).then((request) => request(this.axios, this.basePath)); } + /** + * Sends an photo invite to a user. Returns the Notification of type `invite` that was sent. + * @summary Invite User with photo + * @param {string} userId Must be a valid user ID. + * @param {File} image The binary blob of the png file. + * @param {InviteRequest} data + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof InviteApi + */ + public inviteUserWithPhoto(userId: string, image: File, data: InviteRequest, options?: AxiosRequestConfig) { + return InviteApiFp(this.configuration).inviteUserWithPhoto(userId, image, data, options).then((request) => request(this.axios, this.basePath)); + } + /** * Requests an invite from a user. Returns the Notification of type `requestInvite` that was sent. * @summary Request Invite @@ -18639,6 +20758,20 @@ export class InviteApi extends BaseAPI { return InviteApiFp(this.configuration).requestInvite(userId, requestInviteRequest, options).then((request) => request(this.axios, this.basePath)); } + /** + * Requests with photo an invite from a user. Returns the Notification of type `requestInvite` that was sent. + * @summary Request Invite with photo + * @param {string} userId Must be a valid user ID. + * @param {File} image The binary blob of the png file. + * @param {RequestInviteRequest} data + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof InviteApi + */ + public requestInviteWithPhoto(userId: string, image: File, data: RequestInviteRequest, options?: AxiosRequestConfig) { + return InviteApiFp(this.configuration).requestInviteWithPhoto(userId, image, data, options).then((request) => request(this.axios, this.basePath)); + } + /** * Resets a single Invite Message back to its original message, and then returns a list of all of them. Admin Credentials are required to update messages of other users! Resetting a message respects the rate-limit, so it is not possible to reset within the 60 minutes countdown. Resetting it does however not set the rate-limit to 60 like when editing it. It is possible to edit it right after resetting it. Trying to edit a message before the cooldown timer expires results in a 429 \"Too Fast Error\". Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite The DELETE endpoint does not have/require any request body. * @summary Reset Invite Message @@ -18654,7 +20787,7 @@ export class InviteApi extends BaseAPI { } /** - * Respond to an invite request by sending a world invite to the requesting user. `:notificationId` is the ID of the requesting notification. + * Respond to an invite or invite request without accepting it. `:notificationId` is the ID of the requesting notification. In case the notification being replied to is an invite, the `responseSlot` refers to a response message from the the `message` collection. In case the notification is an invite request, it will refer to one from the `requestResponse` collection instead. * @summary Respond Invite * @param {string} notificationId Must be a valid notification ID. * @param {InviteResponse} inviteResponse Slot number of the Response Message to use when responding to a user. @@ -18666,6 +20799,20 @@ export class InviteApi extends BaseAPI { return InviteApiFp(this.configuration).respondInvite(notificationId, inviteResponse, options).then((request) => request(this.axios, this.basePath)); } + /** + * Respond with photo to an invite or invite request without accepting it. `:notificationId` is the ID of the requesting notification. In case the notification being replied to is an invite, the `responseSlot` refers to a response message from the the `message` collection. In case the notification is an invite request, it will refer to one from the `requestResponse` collection instead.\' + * @summary Respond Invite with photo + * @param {string} notificationId Must be a valid notification ID. + * @param {File} image The binary blob of the png file. + * @param {InviteResponse} data + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof InviteApi + */ + public respondInviteWithPhoto(notificationId: string, image: File, data: InviteResponse, options?: AxiosRequestConfig) { + return InviteApiFp(this.configuration).respondInviteWithPhoto(notificationId, image, data, options).then((request) => request(this.axios, this.basePath)); + } + /** * Updates a single Invite Message and then returns a list of all of them. Admin Credentials are required to update messages of other users! Updating a message automatically sets the cooldown timer to 60 minutes. Trying to edit a message before the cooldown timer expires results in a 429 \"Too Fast Error\". Message type refers to a different collection of messages, used during different types of responses. * `message` = Message during a normal invite * `response` = Message when replying to a message * `request` = Message when requesting an invite * `requestResponse` = Message when replying to a request for invite * @summary Update Invite Message @@ -19472,7 +21619,255 @@ export const PermissionsApiAxiosParamCreator = function (configuration?: Configu baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + } +}; + +/** + * PermissionsApi - functional programming interface + * @export + */ +export const PermissionsApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = PermissionsApiAxiosParamCreator(configuration) + return { + /** + * Returns a list of all permissions currently granted by the user. Permissions are assigned e.g. by subscribing to VRC+. + * @summary Get Assigned Permissions + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getAssignedPermissions(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getAssignedPermissions(options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Returns a single permission. This endpoint is pretty useless, as it returns the exact same information as `/auth/permissions`. + * @summary Get Permission + * @param {string} permissionId Must be a valid permission ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getPermission(permissionId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getPermission(permissionId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + } +}; + +/** + * PermissionsApi - factory interface + * @export + */ +export const PermissionsApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = PermissionsApiFp(configuration) + return { + /** + * Returns a list of all permissions currently granted by the user. Permissions are assigned e.g. by subscribing to VRC+. + * @summary Get Assigned Permissions + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getAssignedPermissions(options?: any): AxiosPromise> { + return localVarFp.getAssignedPermissions(options).then((request) => request(axios, basePath)); + }, + /** + * Returns a single permission. This endpoint is pretty useless, as it returns the exact same information as `/auth/permissions`. + * @summary Get Permission + * @param {string} permissionId Must be a valid permission ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getPermission(permissionId: string, options?: any): AxiosPromise { + return localVarFp.getPermission(permissionId, options).then((request) => request(axios, basePath)); + }, + }; +}; + +/** + * PermissionsApi - object-oriented interface + * @export + * @class PermissionsApi + * @extends {BaseAPI} + */ +export class PermissionsApi extends BaseAPI { + /** + * Returns a list of all permissions currently granted by the user. Permissions are assigned e.g. by subscribing to VRC+. + * @summary Get Assigned Permissions + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof PermissionsApi + */ + public getAssignedPermissions(options?: AxiosRequestConfig) { + return PermissionsApiFp(this.configuration).getAssignedPermissions(options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Returns a single permission. This endpoint is pretty useless, as it returns the exact same information as `/auth/permissions`. + * @summary Get Permission + * @param {string} permissionId Must be a valid permission ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof PermissionsApi + */ + public getPermission(permissionId: string, options?: AxiosRequestConfig) { + return PermissionsApiFp(this.configuration).getPermission(permissionId, options).then((request) => request(this.axios, this.basePath)); + } +} + + +/** + * PlayermoderationApi - axios parameter creator + * @export + */ +export const PlayermoderationApiAxiosParamCreator = function (configuration?: Configuration) { + return { + /** + * ⚠️ **This will delete every single player moderation you\'ve ever made.** + * @summary Clear All Player Moderations + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + clearAllPlayerModerations: async (options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/auth/user/playermoderations`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Returns a list of all player moderations made by **you**. This endpoint does not have pagination, and will return *all* results. Use query parameters to limit your query if needed. + * @summary Search Player Moderations + * @param {string} [type] Must be one of PlayerModerationType, except unblock. Unblocking simply removes a block. + * @param {string} [targetUserId] Must be valid UserID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getPlayerModerations: async (type?: string, targetUserId?: string, options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/auth/user/playermoderations`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + if (type !== undefined) { + localVarQueryParameter['type'] = type; + } + + if (targetUserId !== undefined) { + localVarQueryParameter['targetUserId'] = targetUserId; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Moderate a user, e.g. unmute them or show their avatar. Please see the [Player Moderation docs](https://vrchatapi.github.io/docs/api/#tag--playermoderation) on what playerModerations are, and how they differ from staff moderations. + * @summary Moderate User + * @param {ModerateUserRequest} moderateUserRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + moderateUser: async (moderateUserRequest: ModerateUserRequest, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'moderateUserRequest' is not null or undefined + assertParamExists('moderateUser', 'moderateUserRequest', moderateUserRequest) + const localVarPath = `/auth/user/playermoderations`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(moderateUserRequest, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Removes a player moderation previously added through `moderateUser`. E.g if you previously have shown their avatar, but now want to reset it to default. + * @summary Unmoderate User + * @param {ModerateUserRequest} moderateUserRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + unmoderateUser: async (moderateUserRequest: ModerateUserRequest, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'moderateUserRequest' is not null or undefined + assertParamExists('unmoderateUser', 'moderateUserRequest', moderateUserRequest) + const localVarPath = `/auth/user/unplayermoderate`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; @@ -19480,9 +21875,12 @@ export const PermissionsApiAxiosParamCreator = function (configuration?: Configu + localVarHeaderParameter['Content-Type'] = 'application/json'; + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(moderateUserRequest, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), @@ -19493,111 +21891,184 @@ export const PermissionsApiAxiosParamCreator = function (configuration?: Configu }; /** - * PermissionsApi - functional programming interface + * PlayermoderationApi - functional programming interface * @export */ -export const PermissionsApiFp = function(configuration?: Configuration) { - const localVarAxiosParamCreator = PermissionsApiAxiosParamCreator(configuration) +export const PlayermoderationApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = PlayermoderationApiAxiosParamCreator(configuration) return { /** - * Returns a list of all permissions currently granted by the user. Permissions are assigned e.g. by subscribing to VRC+. - * @summary Get Assigned Permissions + * ⚠️ **This will delete every single player moderation you\'ve ever made.** + * @summary Clear All Player Moderations * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getAssignedPermissions(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getAssignedPermissions(options); + async clearAllPlayerModerations(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.clearAllPlayerModerations(options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Returns a single permission. This endpoint is pretty useless, as it returns the exact same information as `/auth/permissions`. - * @summary Get Permission - * @param {string} permissionId Must be a valid permission ID. + * Returns a list of all player moderations made by **you**. This endpoint does not have pagination, and will return *all* results. Use query parameters to limit your query if needed. + * @summary Search Player Moderations + * @param {string} [type] Must be one of PlayerModerationType, except unblock. Unblocking simply removes a block. + * @param {string} [targetUserId] Must be valid UserID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getPermission(permissionId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getPermission(permissionId, options); + async getPlayerModerations(type?: string, targetUserId?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getPlayerModerations(type, targetUserId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Moderate a user, e.g. unmute them or show their avatar. Please see the [Player Moderation docs](https://vrchatapi.github.io/docs/api/#tag--playermoderation) on what playerModerations are, and how they differ from staff moderations. + * @summary Moderate User + * @param {ModerateUserRequest} moderateUserRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async moderateUser(moderateUserRequest: ModerateUserRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.moderateUser(moderateUserRequest, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Removes a player moderation previously added through `moderateUser`. E.g if you previously have shown their avatar, but now want to reset it to default. + * @summary Unmoderate User + * @param {ModerateUserRequest} moderateUserRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async unmoderateUser(moderateUserRequest: ModerateUserRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.unmoderateUser(moderateUserRequest, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, } }; /** - * PermissionsApi - factory interface + * PlayermoderationApi - factory interface * @export */ -export const PermissionsApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { - const localVarFp = PermissionsApiFp(configuration) +export const PlayermoderationApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = PlayermoderationApiFp(configuration) return { /** - * Returns a list of all permissions currently granted by the user. Permissions are assigned e.g. by subscribing to VRC+. - * @summary Get Assigned Permissions + * ⚠️ **This will delete every single player moderation you\'ve ever made.** + * @summary Clear All Player Moderations * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getAssignedPermissions(options?: any): AxiosPromise> { - return localVarFp.getAssignedPermissions(options).then((request) => request(axios, basePath)); + clearAllPlayerModerations(options?: any): AxiosPromise { + return localVarFp.clearAllPlayerModerations(options).then((request) => request(axios, basePath)); }, /** - * Returns a single permission. This endpoint is pretty useless, as it returns the exact same information as `/auth/permissions`. - * @summary Get Permission - * @param {string} permissionId Must be a valid permission ID. + * Returns a list of all player moderations made by **you**. This endpoint does not have pagination, and will return *all* results. Use query parameters to limit your query if needed. + * @summary Search Player Moderations + * @param {string} [type] Must be one of PlayerModerationType, except unblock. Unblocking simply removes a block. + * @param {string} [targetUserId] Must be valid UserID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getPermission(permissionId: string, options?: any): AxiosPromise { - return localVarFp.getPermission(permissionId, options).then((request) => request(axios, basePath)); + getPlayerModerations(type?: string, targetUserId?: string, options?: any): AxiosPromise> { + return localVarFp.getPlayerModerations(type, targetUserId, options).then((request) => request(axios, basePath)); + }, + /** + * Moderate a user, e.g. unmute them or show their avatar. Please see the [Player Moderation docs](https://vrchatapi.github.io/docs/api/#tag--playermoderation) on what playerModerations are, and how they differ from staff moderations. + * @summary Moderate User + * @param {ModerateUserRequest} moderateUserRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + moderateUser(moderateUserRequest: ModerateUserRequest, options?: any): AxiosPromise { + return localVarFp.moderateUser(moderateUserRequest, options).then((request) => request(axios, basePath)); + }, + /** + * Removes a player moderation previously added through `moderateUser`. E.g if you previously have shown their avatar, but now want to reset it to default. + * @summary Unmoderate User + * @param {ModerateUserRequest} moderateUserRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + unmoderateUser(moderateUserRequest: ModerateUserRequest, options?: any): AxiosPromise { + return localVarFp.unmoderateUser(moderateUserRequest, options).then((request) => request(axios, basePath)); }, }; }; /** - * PermissionsApi - object-oriented interface + * PlayermoderationApi - object-oriented interface * @export - * @class PermissionsApi + * @class PlayermoderationApi * @extends {BaseAPI} */ -export class PermissionsApi extends BaseAPI { +export class PlayermoderationApi extends BaseAPI { /** - * Returns a list of all permissions currently granted by the user. Permissions are assigned e.g. by subscribing to VRC+. - * @summary Get Assigned Permissions + * ⚠️ **This will delete every single player moderation you\'ve ever made.** + * @summary Clear All Player Moderations * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof PermissionsApi + * @memberof PlayermoderationApi */ - public getAssignedPermissions(options?: AxiosRequestConfig) { - return PermissionsApiFp(this.configuration).getAssignedPermissions(options).then((request) => request(this.axios, this.basePath)); + public clearAllPlayerModerations(options?: AxiosRequestConfig) { + return PlayermoderationApiFp(this.configuration).clearAllPlayerModerations(options).then((request) => request(this.axios, this.basePath)); } /** - * Returns a single permission. This endpoint is pretty useless, as it returns the exact same information as `/auth/permissions`. - * @summary Get Permission - * @param {string} permissionId Must be a valid permission ID. + * Returns a list of all player moderations made by **you**. This endpoint does not have pagination, and will return *all* results. Use query parameters to limit your query if needed. + * @summary Search Player Moderations + * @param {string} [type] Must be one of PlayerModerationType, except unblock. Unblocking simply removes a block. + * @param {string} [targetUserId] Must be valid UserID. * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof PermissionsApi + * @memberof PlayermoderationApi */ - public getPermission(permissionId: string, options?: AxiosRequestConfig) { - return PermissionsApiFp(this.configuration).getPermission(permissionId, options).then((request) => request(this.axios, this.basePath)); + public getPlayerModerations(type?: string, targetUserId?: string, options?: AxiosRequestConfig) { + return PlayermoderationApiFp(this.configuration).getPlayerModerations(type, targetUserId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Moderate a user, e.g. unmute them or show their avatar. Please see the [Player Moderation docs](https://vrchatapi.github.io/docs/api/#tag--playermoderation) on what playerModerations are, and how they differ from staff moderations. + * @summary Moderate User + * @param {ModerateUserRequest} moderateUserRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof PlayermoderationApi + */ + public moderateUser(moderateUserRequest: ModerateUserRequest, options?: AxiosRequestConfig) { + return PlayermoderationApiFp(this.configuration).moderateUser(moderateUserRequest, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Removes a player moderation previously added through `moderateUser`. E.g if you previously have shown their avatar, but now want to reset it to default. + * @summary Unmoderate User + * @param {ModerateUserRequest} moderateUserRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof PlayermoderationApi + */ + public unmoderateUser(moderateUserRequest: ModerateUserRequest, options?: AxiosRequestConfig) { + return PlayermoderationApiFp(this.configuration).unmoderateUser(moderateUserRequest, options).then((request) => request(this.axios, this.basePath)); } } /** - * PlayermoderationApi - axios parameter creator + * PrintsApi - axios parameter creator * @export */ -export const PlayermoderationApiAxiosParamCreator = function (configuration?: Configuration) { +export const PrintsApiAxiosParamCreator = function (configuration?: Configuration) { return { /** - * ⚠️ **This will delete every single player moderation you\'ve ever made.** - * @summary Clear All Player Moderations + * Returns a print. + * @summary Delete Print + * @param {string} printId Print ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - clearAllPlayerModerations: async (options: AxiosRequestConfig = {}): Promise => { - const localVarPath = `/auth/user/playermoderations`; + deletePrint: async (printId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'printId' is not null or undefined + assertParamExists('deletePrint', 'printId', printId) + const localVarPath = `/prints/{printId}` + .replace(`{${"printId"}}`, encodeURIComponent(String(printId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -19623,15 +22094,21 @@ export const PlayermoderationApiAxiosParamCreator = function (configuration?: Co }; }, /** - * Returns a list of all player moderations made by **you**. This endpoint does not have pagination, and will return *all* results. Use query parameters to limit your query if needed. - * @summary Search Player Moderations - * @param {string} [type] Must be one of PlayerModerationType, except unblock. Unblocking simply removes a block. - * @param {string} [targetUserId] Must be valid UserID. + * Edits a print. + * @summary Edit Print + * @param {string} printId Print ID. + * @param {File} image The binary blob of the png file. + * @param {string} [note] The caption for the image. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getPlayerModerations: async (type?: string, targetUserId?: string, options: AxiosRequestConfig = {}): Promise => { - const localVarPath = `/auth/user/playermoderations`; + editPrint: async (printId: string, image: File, note?: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'printId' is not null or undefined + assertParamExists('editPrint', 'printId', printId) + // verify required parameter 'image' is not null or undefined + assertParamExists('editPrint', 'image', image) + const localVarPath = `/prints/{printId}` + .replace(`{${"printId"}}`, encodeURIComponent(String(printId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -19639,20 +22116,60 @@ export const PlayermoderationApiAxiosParamCreator = function (configuration?: Co baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; + const localVarFormParams = new ((configuration && configuration.formDataCtor) || FormData)(); // authentication authCookie required - if (type !== undefined) { - localVarQueryParameter['type'] = type; + + if (image !== undefined) { + localVarFormParams.append('image', image as any); + } + + if (note !== undefined) { + localVarFormParams.append('note', note as any); } + + + localVarHeaderParameter['Content-Type'] = 'multipart/form-data'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = localVarFormParams; - if (targetUserId !== undefined) { - localVarQueryParameter['targetUserId'] = targetUserId; + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Returns a print. + * @summary Get Print + * @param {string} printId Print ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getPrint: async (printId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'printId' is not null or undefined + assertParamExists('getPrint', 'printId', printId) + const localVarPath = `/prints/{printId}` + .replace(`{${"printId"}}`, encodeURIComponent(String(printId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; } + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + setSearchParams(localVarUrlObj, localVarQueryParameter); @@ -19665,16 +22182,17 @@ export const PlayermoderationApiAxiosParamCreator = function (configuration?: Co }; }, /** - * Moderate a user, e.g. unmute them or show their avatar. Please see the [Player Moderation docs](https://vrchatapi.github.io/docs/api/#tag--playermoderation) on what playerModerations are, and how they differ from staff moderations. - * @summary Moderate User - * @param {ModerateUserRequest} moderateUserRequest + * Returns a list of all prints of the user. User id has to be your own userId, as you can\'t request other user\'s prints. + * @summary Get Own Prints + * @param {string} userId Must be a valid user ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - moderateUser: async (moderateUserRequest: ModerateUserRequest, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'moderateUserRequest' is not null or undefined - assertParamExists('moderateUser', 'moderateUserRequest', moderateUserRequest) - const localVarPath = `/auth/user/playermoderations`; + getUserPrints: async (userId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'userId' is not null or undefined + assertParamExists('getUserPrints', 'userId', userId) + const localVarPath = `/prints/user/{userId}` + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -19682,7 +22200,7 @@ export const PlayermoderationApiAxiosParamCreator = function (configuration?: Co baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; @@ -19690,12 +22208,9 @@ export const PlayermoderationApiAxiosParamCreator = function (configuration?: Co - localVarHeaderParameter['Content-Type'] = 'application/json'; - setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - localVarRequestOptions.data = serializeDataIfNeeded(moderateUserRequest, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), @@ -19703,16 +22218,22 @@ export const PlayermoderationApiAxiosParamCreator = function (configuration?: Co }; }, /** - * Removes a player moderation previously added through `moderateUser`. E.g if you previously have shown their avatar, but now want to reset it to default. - * @summary Unmoderate User - * @param {ModerateUserRequest} moderateUserRequest + * Uploads and creates a print. + * @summary Upload Print + * @param {File} image The binary blob of the png file. + * @param {string} timestamp The time the image was captured. + * @param {string} [note] The caption for the image. + * @param {string} [worldId] The id of the world in which the image was captured. + * @param {string} [worldName] The name of the world in which the image was captured. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - unmoderateUser: async (moderateUserRequest: ModerateUserRequest, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'moderateUserRequest' is not null or undefined - assertParamExists('unmoderateUser', 'moderateUserRequest', moderateUserRequest) - const localVarPath = `/auth/user/unplayermoderate`; + uploadPrint: async (image: File, timestamp: string, note?: string, worldId?: string, worldName?: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'image' is not null or undefined + assertParamExists('uploadPrint', 'image', image) + // verify required parameter 'timestamp' is not null or undefined + assertParamExists('uploadPrint', 'timestamp', timestamp) + const localVarPath = `/prints`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -19720,20 +22241,41 @@ export const PlayermoderationApiAxiosParamCreator = function (configuration?: Co baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; + const localVarFormParams = new ((configuration && configuration.formDataCtor) || FormData)(); // authentication authCookie required + if (image !== undefined) { + localVarFormParams.append('image', image as any); + } + + if (timestamp !== undefined) { + localVarFormParams.append('timestamp', timestamp as any); + } + + if (note !== undefined) { + localVarFormParams.append('note', note as any); + } + + if (worldId !== undefined) { + localVarFormParams.append('worldId', worldId as any); + } + + if (worldName !== undefined) { + localVarFormParams.append('worldName', worldName as any); + } + + + localVarHeaderParameter['Content-Type'] = 'multipart/form-data'; - localVarHeaderParameter['Content-Type'] = 'application/json'; - setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - localVarRequestOptions.data = serializeDataIfNeeded(moderateUserRequest, localVarRequestOptions, configuration) + localVarRequestOptions.data = localVarFormParams; return { url: toPathString(localVarUrlObj), @@ -19744,162 +22286,213 @@ export const PlayermoderationApiAxiosParamCreator = function (configuration?: Co }; /** - * PlayermoderationApi - functional programming interface + * PrintsApi - functional programming interface * @export */ -export const PlayermoderationApiFp = function(configuration?: Configuration) { - const localVarAxiosParamCreator = PlayermoderationApiAxiosParamCreator(configuration) +export const PrintsApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = PrintsApiAxiosParamCreator(configuration) return { /** - * ⚠️ **This will delete every single player moderation you\'ve ever made.** - * @summary Clear All Player Moderations + * Returns a print. + * @summary Delete Print + * @param {string} printId Print ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async clearAllPlayerModerations(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.clearAllPlayerModerations(options); + async deletePrint(printId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.deletePrint(printId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Edits a print. + * @summary Edit Print + * @param {string} printId Print ID. + * @param {File} image The binary blob of the png file. + * @param {string} [note] The caption for the image. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async editPrint(printId: string, image: File, note?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.editPrint(printId, image, note, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Returns a list of all player moderations made by **you**. This endpoint does not have pagination, and will return *all* results. Use query parameters to limit your query if needed. - * @summary Search Player Moderations - * @param {string} [type] Must be one of PlayerModerationType, except unblock. Unblocking simply removes a block. - * @param {string} [targetUserId] Must be valid UserID. + * Returns a print. + * @summary Get Print + * @param {string} printId Print ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getPlayerModerations(type?: string, targetUserId?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getPlayerModerations(type, targetUserId, options); + async getPrint(printId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getPrint(printId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Moderate a user, e.g. unmute them or show their avatar. Please see the [Player Moderation docs](https://vrchatapi.github.io/docs/api/#tag--playermoderation) on what playerModerations are, and how they differ from staff moderations. - * @summary Moderate User - * @param {ModerateUserRequest} moderateUserRequest + * Returns a list of all prints of the user. User id has to be your own userId, as you can\'t request other user\'s prints. + * @summary Get Own Prints + * @param {string} userId Must be a valid user ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async moderateUser(moderateUserRequest: ModerateUserRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.moderateUser(moderateUserRequest, options); + async getUserPrints(userId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getUserPrints(userId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Removes a player moderation previously added through `moderateUser`. E.g if you previously have shown their avatar, but now want to reset it to default. - * @summary Unmoderate User - * @param {ModerateUserRequest} moderateUserRequest + * Uploads and creates a print. + * @summary Upload Print + * @param {File} image The binary blob of the png file. + * @param {string} timestamp The time the image was captured. + * @param {string} [note] The caption for the image. + * @param {string} [worldId] The id of the world in which the image was captured. + * @param {string} [worldName] The name of the world in which the image was captured. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async unmoderateUser(moderateUserRequest: ModerateUserRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.unmoderateUser(moderateUserRequest, options); + async uploadPrint(image: File, timestamp: string, note?: string, worldId?: string, worldName?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.uploadPrint(image, timestamp, note, worldId, worldName, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, } }; /** - * PlayermoderationApi - factory interface + * PrintsApi - factory interface * @export */ -export const PlayermoderationApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { - const localVarFp = PlayermoderationApiFp(configuration) +export const PrintsApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = PrintsApiFp(configuration) return { /** - * ⚠️ **This will delete every single player moderation you\'ve ever made.** - * @summary Clear All Player Moderations + * Returns a print. + * @summary Delete Print + * @param {string} printId Print ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - clearAllPlayerModerations(options?: any): AxiosPromise { - return localVarFp.clearAllPlayerModerations(options).then((request) => request(axios, basePath)); + deletePrint(printId: string, options?: any): AxiosPromise { + return localVarFp.deletePrint(printId, options).then((request) => request(axios, basePath)); }, /** - * Returns a list of all player moderations made by **you**. This endpoint does not have pagination, and will return *all* results. Use query parameters to limit your query if needed. - * @summary Search Player Moderations - * @param {string} [type] Must be one of PlayerModerationType, except unblock. Unblocking simply removes a block. - * @param {string} [targetUserId] Must be valid UserID. + * Edits a print. + * @summary Edit Print + * @param {string} printId Print ID. + * @param {File} image The binary blob of the png file. + * @param {string} [note] The caption for the image. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getPlayerModerations(type?: string, targetUserId?: string, options?: any): AxiosPromise> { - return localVarFp.getPlayerModerations(type, targetUserId, options).then((request) => request(axios, basePath)); + editPrint(printId: string, image: File, note?: string, options?: any): AxiosPromise { + return localVarFp.editPrint(printId, image, note, options).then((request) => request(axios, basePath)); }, /** - * Moderate a user, e.g. unmute them or show their avatar. Please see the [Player Moderation docs](https://vrchatapi.github.io/docs/api/#tag--playermoderation) on what playerModerations are, and how they differ from staff moderations. - * @summary Moderate User - * @param {ModerateUserRequest} moderateUserRequest + * Returns a print. + * @summary Get Print + * @param {string} printId Print ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - moderateUser(moderateUserRequest: ModerateUserRequest, options?: any): AxiosPromise { - return localVarFp.moderateUser(moderateUserRequest, options).then((request) => request(axios, basePath)); + getPrint(printId: string, options?: any): AxiosPromise { + return localVarFp.getPrint(printId, options).then((request) => request(axios, basePath)); }, /** - * Removes a player moderation previously added through `moderateUser`. E.g if you previously have shown their avatar, but now want to reset it to default. - * @summary Unmoderate User - * @param {ModerateUserRequest} moderateUserRequest + * Returns a list of all prints of the user. User id has to be your own userId, as you can\'t request other user\'s prints. + * @summary Get Own Prints + * @param {string} userId Must be a valid user ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - unmoderateUser(moderateUserRequest: ModerateUserRequest, options?: any): AxiosPromise { - return localVarFp.unmoderateUser(moderateUserRequest, options).then((request) => request(axios, basePath)); + getUserPrints(userId: string, options?: any): AxiosPromise> { + return localVarFp.getUserPrints(userId, options).then((request) => request(axios, basePath)); + }, + /** + * Uploads and creates a print. + * @summary Upload Print + * @param {File} image The binary blob of the png file. + * @param {string} timestamp The time the image was captured. + * @param {string} [note] The caption for the image. + * @param {string} [worldId] The id of the world in which the image was captured. + * @param {string} [worldName] The name of the world in which the image was captured. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + uploadPrint(image: File, timestamp: string, note?: string, worldId?: string, worldName?: string, options?: any): AxiosPromise { + return localVarFp.uploadPrint(image, timestamp, note, worldId, worldName, options).then((request) => request(axios, basePath)); }, }; }; /** - * PlayermoderationApi - object-oriented interface + * PrintsApi - object-oriented interface * @export - * @class PlayermoderationApi + * @class PrintsApi * @extends {BaseAPI} */ -export class PlayermoderationApi extends BaseAPI { +export class PrintsApi extends BaseAPI { /** - * ⚠️ **This will delete every single player moderation you\'ve ever made.** - * @summary Clear All Player Moderations + * Returns a print. + * @summary Delete Print + * @param {string} printId Print ID. * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof PlayermoderationApi + * @memberof PrintsApi */ - public clearAllPlayerModerations(options?: AxiosRequestConfig) { - return PlayermoderationApiFp(this.configuration).clearAllPlayerModerations(options).then((request) => request(this.axios, this.basePath)); + public deletePrint(printId: string, options?: AxiosRequestConfig) { + return PrintsApiFp(this.configuration).deletePrint(printId, options).then((request) => request(this.axios, this.basePath)); } /** - * Returns a list of all player moderations made by **you**. This endpoint does not have pagination, and will return *all* results. Use query parameters to limit your query if needed. - * @summary Search Player Moderations - * @param {string} [type] Must be one of PlayerModerationType, except unblock. Unblocking simply removes a block. - * @param {string} [targetUserId] Must be valid UserID. + * Edits a print. + * @summary Edit Print + * @param {string} printId Print ID. + * @param {File} image The binary blob of the png file. + * @param {string} [note] The caption for the image. * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof PlayermoderationApi + * @memberof PrintsApi */ - public getPlayerModerations(type?: string, targetUserId?: string, options?: AxiosRequestConfig) { - return PlayermoderationApiFp(this.configuration).getPlayerModerations(type, targetUserId, options).then((request) => request(this.axios, this.basePath)); + public editPrint(printId: string, image: File, note?: string, options?: AxiosRequestConfig) { + return PrintsApiFp(this.configuration).editPrint(printId, image, note, options).then((request) => request(this.axios, this.basePath)); } /** - * Moderate a user, e.g. unmute them or show their avatar. Please see the [Player Moderation docs](https://vrchatapi.github.io/docs/api/#tag--playermoderation) on what playerModerations are, and how they differ from staff moderations. - * @summary Moderate User - * @param {ModerateUserRequest} moderateUserRequest + * Returns a print. + * @summary Get Print + * @param {string} printId Print ID. * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof PlayermoderationApi + * @memberof PrintsApi */ - public moderateUser(moderateUserRequest: ModerateUserRequest, options?: AxiosRequestConfig) { - return PlayermoderationApiFp(this.configuration).moderateUser(moderateUserRequest, options).then((request) => request(this.axios, this.basePath)); + public getPrint(printId: string, options?: AxiosRequestConfig) { + return PrintsApiFp(this.configuration).getPrint(printId, options).then((request) => request(this.axios, this.basePath)); } /** - * Removes a player moderation previously added through `moderateUser`. E.g if you previously have shown their avatar, but now want to reset it to default. - * @summary Unmoderate User - * @param {ModerateUserRequest} moderateUserRequest + * Returns a list of all prints of the user. User id has to be your own userId, as you can\'t request other user\'s prints. + * @summary Get Own Prints + * @param {string} userId Must be a valid user ID. * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof PlayermoderationApi + * @memberof PrintsApi */ - public unmoderateUser(moderateUserRequest: ModerateUserRequest, options?: AxiosRequestConfig) { - return PlayermoderationApiFp(this.configuration).unmoderateUser(moderateUserRequest, options).then((request) => request(this.axios, this.basePath)); + public getUserPrints(userId: string, options?: AxiosRequestConfig) { + return PrintsApiFp(this.configuration).getUserPrints(userId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Uploads and creates a print. + * @summary Upload Print + * @param {File} image The binary blob of the png file. + * @param {string} timestamp The time the image was captured. + * @param {string} [note] The caption for the image. + * @param {string} [worldId] The id of the world in which the image was captured. + * @param {string} [worldName] The name of the world in which the image was captured. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof PrintsApi + */ + public uploadPrint(image: File, timestamp: string, note?: string, worldId?: string, worldName?: string, options?: AxiosRequestConfig) { + return PrintsApiFp(this.configuration).uploadPrint(image, timestamp, note, worldId, worldName, options).then((request) => request(this.axios, this.basePath)); } } @@ -20420,6 +23013,128 @@ export class SystemApi extends BaseAPI { */ export const UsersApiAxiosParamCreator = function (configuration?: Configuration) { return { + /** + * Adds tags to the user\'s profile + * @summary Add User Tags + * @param {string} userId Must be a valid user ID. + * @param {ChangeUserTagsRequest} changeUserTagsRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + addTags: async (userId: string, changeUserTagsRequest: ChangeUserTagsRequest, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'userId' is not null or undefined + assertParamExists('addTags', 'userId', userId) + // verify required parameter 'changeUserTagsRequest' is not null or undefined + assertParamExists('addTags', 'changeUserTagsRequest', changeUserTagsRequest) + const localVarPath = `/users/{userId}/addTags` + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(changeUserTagsRequest, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Checks whether the user has persistence data for a given world + * @summary Check User Persistence Exists + * @param {string} userId Must be a valid user ID. + * @param {string} worldId Must be a valid world ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + checkUserPersistenceExists: async (userId: string, worldId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'userId' is not null or undefined + assertParamExists('checkUserPersistenceExists', 'userId', userId) + // verify required parameter 'worldId' is not null or undefined + assertParamExists('checkUserPersistenceExists', 'worldId', worldId) + const localVarPath = `/users/{userId}/{worldId}/persist/exists` + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))) + .replace(`{${"worldId"}}`, encodeURIComponent(String(worldId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Deletes the user\'s persistence data for a given world + * @summary Delete User Persistence + * @param {string} userId Must be a valid user ID. + * @param {string} worldId Must be a valid world ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + deleteUserPersistence: async (userId: string, worldId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'userId' is not null or undefined + assertParamExists('deleteUserPersistence', 'userId', userId) + // verify required parameter 'worldId' is not null or undefined + assertParamExists('deleteUserPersistence', 'worldId', worldId) + const localVarPath = `/users/{userId}/{worldId}/persist` + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))) + .replace(`{${"worldId"}}`, encodeURIComponent(String(worldId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, /** * Get public user information about a specific user using their ID. * @summary Get User by ID @@ -20767,6 +23482,48 @@ export const UsersApiAxiosParamCreator = function (configuration?: Configuration options: localVarRequestOptions, }; }, + /** + * Removes tags from the user\'s profile + * @summary Remove User Tags + * @param {string} userId Must be a valid user ID. + * @param {ChangeUserTagsRequest} changeUserTagsRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + removeTags: async (userId: string, changeUserTagsRequest: ChangeUserTagsRequest, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'userId' is not null or undefined + assertParamExists('removeTags', 'userId', userId) + // verify required parameter 'changeUserTagsRequest' is not null or undefined + assertParamExists('removeTags', 'changeUserTagsRequest', changeUserTagsRequest) + const localVarPath = `/users/{userId}/removeTags` + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(changeUserTagsRequest, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, /** * Search and list any users by text query * @summary Search All Users @@ -20777,8 +23534,67 @@ export const UsersApiAxiosParamCreator = function (configuration?: Configuration * @param {*} [options] Override http request option. * @throws {RequiredError} */ - searchUsers: async (search?: string, developerType?: string, n?: number, offset?: number, options: AxiosRequestConfig = {}): Promise => { - const localVarPath = `/users`; + searchUsers: async (search?: string, developerType?: string, n?: number, offset?: number, options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/users`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + if (search !== undefined) { + localVarQueryParameter['search'] = search; + } + + if (developerType !== undefined) { + localVarQueryParameter['developerType'] = developerType; + } + + if (n !== undefined) { + localVarQueryParameter['n'] = n; + } + + if (offset !== undefined) { + localVarQueryParameter['offset'] = offset; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Updates a user\'s badge + * @summary Update User Badge + * @param {string} userId Must be a valid user ID. + * @param {string} badgeId Must be a valid badge ID. + * @param {UpdateUserBadgeRequest} updateUserBadgeRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + updateBadge: async (userId: string, badgeId: string, updateUserBadgeRequest: UpdateUserBadgeRequest, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'userId' is not null or undefined + assertParamExists('updateBadge', 'userId', userId) + // verify required parameter 'badgeId' is not null or undefined + assertParamExists('updateBadge', 'badgeId', badgeId) + // verify required parameter 'updateUserBadgeRequest' is not null or undefined + assertParamExists('updateBadge', 'updateUserBadgeRequest', updateUserBadgeRequest) + const localVarPath = `/users/{userId}/badges/{badgeId}` + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))) + .replace(`{${"badgeId"}}`, encodeURIComponent(String(badgeId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -20786,33 +23602,20 @@ export const UsersApiAxiosParamCreator = function (configuration?: Configuration baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; // authentication authCookie required - if (search !== undefined) { - localVarQueryParameter['search'] = search; - } - - if (developerType !== undefined) { - localVarQueryParameter['developerType'] = developerType; - } - - if (n !== undefined) { - localVarQueryParameter['n'] = n; - } - - if (offset !== undefined) { - localVarQueryParameter['offset'] = offset; - } - + localVarHeaderParameter['Content-Type'] = 'application/json'; + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(updateUserBadgeRequest, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), @@ -20907,6 +23710,42 @@ export const UsersApiAxiosParamCreator = function (configuration?: Configuration export const UsersApiFp = function(configuration?: Configuration) { const localVarAxiosParamCreator = UsersApiAxiosParamCreator(configuration) return { + /** + * Adds tags to the user\'s profile + * @summary Add User Tags + * @param {string} userId Must be a valid user ID. + * @param {ChangeUserTagsRequest} changeUserTagsRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async addTags(userId: string, changeUserTagsRequest: ChangeUserTagsRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.addTags(userId, changeUserTagsRequest, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Checks whether the user has persistence data for a given world + * @summary Check User Persistence Exists + * @param {string} userId Must be a valid user ID. + * @param {string} worldId Must be a valid world ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async checkUserPersistenceExists(userId: string, worldId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.checkUserPersistenceExists(userId, worldId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Deletes the user\'s persistence data for a given world + * @summary Delete User Persistence + * @param {string} userId Must be a valid user ID. + * @param {string} worldId Must be a valid world ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async deleteUserPersistence(userId: string, worldId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.deleteUserPersistence(userId, worldId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** * Get public user information about a specific user using their ID. * @summary Get User by ID @@ -21012,6 +23851,18 @@ export const UsersApiFp = function(configuration?: Configuration) { const localVarAxiosArgs = await localVarAxiosParamCreator.getUserRepresentedGroup(userId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, + /** + * Removes tags from the user\'s profile + * @summary Remove User Tags + * @param {string} userId Must be a valid user ID. + * @param {ChangeUserTagsRequest} changeUserTagsRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async removeTags(userId: string, changeUserTagsRequest: ChangeUserTagsRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.removeTags(userId, changeUserTagsRequest, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** * Search and list any users by text query * @summary Search All Users @@ -21026,6 +23877,19 @@ export const UsersApiFp = function(configuration?: Configuration) { const localVarAxiosArgs = await localVarAxiosParamCreator.searchUsers(search, developerType, n, offset, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, + /** + * Updates a user\'s badge + * @summary Update User Badge + * @param {string} userId Must be a valid user ID. + * @param {string} badgeId Must be a valid badge ID. + * @param {UpdateUserBadgeRequest} updateUserBadgeRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async updateBadge(userId: string, badgeId: string, updateUserBadgeRequest: UpdateUserBadgeRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.updateBadge(userId, badgeId, updateUserBadgeRequest, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** * Update a users information such as the email and birthday. * @summary Update User Info @@ -21059,6 +23923,39 @@ export const UsersApiFp = function(configuration?: Configuration) { export const UsersApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { const localVarFp = UsersApiFp(configuration) return { + /** + * Adds tags to the user\'s profile + * @summary Add User Tags + * @param {string} userId Must be a valid user ID. + * @param {ChangeUserTagsRequest} changeUserTagsRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + addTags(userId: string, changeUserTagsRequest: ChangeUserTagsRequest, options?: any): AxiosPromise { + return localVarFp.addTags(userId, changeUserTagsRequest, options).then((request) => request(axios, basePath)); + }, + /** + * Checks whether the user has persistence data for a given world + * @summary Check User Persistence Exists + * @param {string} userId Must be a valid user ID. + * @param {string} worldId Must be a valid world ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + checkUserPersistenceExists(userId: string, worldId: string, options?: any): AxiosPromise { + return localVarFp.checkUserPersistenceExists(userId, worldId, options).then((request) => request(axios, basePath)); + }, + /** + * Deletes the user\'s persistence data for a given world + * @summary Delete User Persistence + * @param {string} userId Must be a valid user ID. + * @param {string} worldId Must be a valid world ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + deleteUserPersistence(userId: string, worldId: string, options?: any): AxiosPromise { + return localVarFp.deleteUserPersistence(userId, worldId, options).then((request) => request(axios, basePath)); + }, /** * Get public user information about a specific user using their ID. * @summary Get User by ID @@ -21155,6 +24052,17 @@ export const UsersApiFactory = function (configuration?: Configuration, basePath getUserRepresentedGroup(userId: string, options?: any): AxiosPromise { return localVarFp.getUserRepresentedGroup(userId, options).then((request) => request(axios, basePath)); }, + /** + * Removes tags from the user\'s profile + * @summary Remove User Tags + * @param {string} userId Must be a valid user ID. + * @param {ChangeUserTagsRequest} changeUserTagsRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + removeTags(userId: string, changeUserTagsRequest: ChangeUserTagsRequest, options?: any): AxiosPromise { + return localVarFp.removeTags(userId, changeUserTagsRequest, options).then((request) => request(axios, basePath)); + }, /** * Search and list any users by text query * @summary Search All Users @@ -21168,6 +24076,18 @@ export const UsersApiFactory = function (configuration?: Configuration, basePath searchUsers(search?: string, developerType?: string, n?: number, offset?: number, options?: any): AxiosPromise> { return localVarFp.searchUsers(search, developerType, n, offset, options).then((request) => request(axios, basePath)); }, + /** + * Updates a user\'s badge + * @summary Update User Badge + * @param {string} userId Must be a valid user ID. + * @param {string} badgeId Must be a valid badge ID. + * @param {UpdateUserBadgeRequest} updateUserBadgeRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + updateBadge(userId: string, badgeId: string, updateUserBadgeRequest: UpdateUserBadgeRequest, options?: any): AxiosPromise { + return localVarFp.updateBadge(userId, badgeId, updateUserBadgeRequest, options).then((request) => request(axios, basePath)); + }, /** * Update a users information such as the email and birthday. * @summary Update User Info @@ -21199,6 +24119,45 @@ export const UsersApiFactory = function (configuration?: Configuration, basePath * @extends {BaseAPI} */ export class UsersApi extends BaseAPI { + /** + * Adds tags to the user\'s profile + * @summary Add User Tags + * @param {string} userId Must be a valid user ID. + * @param {ChangeUserTagsRequest} changeUserTagsRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof UsersApi + */ + public addTags(userId: string, changeUserTagsRequest: ChangeUserTagsRequest, options?: AxiosRequestConfig) { + return UsersApiFp(this.configuration).addTags(userId, changeUserTagsRequest, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Checks whether the user has persistence data for a given world + * @summary Check User Persistence Exists + * @param {string} userId Must be a valid user ID. + * @param {string} worldId Must be a valid world ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof UsersApi + */ + public checkUserPersistenceExists(userId: string, worldId: string, options?: AxiosRequestConfig) { + return UsersApiFp(this.configuration).checkUserPersistenceExists(userId, worldId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Deletes the user\'s persistence data for a given world + * @summary Delete User Persistence + * @param {string} userId Must be a valid user ID. + * @param {string} worldId Must be a valid world ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof UsersApi + */ + public deleteUserPersistence(userId: string, worldId: string, options?: AxiosRequestConfig) { + return UsersApiFp(this.configuration).deleteUserPersistence(userId, worldId, options).then((request) => request(this.axios, this.basePath)); + } + /** * Get public user information about a specific user using their ID. * @summary Get User by ID @@ -21313,6 +24272,19 @@ export class UsersApi extends BaseAPI { return UsersApiFp(this.configuration).getUserRepresentedGroup(userId, options).then((request) => request(this.axios, this.basePath)); } + /** + * Removes tags from the user\'s profile + * @summary Remove User Tags + * @param {string} userId Must be a valid user ID. + * @param {ChangeUserTagsRequest} changeUserTagsRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof UsersApi + */ + public removeTags(userId: string, changeUserTagsRequest: ChangeUserTagsRequest, options?: AxiosRequestConfig) { + return UsersApiFp(this.configuration).removeTags(userId, changeUserTagsRequest, options).then((request) => request(this.axios, this.basePath)); + } + /** * Search and list any users by text query * @summary Search All Users @@ -21328,6 +24300,20 @@ export class UsersApi extends BaseAPI { return UsersApiFp(this.configuration).searchUsers(search, developerType, n, offset, options).then((request) => request(this.axios, this.basePath)); } + /** + * Updates a user\'s badge + * @summary Update User Badge + * @param {string} userId Must be a valid user ID. + * @param {string} badgeId Must be a valid badge ID. + * @param {UpdateUserBadgeRequest} updateUserBadgeRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof UsersApi + */ + public updateBadge(userId: string, badgeId: string, updateUserBadgeRequest: UpdateUserBadgeRequest, options?: AxiosRequestConfig) { + return UsersApiFp(this.configuration).updateBadge(userId, badgeId, updateUserBadgeRequest, options).then((request) => request(this.axios, this.basePath)); + } + /** * Update a users information such as the email and birthday. * @summary Update User Info @@ -21361,6 +24347,46 @@ export class UsersApi extends BaseAPI { */ export const WorldsApiAxiosParamCreator = function (configuration?: Configuration) { return { + /** + * Checks whether the user has persistence data for a given world + * @summary Check User Persistence Exists + * @param {string} userId Must be a valid user ID. + * @param {string} worldId Must be a valid world ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + checkUserPersistenceExists: async (userId: string, worldId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'userId' is not null or undefined + assertParamExists('checkUserPersistenceExists', 'userId', userId) + // verify required parameter 'worldId' is not null or undefined + assertParamExists('checkUserPersistenceExists', 'worldId', worldId) + const localVarPath = `/users/{userId}/{worldId}/persist/exists` + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))) + .replace(`{${"worldId"}}`, encodeURIComponent(String(worldId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, /** * Create a new world. This endpoint requires `assetUrl` to be a valid File object with `.vrcw` file extension, and `imageUrl` to be a valid File object with an image file extension. * @summary Create World @@ -21395,6 +24421,46 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio options: localVarRequestOptions, }; }, + /** + * Deletes the user\'s persistence data for a given world + * @summary Delete User Persistence + * @param {string} userId Must be a valid user ID. + * @param {string} worldId Must be a valid world ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + deleteUserPersistence: async (userId: string, worldId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'userId' is not null or undefined + assertParamExists('deleteUserPersistence', 'userId', userId) + // verify required parameter 'worldId' is not null or undefined + assertParamExists('deleteUserPersistence', 'worldId', worldId) + const localVarPath = `/users/{userId}/{worldId}/persist` + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))) + .replace(`{${"worldId"}}`, encodeURIComponent(String(worldId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, /** * Delete a world. Notice a world is never fully \"deleted\", only its ReleaseStatus is set to \"hidden\" and the linked Files are deleted. The WorldID is permanently reserved. * @summary Delete World @@ -22093,6 +25159,18 @@ export const WorldsApiAxiosParamCreator = function (configuration?: Configuratio export const WorldsApiFp = function(configuration?: Configuration) { const localVarAxiosParamCreator = WorldsApiAxiosParamCreator(configuration) return { + /** + * Checks whether the user has persistence data for a given world + * @summary Check User Persistence Exists + * @param {string} userId Must be a valid user ID. + * @param {string} worldId Must be a valid world ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async checkUserPersistenceExists(userId: string, worldId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.checkUserPersistenceExists(userId, worldId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** * Create a new world. This endpoint requires `assetUrl` to be a valid File object with `.vrcw` file extension, and `imageUrl` to be a valid File object with an image file extension. * @summary Create World @@ -22104,6 +25182,18 @@ export const WorldsApiFp = function(configuration?: Configuration) { const localVarAxiosArgs = await localVarAxiosParamCreator.createWorld(createWorldRequest, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, + /** + * Deletes the user\'s persistence data for a given world + * @summary Delete User Persistence + * @param {string} userId Must be a valid user ID. + * @param {string} worldId Must be a valid world ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async deleteUserPersistence(userId: string, worldId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.deleteUserPersistence(userId, worldId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** * Delete a world. Notice a world is never fully \"deleted\", only its ReleaseStatus is set to \"hidden\" and the linked Files are deleted. The WorldID is permanently reserved. * @summary Delete World @@ -22298,6 +25388,17 @@ export const WorldsApiFp = function(configuration?: Configuration) { export const WorldsApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { const localVarFp = WorldsApiFp(configuration) return { + /** + * Checks whether the user has persistence data for a given world + * @summary Check User Persistence Exists + * @param {string} userId Must be a valid user ID. + * @param {string} worldId Must be a valid world ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + checkUserPersistenceExists(userId: string, worldId: string, options?: any): AxiosPromise { + return localVarFp.checkUserPersistenceExists(userId, worldId, options).then((request) => request(axios, basePath)); + }, /** * Create a new world. This endpoint requires `assetUrl` to be a valid File object with `.vrcw` file extension, and `imageUrl` to be a valid File object with an image file extension. * @summary Create World @@ -22308,6 +25409,17 @@ export const WorldsApiFactory = function (configuration?: Configuration, basePat createWorld(createWorldRequest?: CreateWorldRequest, options?: any): AxiosPromise { return localVarFp.createWorld(createWorldRequest, options).then((request) => request(axios, basePath)); }, + /** + * Deletes the user\'s persistence data for a given world + * @summary Delete User Persistence + * @param {string} userId Must be a valid user ID. + * @param {string} worldId Must be a valid world ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + deleteUserPersistence(userId: string, worldId: string, options?: any): AxiosPromise { + return localVarFp.deleteUserPersistence(userId, worldId, options).then((request) => request(axios, basePath)); + }, /** * Delete a world. Notice a world is never fully \"deleted\", only its ReleaseStatus is set to \"hidden\" and the linked Files are deleted. The WorldID is permanently reserved. * @summary Delete World @@ -22490,6 +25602,19 @@ export const WorldsApiFactory = function (configuration?: Configuration, basePat * @extends {BaseAPI} */ export class WorldsApi extends BaseAPI { + /** + * Checks whether the user has persistence data for a given world + * @summary Check User Persistence Exists + * @param {string} userId Must be a valid user ID. + * @param {string} worldId Must be a valid world ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof WorldsApi + */ + public checkUserPersistenceExists(userId: string, worldId: string, options?: AxiosRequestConfig) { + return WorldsApiFp(this.configuration).checkUserPersistenceExists(userId, worldId, options).then((request) => request(this.axios, this.basePath)); + } + /** * Create a new world. This endpoint requires `assetUrl` to be a valid File object with `.vrcw` file extension, and `imageUrl` to be a valid File object with an image file extension. * @summary Create World @@ -22502,6 +25627,19 @@ export class WorldsApi extends BaseAPI { return WorldsApiFp(this.configuration).createWorld(createWorldRequest, options).then((request) => request(this.axios, this.basePath)); } + /** + * Deletes the user\'s persistence data for a given world + * @summary Delete User Persistence + * @param {string} userId Must be a valid user ID. + * @param {string} worldId Must be a valid world ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof WorldsApi + */ + public deleteUserPersistence(userId: string, worldId: string, options?: AxiosRequestConfig) { + return WorldsApiFp(this.configuration).deleteUserPersistence(userId, worldId, options).then((request) => request(this.axios, this.basePath)); + } + /** * Delete a world. Notice a world is never fully \"deleted\", only its ReleaseStatus is set to \"hidden\" and the linked Files are deleted. The WorldID is permanently reserved. * @summary Delete World diff --git a/base.ts b/base.ts index 4a06ba4..2ed0e2c 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.19.1 + * The version of the OpenAPI document: 1.19.3 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index ca8ca34..98ca763 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.19.1 + * The version of the OpenAPI document: 1.19.3 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index 67eb060..e4cefc7 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.19.1 + * The version of the OpenAPI document: 1.19.3 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index 56248af..c120b3c 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.19.1 + * The version of the OpenAPI document: 1.19.3 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index c7d20b5..8cbf40e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.19.1", + "version": "1.19.3", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.19.1", + "version": "1.19.3", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index b7cfec3..c171bfe 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.19.1", + "version": "1.19.3", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "repository": { From 15d2c3434569cd8f88e8e6f97ff18707be8b2dd2 Mon Sep 17 00:00:00 2001 From: Yaakov Schlachter Date: Tue, 20 May 2025 15:12:55 -0400 Subject: [PATCH 126/130] FIX: cookie examples (#18) * Fixed cookie example * Delete cookies_load.js * Change `cookies_store.js` to only store * Create cookies_load.js * Update cookies_store.js * Update cookies_load.js * Fix typo --------- Co-authored-by: JelleJurre <76777936+jellejurre@users.noreply.github.com> --- cookies_load.js | 26 +++++++++++++++++++++----- cookies_store.js | 22 ++++++++++++++++------ 2 files changed, 37 insertions(+), 11 deletions(-) diff --git a/cookies_load.js b/cookies_load.js index 7f23375..3ebf822 100644 --- a/cookies_load.js +++ b/cookies_load.js @@ -1,20 +1,36 @@ const vrchat = require("vrchat"); +const readline = require("readline") + +const tough = require("tough-cookie"); +const fs = require("fs"); + +const COOKIE_FILE = "cookies.json"; +let cookieJar = new tough.CookieJar(); + +if (fs.existsSync(COOKIE_FILE)) { + const serializedCookies = fs.readFileSync(COOKIE_FILE, "utf-8"); + cookieJar = tough.CookieJar.deserializeSync(JSON.parse(serializedCookies)); +} + const configuration = new vrchat.Configuration({ username: "username", password: "password", baseOptions: { headers: { - "User-Agent": "ExampleProgram/0.0.1 my@email.com" - "Cookie": "auth=[AUTH_COOKIE_HERE]; twoFactorAuth=[TWO_FACTOR_AUTH_COOKIE_HERE]}" - } + "User-Agent": "ExampleProgram/0.0.1 my@email.com", + // Use this instead of jar if you want to hard code cookies + // "Cookie": "auth=[AUTH_COOKIE_HERE]; twoFactorAuth=[TWO_FACTOR_AUTH_COOKIE_HERE]" + }, + jar: cookieJar, } }); -const AuthenticationApi = new vrchat.AuthenticationApi(configuration); + +const authenticationApi = new AuthenticationApi(configuration); async function main() { - const currentUser = (await AuthenticationApi.getCurrentUser()).data; + var currentUser = (await authenticationApi.getCurrentUser()).data console.log(`Logged in as: ${currentUser.displayName}`); } diff --git a/cookies_store.js b/cookies_store.js index 27d4133..59c8763 100644 --- a/cookies_store.js +++ b/cookies_store.js @@ -1,17 +1,23 @@ const vrchat = require("vrchat"); const readline = require("readline") -import globalAxios from "axios" -const rl = readline.createInterface({ input: process.stdin, output: process.stdout }); +const tough = require("tough-cookie"); +const fs = require("fs"); + +const rl = readline.createInterface({input: process.stdin, output: process.stdout}); const prompt = (query) => new Promise((resolve) => rl.question(query, resolve)); +const COOKIE_FILE = "cookies.json"; +let cookieJar = new tough.CookieJar(); + const configuration = new vrchat.Configuration({ username: "username", password: "password", baseOptions: { - headers: { "User-Agent": "ExampleProgram/0.0.1 my@email.com"} + headers: { "User-Agent": "ExampleProgram/0.0.1 my@email.com"}, + jar: cookieJar, } }); @@ -32,9 +38,13 @@ async function main() { console.log(`Logged in as: ${currentUser.displayName}`); - const store = globalAxios.defaults.jar.store.idx["api.vrchat.cloud"]["/"]; - console.log(`auth=${store["auth"]["value"]}`) - console.log(`twoFactorAuth=${store["twoFactorAuth"]["value"]}`) + const serializedJar = JSON.stringify(cookieJar.serializeSync()); + fs.writeFileSync(COOKIE_FILE, serializedJar); + + const deserializedJar = tough.CookieJar.deserializeSync(serializedJar); + const store = deserializedJar.store.idx["api.vrchat.cloud"]["/"]; + console.log(`auth=${store["auth"]["value"]}`); + console.log(`twoFactorAuth=${store["twoFactorAuth"]["value"]}`); } main(); From c9bdf7f6ecdf2c95677a7c333b962c04421d2c78 Mon Sep 17 00:00:00 2001 From: VRCCat Date: Tue, 3 Jun 2025 02:22:48 +0000 Subject: [PATCH 127/130] Upgrade Node SDK to spec 1.19.4 --- api.ts | 1931 +++++++++++++++++++++++---------------------- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 +- package.json | 2 +- 7 files changed, 1001 insertions(+), 944 deletions(-) diff --git a/api.ts b/api.ts index 5a023c0..853fd76 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.19.3 + * The version of the OpenAPI document: 1.19.4 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -9288,6 +9288,19 @@ export interface UpdateGroupMemberRequest { */ 'managerNotes'?: string; } +/** + * + * @export + * @interface UpdateGroupRepresentationRequest + */ +export interface UpdateGroupRepresentationRequest { + /** + * Whether the user is representing the group. + * @type {boolean} + * @memberof UpdateGroupRepresentationRequest + */ + 'isRepresenting': boolean; +} /** * * @export @@ -12149,6 +12162,7 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati * @summary Select Fallback Avatar * @param {string} avatarId Must be a valid avatar ID. * @param {*} [options] Override http request option. + * @deprecated * @throws {RequiredError} */ selectFallbackAvatar: async (avatarId: string, options: AxiosRequestConfig = {}): Promise => { @@ -12380,6 +12394,7 @@ export const AvatarsApiFp = function(configuration?: Configuration) { * @summary Select Fallback Avatar * @param {string} avatarId Must be a valid avatar ID. * @param {*} [options] Override http request option. + * @deprecated * @throws {RequiredError} */ async selectFallbackAvatar(avatarId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { @@ -12547,6 +12562,7 @@ export const AvatarsApiFactory = function (configuration?: Configuration, basePa * @summary Select Fallback Avatar * @param {string} avatarId Must be a valid avatar ID. * @param {*} [options] Override http request option. + * @deprecated * @throws {RequiredError} */ selectFallbackAvatar(avatarId: string, options?: any): AxiosPromise { @@ -12734,6 +12750,7 @@ export class AvatarsApi extends BaseAPI { * @summary Select Fallback Avatar * @param {string} avatarId Must be a valid avatar ID. * @param {*} [options] Override http request option. + * @deprecated * @throws {RequiredError} * @memberof AvatarsApi */ @@ -17777,6 +17794,48 @@ export const GroupsApiAxiosParamCreator = function (configuration?: Configuratio options: localVarRequestOptions, }; }, + /** + * Updates whether the user is representing the group. When `isRepresenting` is set to `true`, this flag will be set to `false` for all other groups + * @summary Update Group Representation + * @param {string} groupId Must be a valid group ID. + * @param {UpdateGroupRepresentationRequest} updateGroupRepresentationRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + updateGroupRepresentation: async (groupId: string, updateGroupRepresentationRequest: UpdateGroupRepresentationRequest, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'groupId' is not null or undefined + assertParamExists('updateGroupRepresentation', 'groupId', groupId) + // verify required parameter 'updateGroupRepresentationRequest' is not null or undefined + assertParamExists('updateGroupRepresentation', 'updateGroupRepresentationRequest', updateGroupRepresentationRequest) + const localVarPath = `/groups/{groupId}/representation` + .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(updateGroupRepresentationRequest, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, /** * Updates a group role by ID. * @summary Update Group Role @@ -18350,6 +18409,18 @@ export const GroupsApiFp = function(configuration?: Configuration) { const localVarAxiosArgs = await localVarAxiosParamCreator.updateGroupPost(groupId, notificationId, createGroupPostRequest, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, + /** + * Updates whether the user is representing the group. When `isRepresenting` is set to `true`, this flag will be set to `false` for all other groups + * @summary Update Group Representation + * @param {string} groupId Must be a valid group ID. + * @param {UpdateGroupRepresentationRequest} updateGroupRepresentationRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async updateGroupRepresentation(groupId: string, updateGroupRepresentationRequest: UpdateGroupRepresentationRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.updateGroupRepresentation(groupId, updateGroupRepresentationRequest, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** * Updates a group role by ID. * @summary Update Group Role @@ -18850,6 +18921,17 @@ export const GroupsApiFactory = function (configuration?: Configuration, basePat updateGroupPost(groupId: string, notificationId: string, createGroupPostRequest: CreateGroupPostRequest, options?: any): AxiosPromise { return localVarFp.updateGroupPost(groupId, notificationId, createGroupPostRequest, options).then((request) => request(axios, basePath)); }, + /** + * Updates whether the user is representing the group. When `isRepresenting` is set to `true`, this flag will be set to `false` for all other groups + * @summary Update Group Representation + * @param {string} groupId Must be a valid group ID. + * @param {UpdateGroupRepresentationRequest} updateGroupRepresentationRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + updateGroupRepresentation(groupId: string, updateGroupRepresentationRequest: UpdateGroupRepresentationRequest, options?: any): AxiosPromise { + return localVarFp.updateGroupRepresentation(groupId, updateGroupRepresentationRequest, options).then((request) => request(axios, basePath)); + }, /** * Updates a group role by ID. * @summary Update Group Role @@ -19433,6 +19515,19 @@ export class GroupsApi extends BaseAPI { return GroupsApiFp(this.configuration).updateGroupPost(groupId, notificationId, createGroupPostRequest, options).then((request) => request(this.axios, this.basePath)); } + /** + * Updates whether the user is representing the group. When `isRepresenting` is set to `true`, this flag will be set to `false` for all other groups + * @summary Update Group Representation + * @param {string} groupId Must be a valid group ID. + * @param {UpdateGroupRepresentationRequest} updateGroupRepresentationRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof GroupsApi + */ + public updateGroupRepresentation(groupId: string, updateGroupRepresentationRequest: UpdateGroupRepresentationRequest, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).updateGroupRepresentation(groupId, updateGroupRepresentationRequest, options).then((request) => request(this.axios, this.basePath)); + } + /** * Updates a group role by ID. * @summary Update Group Role @@ -21077,23 +21172,19 @@ export class JamsApi extends BaseAPI { /** - * NotificationsApi - axios parameter creator + * MiscellaneousApi - axios parameter creator * @export */ -export const NotificationsApiAxiosParamCreator = function (configuration?: Configuration) { +export const MiscellaneousApiAxiosParamCreator = function (configuration?: Configuration) { return { /** - * Accept a friend request by notification `frq_` ID. Friend requests can be found using the NotificationsAPI `getNotifications` by filtering of type `friendRequest`. - * @summary Accept Friend Request - * @param {string} notificationId Must be a valid notification ID. + * Returns a list of all permissions currently granted by the user. Permissions are assigned e.g. by subscribing to VRC+. + * @summary Get Assigned Permissions * @param {*} [options] Override http request option. * @throws {RequiredError} */ - acceptFriendRequest: async (notificationId: string, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'notificationId' is not null or undefined - assertParamExists('acceptFriendRequest', 'notificationId', notificationId) - const localVarPath = `/auth/user/notifications/{notificationId}/accept` - .replace(`{${"notificationId"}}`, encodeURIComponent(String(notificationId))); + getAssignedPermissions: async (options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/auth/permissions`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -21101,7 +21192,7 @@ export const NotificationsApiAxiosParamCreator = function (configuration?: Confi baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; @@ -21119,13 +21210,15 @@ export const NotificationsApiAxiosParamCreator = function (configuration?: Confi }; }, /** - * Clear **all** notifications. - * @summary Clear All Notifications + * Fetches the CSS code to the frontend React website. + * @summary Download CSS + * @param {'public' | 'internal'} [variant] Specifies which `variant` of the site. Public is the end-user site, while `internal` is the staff-only site with special pages for moderation and management. + * @param {string} [branch] Specifies which git branch the site should load frontend source code from. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - clearNotifications: async (options: AxiosRequestConfig = {}): Promise => { - const localVarPath = `/auth/user/notifications/clear`; + getCSS: async (variant?: 'public' | 'internal', branch?: string, options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/css/app.css`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -21133,11 +21226,17 @@ export const NotificationsApiAxiosParamCreator = function (configuration?: Confi baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication authCookie required + if (variant !== undefined) { + localVarQueryParameter['variant'] = variant; + } + + if (branch !== undefined) { + localVarQueryParameter['branch'] = branch; + } @@ -21151,17 +21250,13 @@ export const NotificationsApiAxiosParamCreator = function (configuration?: Confi }; }, /** - * Delete a notification. - * @summary Delete Notification - * @param {string} notificationId Must be a valid notification ID. + * API config contains configuration that the clients needs to work properly. Currently the most important value here is `clientApiKey` which is used for all other API endpoints. + * @summary Fetch API Config * @param {*} [options] Override http request option. * @throws {RequiredError} */ - deleteNotification: async (notificationId: string, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'notificationId' is not null or undefined - assertParamExists('deleteNotification', 'notificationId', notificationId) - const localVarPath = `/auth/user/notifications/{notificationId}/hide` - .replace(`{${"notificationId"}}`, encodeURIComponent(String(notificationId))); + getConfig: async (options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/config`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -21169,12 +21264,10 @@ export const NotificationsApiAxiosParamCreator = function (configuration?: Confi baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication authCookie required - setSearchParams(localVarUrlObj, localVarQueryParameter); @@ -21187,17 +21280,13 @@ export const NotificationsApiAxiosParamCreator = function (configuration?: Confi }; }, /** - * Get a notification by notification `not_` ID. - * @summary Show notification - * @param {string} notificationId Must be a valid notification ID. + * Returns the current number of online users. **NOTE:** The response type is not a JSON object, but a simple JSON integer. + * @summary Current Online Users * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getNotification: async (notificationId: string, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'notificationId' is not null or undefined - assertParamExists('getNotification', 'notificationId', notificationId) - const localVarPath = `/auth/user/notifications/{notificationId}` - .replace(`{${"notificationId"}}`, encodeURIComponent(String(notificationId))); + getCurrentOnlineUsers: async (options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/visits`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -21209,8 +21298,6 @@ export const NotificationsApiAxiosParamCreator = function (configuration?: Confi const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication authCookie required - setSearchParams(localVarUrlObj, localVarQueryParameter); @@ -21223,19 +21310,14 @@ export const NotificationsApiAxiosParamCreator = function (configuration?: Confi }; }, /** - * Retrieve all of the current user\'s notifications. - * @summary List Notifications - * @param {string} [type] Only send notifications of this type (can use `all` for all). This parameter no longer does anything, and is deprecated. - * @param {boolean} [sent] Return notifications sent by the user. Must be false or omitted. - * @param {boolean} [hidden] Whether to return hidden or non-hidden notifications. True only allowed on type `friendRequest`. - * @param {string} [after] Only return notifications sent after this Date. Ignored if type is `friendRequest`. - * @param {number} [n] The number of objects to return. - * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * ~~Gets the overall health status, the server name, and the current build version tag of the API.~~ **DEPRECATED:** VRChat has suddenly restricted this endpoint for unknown reasons, and now always return 401 Unauthorized. + * @summary Check API Health * @param {*} [options] Override http request option. + * @deprecated * @throws {RequiredError} */ - getNotifications: async (type?: string, sent?: boolean, hidden?: boolean, after?: string, n?: number, offset?: number, options: AxiosRequestConfig = {}): Promise => { - const localVarPath = `/auth/user/notifications`; + getHealth: async (options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/health`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -21247,30 +21329,84 @@ export const NotificationsApiAxiosParamCreator = function (configuration?: Confi const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication authCookie required - if (type !== undefined) { - localVarQueryParameter['type'] = type; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * IPS (Info Push System) is a system for VRChat to push out dynamic information to the client. This is primarily used by the Quick-Menu info banners, but can also be used to e.g. alert you to update your game to the latest version. `include` is used to query what Information Pushes should be included in the response. If include is missing or empty, then no notices will normally be returned. This is an \"any of\" search. `require` is used to limit what Information Pushes should be included in the response. This is usually used in combination with `include`, and is an \"all of\" search. + * @summary Show Information Notices + * @param {string} [require] Tags to include (comma-separated). All of the tags needs to be present. + * @param {string} [include] Tags to include (comma-separated). Any of the tags needs to be present. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getInfoPush: async (require?: string, include?: string, options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/infoPush`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; } - if (sent !== undefined) { - localVarQueryParameter['sent'] = sent; + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (require !== undefined) { + localVarQueryParameter['require'] = require; } - if (hidden !== undefined) { - localVarQueryParameter['hidden'] = hidden; + if (include !== undefined) { + localVarQueryParameter['include'] = include; } - if (after !== undefined) { - localVarQueryParameter['after'] = after; + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Fetches the JavaScript code to the frontend React website. + * @summary Download JavaScript + * @param {'public' | 'internal'} [variant] Specifies which `variant` of the site. Public is the end-user site, while `internal` is the staff-only site with special pages for moderation and management. + * @param {string} [branch] Specifies which git branch the site should load frontend source code from. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getJavaScript: async (variant?: 'public' | 'internal', branch?: string, options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/js/app.js`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; } - if (n !== undefined) { - localVarQueryParameter['n'] = n; + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (variant !== undefined) { + localVarQueryParameter['variant'] = variant; } - if (offset !== undefined) { - localVarQueryParameter['offset'] = offset; + if (branch !== undefined) { + localVarQueryParameter['branch'] = branch; } @@ -21285,17 +21421,17 @@ export const NotificationsApiAxiosParamCreator = function (configuration?: Confi }; }, /** - * Mark a notification as seen. - * @summary Mark Notification As Read - * @param {string} notificationId Must be a valid notification ID. + * Returns a single permission. This endpoint is pretty useless, as it returns the exact same information as `/auth/permissions`. + * @summary Get Permission + * @param {string} permissionId Must be a valid permission ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - markNotificationAsRead: async (notificationId: string, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'notificationId' is not null or undefined - assertParamExists('markNotificationAsRead', 'notificationId', notificationId) - const localVarPath = `/auth/user/notifications/{notificationId}/see` - .replace(`{${"notificationId"}}`, encodeURIComponent(String(notificationId))); + getPermission: async (permissionId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'permissionId' is not null or undefined + assertParamExists('getPermission', 'permissionId', permissionId) + const localVarPath = `/permissions/{permissionId}` + .replace(`{${"permissionId"}}`, encodeURIComponent(String(permissionId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -21303,7 +21439,7 @@ export const NotificationsApiAxiosParamCreator = function (configuration?: Confi baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; @@ -21320,262 +21456,380 @@ export const NotificationsApiAxiosParamCreator = function (configuration?: Confi options: localVarRequestOptions, }; }, - } -}; - -/** - * NotificationsApi - functional programming interface - * @export - */ -export const NotificationsApiFp = function(configuration?: Configuration) { - const localVarAxiosParamCreator = NotificationsApiAxiosParamCreator(configuration) - return { /** - * Accept a friend request by notification `frq_` ID. Friend requests can be found using the NotificationsAPI `getNotifications` by filtering of type `friendRequest`. - * @summary Accept Friend Request - * @param {string} notificationId Must be a valid notification ID. + * Returns the current time of the API server. **NOTE:** The response type is not a JSON object, but a simple JSON string. + * @summary Current System Time * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async acceptFriendRequest(notificationId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.acceptFriendRequest(notificationId, options); + getSystemTime: async (options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/time`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + } +}; + +/** + * MiscellaneousApi - functional programming interface + * @export + */ +export const MiscellaneousApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = MiscellaneousApiAxiosParamCreator(configuration) + return { + /** + * Returns a list of all permissions currently granted by the user. Permissions are assigned e.g. by subscribing to VRC+. + * @summary Get Assigned Permissions + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getAssignedPermissions(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getAssignedPermissions(options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Clear **all** notifications. - * @summary Clear All Notifications + * Fetches the CSS code to the frontend React website. + * @summary Download CSS + * @param {'public' | 'internal'} [variant] Specifies which `variant` of the site. Public is the end-user site, while `internal` is the staff-only site with special pages for moderation and management. + * @param {string} [branch] Specifies which git branch the site should load frontend source code from. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async clearNotifications(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.clearNotifications(options); + async getCSS(variant?: 'public' | 'internal', branch?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getCSS(variant, branch, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Delete a notification. - * @summary Delete Notification - * @param {string} notificationId Must be a valid notification ID. + * API config contains configuration that the clients needs to work properly. Currently the most important value here is `clientApiKey` which is used for all other API endpoints. + * @summary Fetch API Config * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async deleteNotification(notificationId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.deleteNotification(notificationId, options); + async getConfig(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getConfig(options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Get a notification by notification `not_` ID. - * @summary Show notification - * @param {string} notificationId Must be a valid notification ID. + * Returns the current number of online users. **NOTE:** The response type is not a JSON object, but a simple JSON integer. + * @summary Current Online Users * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getNotification(notificationId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getNotification(notificationId, options); + async getCurrentOnlineUsers(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getCurrentOnlineUsers(options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Retrieve all of the current user\'s notifications. - * @summary List Notifications - * @param {string} [type] Only send notifications of this type (can use `all` for all). This parameter no longer does anything, and is deprecated. - * @param {boolean} [sent] Return notifications sent by the user. Must be false or omitted. - * @param {boolean} [hidden] Whether to return hidden or non-hidden notifications. True only allowed on type `friendRequest`. - * @param {string} [after] Only return notifications sent after this Date. Ignored if type is `friendRequest`. - * @param {number} [n] The number of objects to return. - * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * ~~Gets the overall health status, the server name, and the current build version tag of the API.~~ **DEPRECATED:** VRChat has suddenly restricted this endpoint for unknown reasons, and now always return 401 Unauthorized. + * @summary Check API Health * @param {*} [options] Override http request option. + * @deprecated * @throws {RequiredError} */ - async getNotifications(type?: string, sent?: boolean, hidden?: boolean, after?: string, n?: number, offset?: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getNotifications(type, sent, hidden, after, n, offset, options); + async getHealth(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getHealth(options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Mark a notification as seen. - * @summary Mark Notification As Read - * @param {string} notificationId Must be a valid notification ID. + * IPS (Info Push System) is a system for VRChat to push out dynamic information to the client. This is primarily used by the Quick-Menu info banners, but can also be used to e.g. alert you to update your game to the latest version. `include` is used to query what Information Pushes should be included in the response. If include is missing or empty, then no notices will normally be returned. This is an \"any of\" search. `require` is used to limit what Information Pushes should be included in the response. This is usually used in combination with `include`, and is an \"all of\" search. + * @summary Show Information Notices + * @param {string} [require] Tags to include (comma-separated). All of the tags needs to be present. + * @param {string} [include] Tags to include (comma-separated). Any of the tags needs to be present. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async markNotificationAsRead(notificationId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.markNotificationAsRead(notificationId, options); + async getInfoPush(require?: string, include?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getInfoPush(require, include, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Fetches the JavaScript code to the frontend React website. + * @summary Download JavaScript + * @param {'public' | 'internal'} [variant] Specifies which `variant` of the site. Public is the end-user site, while `internal` is the staff-only site with special pages for moderation and management. + * @param {string} [branch] Specifies which git branch the site should load frontend source code from. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getJavaScript(variant?: 'public' | 'internal', branch?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getJavaScript(variant, branch, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Returns a single permission. This endpoint is pretty useless, as it returns the exact same information as `/auth/permissions`. + * @summary Get Permission + * @param {string} permissionId Must be a valid permission ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getPermission(permissionId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getPermission(permissionId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Returns the current time of the API server. **NOTE:** The response type is not a JSON object, but a simple JSON string. + * @summary Current System Time + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getSystemTime(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getSystemTime(options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, } }; /** - * NotificationsApi - factory interface + * MiscellaneousApi - factory interface * @export */ -export const NotificationsApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { - const localVarFp = NotificationsApiFp(configuration) +export const MiscellaneousApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = MiscellaneousApiFp(configuration) return { /** - * Accept a friend request by notification `frq_` ID. Friend requests can be found using the NotificationsAPI `getNotifications` by filtering of type `friendRequest`. - * @summary Accept Friend Request - * @param {string} notificationId Must be a valid notification ID. + * Returns a list of all permissions currently granted by the user. Permissions are assigned e.g. by subscribing to VRC+. + * @summary Get Assigned Permissions * @param {*} [options] Override http request option. * @throws {RequiredError} */ - acceptFriendRequest(notificationId: string, options?: any): AxiosPromise { - return localVarFp.acceptFriendRequest(notificationId, options).then((request) => request(axios, basePath)); + getAssignedPermissions(options?: any): AxiosPromise> { + return localVarFp.getAssignedPermissions(options).then((request) => request(axios, basePath)); }, /** - * Clear **all** notifications. - * @summary Clear All Notifications + * Fetches the CSS code to the frontend React website. + * @summary Download CSS + * @param {'public' | 'internal'} [variant] Specifies which `variant` of the site. Public is the end-user site, while `internal` is the staff-only site with special pages for moderation and management. + * @param {string} [branch] Specifies which git branch the site should load frontend source code from. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - clearNotifications(options?: any): AxiosPromise { - return localVarFp.clearNotifications(options).then((request) => request(axios, basePath)); + getCSS(variant?: 'public' | 'internal', branch?: string, options?: any): AxiosPromise { + return localVarFp.getCSS(variant, branch, options).then((request) => request(axios, basePath)); }, /** - * Delete a notification. - * @summary Delete Notification - * @param {string} notificationId Must be a valid notification ID. + * API config contains configuration that the clients needs to work properly. Currently the most important value here is `clientApiKey` which is used for all other API endpoints. + * @summary Fetch API Config * @param {*} [options] Override http request option. * @throws {RequiredError} */ - deleteNotification(notificationId: string, options?: any): AxiosPromise { - return localVarFp.deleteNotification(notificationId, options).then((request) => request(axios, basePath)); + getConfig(options?: any): AxiosPromise { + return localVarFp.getConfig(options).then((request) => request(axios, basePath)); }, /** - * Get a notification by notification `not_` ID. - * @summary Show notification - * @param {string} notificationId Must be a valid notification ID. + * Returns the current number of online users. **NOTE:** The response type is not a JSON object, but a simple JSON integer. + * @summary Current Online Users * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getNotification(notificationId: string, options?: any): AxiosPromise { - return localVarFp.getNotification(notificationId, options).then((request) => request(axios, basePath)); + getCurrentOnlineUsers(options?: any): AxiosPromise { + return localVarFp.getCurrentOnlineUsers(options).then((request) => request(axios, basePath)); }, /** - * Retrieve all of the current user\'s notifications. - * @summary List Notifications - * @param {string} [type] Only send notifications of this type (can use `all` for all). This parameter no longer does anything, and is deprecated. - * @param {boolean} [sent] Return notifications sent by the user. Must be false or omitted. - * @param {boolean} [hidden] Whether to return hidden or non-hidden notifications. True only allowed on type `friendRequest`. - * @param {string} [after] Only return notifications sent after this Date. Ignored if type is `friendRequest`. - * @param {number} [n] The number of objects to return. - * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * ~~Gets the overall health status, the server name, and the current build version tag of the API.~~ **DEPRECATED:** VRChat has suddenly restricted this endpoint for unknown reasons, and now always return 401 Unauthorized. + * @summary Check API Health * @param {*} [options] Override http request option. + * @deprecated * @throws {RequiredError} */ - getNotifications(type?: string, sent?: boolean, hidden?: boolean, after?: string, n?: number, offset?: number, options?: any): AxiosPromise> { - return localVarFp.getNotifications(type, sent, hidden, after, n, offset, options).then((request) => request(axios, basePath)); + getHealth(options?: any): AxiosPromise { + return localVarFp.getHealth(options).then((request) => request(axios, basePath)); }, /** - * Mark a notification as seen. - * @summary Mark Notification As Read - * @param {string} notificationId Must be a valid notification ID. + * IPS (Info Push System) is a system for VRChat to push out dynamic information to the client. This is primarily used by the Quick-Menu info banners, but can also be used to e.g. alert you to update your game to the latest version. `include` is used to query what Information Pushes should be included in the response. If include is missing or empty, then no notices will normally be returned. This is an \"any of\" search. `require` is used to limit what Information Pushes should be included in the response. This is usually used in combination with `include`, and is an \"all of\" search. + * @summary Show Information Notices + * @param {string} [require] Tags to include (comma-separated). All of the tags needs to be present. + * @param {string} [include] Tags to include (comma-separated). Any of the tags needs to be present. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - markNotificationAsRead(notificationId: string, options?: any): AxiosPromise { - return localVarFp.markNotificationAsRead(notificationId, options).then((request) => request(axios, basePath)); + getInfoPush(require?: string, include?: string, options?: any): AxiosPromise> { + return localVarFp.getInfoPush(require, include, options).then((request) => request(axios, basePath)); + }, + /** + * Fetches the JavaScript code to the frontend React website. + * @summary Download JavaScript + * @param {'public' | 'internal'} [variant] Specifies which `variant` of the site. Public is the end-user site, while `internal` is the staff-only site with special pages for moderation and management. + * @param {string} [branch] Specifies which git branch the site should load frontend source code from. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getJavaScript(variant?: 'public' | 'internal', branch?: string, options?: any): AxiosPromise { + return localVarFp.getJavaScript(variant, branch, options).then((request) => request(axios, basePath)); + }, + /** + * Returns a single permission. This endpoint is pretty useless, as it returns the exact same information as `/auth/permissions`. + * @summary Get Permission + * @param {string} permissionId Must be a valid permission ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getPermission(permissionId: string, options?: any): AxiosPromise { + return localVarFp.getPermission(permissionId, options).then((request) => request(axios, basePath)); + }, + /** + * Returns the current time of the API server. **NOTE:** The response type is not a JSON object, but a simple JSON string. + * @summary Current System Time + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getSystemTime(options?: any): AxiosPromise { + return localVarFp.getSystemTime(options).then((request) => request(axios, basePath)); }, }; }; /** - * NotificationsApi - object-oriented interface + * MiscellaneousApi - object-oriented interface * @export - * @class NotificationsApi + * @class MiscellaneousApi * @extends {BaseAPI} */ -export class NotificationsApi extends BaseAPI { +export class MiscellaneousApi extends BaseAPI { /** - * Accept a friend request by notification `frq_` ID. Friend requests can be found using the NotificationsAPI `getNotifications` by filtering of type `friendRequest`. - * @summary Accept Friend Request - * @param {string} notificationId Must be a valid notification ID. + * Returns a list of all permissions currently granted by the user. Permissions are assigned e.g. by subscribing to VRC+. + * @summary Get Assigned Permissions * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof NotificationsApi + * @memberof MiscellaneousApi */ - public acceptFriendRequest(notificationId: string, options?: AxiosRequestConfig) { - return NotificationsApiFp(this.configuration).acceptFriendRequest(notificationId, options).then((request) => request(this.axios, this.basePath)); + public getAssignedPermissions(options?: AxiosRequestConfig) { + return MiscellaneousApiFp(this.configuration).getAssignedPermissions(options).then((request) => request(this.axios, this.basePath)); } /** - * Clear **all** notifications. - * @summary Clear All Notifications + * Fetches the CSS code to the frontend React website. + * @summary Download CSS + * @param {'public' | 'internal'} [variant] Specifies which `variant` of the site. Public is the end-user site, while `internal` is the staff-only site with special pages for moderation and management. + * @param {string} [branch] Specifies which git branch the site should load frontend source code from. * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof NotificationsApi + * @memberof MiscellaneousApi */ - public clearNotifications(options?: AxiosRequestConfig) { - return NotificationsApiFp(this.configuration).clearNotifications(options).then((request) => request(this.axios, this.basePath)); + public getCSS(variant?: 'public' | 'internal', branch?: string, options?: AxiosRequestConfig) { + return MiscellaneousApiFp(this.configuration).getCSS(variant, branch, options).then((request) => request(this.axios, this.basePath)); } /** - * Delete a notification. - * @summary Delete Notification - * @param {string} notificationId Must be a valid notification ID. + * API config contains configuration that the clients needs to work properly. Currently the most important value here is `clientApiKey` which is used for all other API endpoints. + * @summary Fetch API Config * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof NotificationsApi + * @memberof MiscellaneousApi */ - public deleteNotification(notificationId: string, options?: AxiosRequestConfig) { - return NotificationsApiFp(this.configuration).deleteNotification(notificationId, options).then((request) => request(this.axios, this.basePath)); + public getConfig(options?: AxiosRequestConfig) { + return MiscellaneousApiFp(this.configuration).getConfig(options).then((request) => request(this.axios, this.basePath)); } /** - * Get a notification by notification `not_` ID. - * @summary Show notification - * @param {string} notificationId Must be a valid notification ID. + * Returns the current number of online users. **NOTE:** The response type is not a JSON object, but a simple JSON integer. + * @summary Current Online Users * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof NotificationsApi + * @memberof MiscellaneousApi */ - public getNotification(notificationId: string, options?: AxiosRequestConfig) { - return NotificationsApiFp(this.configuration).getNotification(notificationId, options).then((request) => request(this.axios, this.basePath)); + public getCurrentOnlineUsers(options?: AxiosRequestConfig) { + return MiscellaneousApiFp(this.configuration).getCurrentOnlineUsers(options).then((request) => request(this.axios, this.basePath)); } /** - * Retrieve all of the current user\'s notifications. - * @summary List Notifications - * @param {string} [type] Only send notifications of this type (can use `all` for all). This parameter no longer does anything, and is deprecated. - * @param {boolean} [sent] Return notifications sent by the user. Must be false or omitted. - * @param {boolean} [hidden] Whether to return hidden or non-hidden notifications. True only allowed on type `friendRequest`. - * @param {string} [after] Only return notifications sent after this Date. Ignored if type is `friendRequest`. - * @param {number} [n] The number of objects to return. - * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * ~~Gets the overall health status, the server name, and the current build version tag of the API.~~ **DEPRECATED:** VRChat has suddenly restricted this endpoint for unknown reasons, and now always return 401 Unauthorized. + * @summary Check API Health * @param {*} [options] Override http request option. + * @deprecated * @throws {RequiredError} - * @memberof NotificationsApi + * @memberof MiscellaneousApi */ - public getNotifications(type?: string, sent?: boolean, hidden?: boolean, after?: string, n?: number, offset?: number, options?: AxiosRequestConfig) { - return NotificationsApiFp(this.configuration).getNotifications(type, sent, hidden, after, n, offset, options).then((request) => request(this.axios, this.basePath)); + public getHealth(options?: AxiosRequestConfig) { + return MiscellaneousApiFp(this.configuration).getHealth(options).then((request) => request(this.axios, this.basePath)); } /** - * Mark a notification as seen. - * @summary Mark Notification As Read - * @param {string} notificationId Must be a valid notification ID. + * IPS (Info Push System) is a system for VRChat to push out dynamic information to the client. This is primarily used by the Quick-Menu info banners, but can also be used to e.g. alert you to update your game to the latest version. `include` is used to query what Information Pushes should be included in the response. If include is missing or empty, then no notices will normally be returned. This is an \"any of\" search. `require` is used to limit what Information Pushes should be included in the response. This is usually used in combination with `include`, and is an \"all of\" search. + * @summary Show Information Notices + * @param {string} [require] Tags to include (comma-separated). All of the tags needs to be present. + * @param {string} [include] Tags to include (comma-separated). Any of the tags needs to be present. * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof NotificationsApi + * @memberof MiscellaneousApi */ - public markNotificationAsRead(notificationId: string, options?: AxiosRequestConfig) { - return NotificationsApiFp(this.configuration).markNotificationAsRead(notificationId, options).then((request) => request(this.axios, this.basePath)); + public getInfoPush(require?: string, include?: string, options?: AxiosRequestConfig) { + return MiscellaneousApiFp(this.configuration).getInfoPush(require, include, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Fetches the JavaScript code to the frontend React website. + * @summary Download JavaScript + * @param {'public' | 'internal'} [variant] Specifies which `variant` of the site. Public is the end-user site, while `internal` is the staff-only site with special pages for moderation and management. + * @param {string} [branch] Specifies which git branch the site should load frontend source code from. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof MiscellaneousApi + */ + public getJavaScript(variant?: 'public' | 'internal', branch?: string, options?: AxiosRequestConfig) { + return MiscellaneousApiFp(this.configuration).getJavaScript(variant, branch, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Returns a single permission. This endpoint is pretty useless, as it returns the exact same information as `/auth/permissions`. + * @summary Get Permission + * @param {string} permissionId Must be a valid permission ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof MiscellaneousApi + */ + public getPermission(permissionId: string, options?: AxiosRequestConfig) { + return MiscellaneousApiFp(this.configuration).getPermission(permissionId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Returns the current time of the API server. **NOTE:** The response type is not a JSON object, but a simple JSON string. + * @summary Current System Time + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof MiscellaneousApi + */ + public getSystemTime(options?: AxiosRequestConfig) { + return MiscellaneousApiFp(this.configuration).getSystemTime(options).then((request) => request(this.axios, this.basePath)); } } /** - * PermissionsApi - axios parameter creator + * NotificationsApi - axios parameter creator * @export */ -export const PermissionsApiAxiosParamCreator = function (configuration?: Configuration) { +export const NotificationsApiAxiosParamCreator = function (configuration?: Configuration) { return { /** - * Returns a list of all permissions currently granted by the user. Permissions are assigned e.g. by subscribing to VRC+. - * @summary Get Assigned Permissions + * Accept a friend request by notification `frq_` ID. Friend requests can be found using the NotificationsAPI `getNotifications` by filtering of type `friendRequest`. + * @summary Accept Friend Request + * @param {string} notificationId Must be a valid notification ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getAssignedPermissions: async (options: AxiosRequestConfig = {}): Promise => { - const localVarPath = `/auth/permissions`; + acceptFriendRequest: async (notificationId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'notificationId' is not null or undefined + assertParamExists('acceptFriendRequest', 'notificationId', notificationId) + const localVarPath = `/auth/user/notifications/{notificationId}/accept` + .replace(`{${"notificationId"}}`, encodeURIComponent(String(notificationId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -21583,7 +21837,7 @@ export const PermissionsApiAxiosParamCreator = function (configuration?: Configu baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; @@ -21601,17 +21855,13 @@ export const PermissionsApiAxiosParamCreator = function (configuration?: Configu }; }, /** - * Returns a single permission. This endpoint is pretty useless, as it returns the exact same information as `/auth/permissions`. - * @summary Get Permission - * @param {string} permissionId Must be a valid permission ID. + * Clear **all** notifications. + * @summary Clear All Notifications * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getPermission: async (permissionId: string, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'permissionId' is not null or undefined - assertParamExists('getPermission', 'permissionId', permissionId) - const localVarPath = `/permissions/{permissionId}` - .replace(`{${"permissionId"}}`, encodeURIComponent(String(permissionId))); + clearNotifications: async (options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/auth/user/notifications/clear`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -21619,7 +21869,7 @@ export const PermissionsApiAxiosParamCreator = function (configuration?: Configu baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; @@ -21636,115 +21886,18 @@ export const PermissionsApiAxiosParamCreator = function (configuration?: Configu options: localVarRequestOptions, }; }, - } -}; - -/** - * PermissionsApi - functional programming interface - * @export - */ -export const PermissionsApiFp = function(configuration?: Configuration) { - const localVarAxiosParamCreator = PermissionsApiAxiosParamCreator(configuration) - return { - /** - * Returns a list of all permissions currently granted by the user. Permissions are assigned e.g. by subscribing to VRC+. - * @summary Get Assigned Permissions - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - async getAssignedPermissions(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getAssignedPermissions(options); - return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); - }, - /** - * Returns a single permission. This endpoint is pretty useless, as it returns the exact same information as `/auth/permissions`. - * @summary Get Permission - * @param {string} permissionId Must be a valid permission ID. - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - async getPermission(permissionId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getPermission(permissionId, options); - return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); - }, - } -}; - -/** - * PermissionsApi - factory interface - * @export - */ -export const PermissionsApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { - const localVarFp = PermissionsApiFp(configuration) - return { - /** - * Returns a list of all permissions currently granted by the user. Permissions are assigned e.g. by subscribing to VRC+. - * @summary Get Assigned Permissions - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - getAssignedPermissions(options?: any): AxiosPromise> { - return localVarFp.getAssignedPermissions(options).then((request) => request(axios, basePath)); - }, - /** - * Returns a single permission. This endpoint is pretty useless, as it returns the exact same information as `/auth/permissions`. - * @summary Get Permission - * @param {string} permissionId Must be a valid permission ID. - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - getPermission(permissionId: string, options?: any): AxiosPromise { - return localVarFp.getPermission(permissionId, options).then((request) => request(axios, basePath)); - }, - }; -}; - -/** - * PermissionsApi - object-oriented interface - * @export - * @class PermissionsApi - * @extends {BaseAPI} - */ -export class PermissionsApi extends BaseAPI { - /** - * Returns a list of all permissions currently granted by the user. Permissions are assigned e.g. by subscribing to VRC+. - * @summary Get Assigned Permissions - * @param {*} [options] Override http request option. - * @throws {RequiredError} - * @memberof PermissionsApi - */ - public getAssignedPermissions(options?: AxiosRequestConfig) { - return PermissionsApiFp(this.configuration).getAssignedPermissions(options).then((request) => request(this.axios, this.basePath)); - } - - /** - * Returns a single permission. This endpoint is pretty useless, as it returns the exact same information as `/auth/permissions`. - * @summary Get Permission - * @param {string} permissionId Must be a valid permission ID. - * @param {*} [options] Override http request option. - * @throws {RequiredError} - * @memberof PermissionsApi - */ - public getPermission(permissionId: string, options?: AxiosRequestConfig) { - return PermissionsApiFp(this.configuration).getPermission(permissionId, options).then((request) => request(this.axios, this.basePath)); - } -} - - -/** - * PlayermoderationApi - axios parameter creator - * @export - */ -export const PlayermoderationApiAxiosParamCreator = function (configuration?: Configuration) { - return { /** - * ⚠️ **This will delete every single player moderation you\'ve ever made.** - * @summary Clear All Player Moderations + * Delete a notification. + * @summary Delete Notification + * @param {string} notificationId Must be a valid notification ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - clearAllPlayerModerations: async (options: AxiosRequestConfig = {}): Promise => { - const localVarPath = `/auth/user/playermoderations`; + deleteNotification: async (notificationId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'notificationId' is not null or undefined + assertParamExists('deleteNotification', 'notificationId', notificationId) + const localVarPath = `/auth/user/notifications/{notificationId}/hide` + .replace(`{${"notificationId"}}`, encodeURIComponent(String(notificationId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -21752,7 +21905,7 @@ export const PlayermoderationApiAxiosParamCreator = function (configuration?: Co baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; @@ -21770,15 +21923,17 @@ export const PlayermoderationApiAxiosParamCreator = function (configuration?: Co }; }, /** - * Returns a list of all player moderations made by **you**. This endpoint does not have pagination, and will return *all* results. Use query parameters to limit your query if needed. - * @summary Search Player Moderations - * @param {string} [type] Must be one of PlayerModerationType, except unblock. Unblocking simply removes a block. - * @param {string} [targetUserId] Must be valid UserID. + * Get a notification by notification `not_` ID. + * @summary Show notification + * @param {string} notificationId Must be a valid notification ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getPlayerModerations: async (type?: string, targetUserId?: string, options: AxiosRequestConfig = {}): Promise => { - const localVarPath = `/auth/user/playermoderations`; + getNotification: async (notificationId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'notificationId' is not null or undefined + assertParamExists('getNotification', 'notificationId', notificationId) + const localVarPath = `/auth/user/notifications/{notificationId}` + .replace(`{${"notificationId"}}`, encodeURIComponent(String(notificationId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -21792,14 +21947,6 @@ export const PlayermoderationApiAxiosParamCreator = function (configuration?: Co // authentication authCookie required - if (type !== undefined) { - localVarQueryParameter['type'] = type; - } - - if (targetUserId !== undefined) { - localVarQueryParameter['targetUserId'] = targetUserId; - } - setSearchParams(localVarUrlObj, localVarQueryParameter); @@ -21812,16 +21959,19 @@ export const PlayermoderationApiAxiosParamCreator = function (configuration?: Co }; }, /** - * Moderate a user, e.g. unmute them or show their avatar. Please see the [Player Moderation docs](https://vrchatapi.github.io/docs/api/#tag--playermoderation) on what playerModerations are, and how they differ from staff moderations. - * @summary Moderate User - * @param {ModerateUserRequest} moderateUserRequest + * Retrieve all of the current user\'s notifications. + * @summary List Notifications + * @param {string} [type] Only send notifications of this type (can use `all` for all). This parameter no longer does anything, and is deprecated. + * @param {boolean} [sent] Return notifications sent by the user. Must be false or omitted. + * @param {boolean} [hidden] Whether to return hidden or non-hidden notifications. True only allowed on type `friendRequest`. + * @param {string} [after] Only return notifications sent after this Date. Ignored if type is `friendRequest`. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - moderateUser: async (moderateUserRequest: ModerateUserRequest, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'moderateUserRequest' is not null or undefined - assertParamExists('moderateUser', 'moderateUserRequest', moderateUserRequest) - const localVarPath = `/auth/user/playermoderations`; + getNotifications: async (type?: string, sent?: boolean, hidden?: boolean, after?: string, n?: number, offset?: number, options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/auth/user/notifications`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -21829,20 +21979,41 @@ export const PlayermoderationApiAxiosParamCreator = function (configuration?: Co baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; // authentication authCookie required + if (type !== undefined) { + localVarQueryParameter['type'] = type; + } - - localVarHeaderParameter['Content-Type'] = 'application/json'; + if (sent !== undefined) { + localVarQueryParameter['sent'] = sent; + } - setSearchParams(localVarUrlObj, localVarQueryParameter); - let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; - localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - localVarRequestOptions.data = serializeDataIfNeeded(moderateUserRequest, localVarRequestOptions, configuration) + if (hidden !== undefined) { + localVarQueryParameter['hidden'] = hidden; + } + + if (after !== undefined) { + localVarQueryParameter['after'] = after; + } + + if (n !== undefined) { + localVarQueryParameter['n'] = n; + } + + if (offset !== undefined) { + localVarQueryParameter['offset'] = offset; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { url: toPathString(localVarUrlObj), @@ -21850,16 +22021,17 @@ export const PlayermoderationApiAxiosParamCreator = function (configuration?: Co }; }, /** - * Removes a player moderation previously added through `moderateUser`. E.g if you previously have shown their avatar, but now want to reset it to default. - * @summary Unmoderate User - * @param {ModerateUserRequest} moderateUserRequest + * Mark a notification as seen. + * @summary Mark Notification As Read + * @param {string} notificationId Must be a valid notification ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - unmoderateUser: async (moderateUserRequest: ModerateUserRequest, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'moderateUserRequest' is not null or undefined - assertParamExists('unmoderateUser', 'moderateUserRequest', moderateUserRequest) - const localVarPath = `/auth/user/unplayermoderate`; + markNotificationAsRead: async (notificationId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'notificationId' is not null or undefined + assertParamExists('markNotificationAsRead', 'notificationId', notificationId) + const localVarPath = `/auth/user/notifications/{notificationId}/see` + .replace(`{${"notificationId"}}`, encodeURIComponent(String(notificationId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -21875,12 +22047,9 @@ export const PlayermoderationApiAxiosParamCreator = function (configuration?: Co - localVarHeaderParameter['Content-Type'] = 'application/json'; - setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - localVarRequestOptions.data = serializeDataIfNeeded(moderateUserRequest, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), @@ -21891,224 +22060,258 @@ export const PlayermoderationApiAxiosParamCreator = function (configuration?: Co }; /** - * PlayermoderationApi - functional programming interface + * NotificationsApi - functional programming interface * @export */ -export const PlayermoderationApiFp = function(configuration?: Configuration) { - const localVarAxiosParamCreator = PlayermoderationApiAxiosParamCreator(configuration) +export const NotificationsApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = NotificationsApiAxiosParamCreator(configuration) return { /** - * ⚠️ **This will delete every single player moderation you\'ve ever made.** - * @summary Clear All Player Moderations + * Accept a friend request by notification `frq_` ID. Friend requests can be found using the NotificationsAPI `getNotifications` by filtering of type `friendRequest`. + * @summary Accept Friend Request + * @param {string} notificationId Must be a valid notification ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async clearAllPlayerModerations(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.clearAllPlayerModerations(options); + async acceptFriendRequest(notificationId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.acceptFriendRequest(notificationId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Returns a list of all player moderations made by **you**. This endpoint does not have pagination, and will return *all* results. Use query parameters to limit your query if needed. - * @summary Search Player Moderations - * @param {string} [type] Must be one of PlayerModerationType, except unblock. Unblocking simply removes a block. - * @param {string} [targetUserId] Must be valid UserID. + * Clear **all** notifications. + * @summary Clear All Notifications * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getPlayerModerations(type?: string, targetUserId?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getPlayerModerations(type, targetUserId, options); + async clearNotifications(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.clearNotifications(options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Moderate a user, e.g. unmute them or show their avatar. Please see the [Player Moderation docs](https://vrchatapi.github.io/docs/api/#tag--playermoderation) on what playerModerations are, and how they differ from staff moderations. - * @summary Moderate User - * @param {ModerateUserRequest} moderateUserRequest + * Delete a notification. + * @summary Delete Notification + * @param {string} notificationId Must be a valid notification ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async moderateUser(moderateUserRequest: ModerateUserRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.moderateUser(moderateUserRequest, options); + async deleteNotification(notificationId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.deleteNotification(notificationId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Removes a player moderation previously added through `moderateUser`. E.g if you previously have shown their avatar, but now want to reset it to default. - * @summary Unmoderate User - * @param {ModerateUserRequest} moderateUserRequest + * Get a notification by notification `not_` ID. + * @summary Show notification + * @param {string} notificationId Must be a valid notification ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async unmoderateUser(moderateUserRequest: ModerateUserRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.unmoderateUser(moderateUserRequest, options); + async getNotification(notificationId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getNotification(notificationId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Retrieve all of the current user\'s notifications. + * @summary List Notifications + * @param {string} [type] Only send notifications of this type (can use `all` for all). This parameter no longer does anything, and is deprecated. + * @param {boolean} [sent] Return notifications sent by the user. Must be false or omitted. + * @param {boolean} [hidden] Whether to return hidden or non-hidden notifications. True only allowed on type `friendRequest`. + * @param {string} [after] Only return notifications sent after this Date. Ignored if type is `friendRequest`. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getNotifications(type?: string, sent?: boolean, hidden?: boolean, after?: string, n?: number, offset?: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getNotifications(type, sent, hidden, after, n, offset, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Mark a notification as seen. + * @summary Mark Notification As Read + * @param {string} notificationId Must be a valid notification ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async markNotificationAsRead(notificationId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.markNotificationAsRead(notificationId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, } }; /** - * PlayermoderationApi - factory interface + * NotificationsApi - factory interface * @export */ -export const PlayermoderationApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { - const localVarFp = PlayermoderationApiFp(configuration) +export const NotificationsApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = NotificationsApiFp(configuration) return { /** - * ⚠️ **This will delete every single player moderation you\'ve ever made.** - * @summary Clear All Player Moderations + * Accept a friend request by notification `frq_` ID. Friend requests can be found using the NotificationsAPI `getNotifications` by filtering of type `friendRequest`. + * @summary Accept Friend Request + * @param {string} notificationId Must be a valid notification ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - clearAllPlayerModerations(options?: any): AxiosPromise { - return localVarFp.clearAllPlayerModerations(options).then((request) => request(axios, basePath)); + acceptFriendRequest(notificationId: string, options?: any): AxiosPromise { + return localVarFp.acceptFriendRequest(notificationId, options).then((request) => request(axios, basePath)); }, /** - * Returns a list of all player moderations made by **you**. This endpoint does not have pagination, and will return *all* results. Use query parameters to limit your query if needed. - * @summary Search Player Moderations - * @param {string} [type] Must be one of PlayerModerationType, except unblock. Unblocking simply removes a block. - * @param {string} [targetUserId] Must be valid UserID. + * Clear **all** notifications. + * @summary Clear All Notifications * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getPlayerModerations(type?: string, targetUserId?: string, options?: any): AxiosPromise> { - return localVarFp.getPlayerModerations(type, targetUserId, options).then((request) => request(axios, basePath)); + clearNotifications(options?: any): AxiosPromise { + return localVarFp.clearNotifications(options).then((request) => request(axios, basePath)); }, /** - * Moderate a user, e.g. unmute them or show their avatar. Please see the [Player Moderation docs](https://vrchatapi.github.io/docs/api/#tag--playermoderation) on what playerModerations are, and how they differ from staff moderations. - * @summary Moderate User - * @param {ModerateUserRequest} moderateUserRequest + * Delete a notification. + * @summary Delete Notification + * @param {string} notificationId Must be a valid notification ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - moderateUser(moderateUserRequest: ModerateUserRequest, options?: any): AxiosPromise { - return localVarFp.moderateUser(moderateUserRequest, options).then((request) => request(axios, basePath)); + deleteNotification(notificationId: string, options?: any): AxiosPromise { + return localVarFp.deleteNotification(notificationId, options).then((request) => request(axios, basePath)); }, /** - * Removes a player moderation previously added through `moderateUser`. E.g if you previously have shown their avatar, but now want to reset it to default. - * @summary Unmoderate User - * @param {ModerateUserRequest} moderateUserRequest + * Get a notification by notification `not_` ID. + * @summary Show notification + * @param {string} notificationId Must be a valid notification ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - unmoderateUser(moderateUserRequest: ModerateUserRequest, options?: any): AxiosPromise { - return localVarFp.unmoderateUser(moderateUserRequest, options).then((request) => request(axios, basePath)); + getNotification(notificationId: string, options?: any): AxiosPromise { + return localVarFp.getNotification(notificationId, options).then((request) => request(axios, basePath)); + }, + /** + * Retrieve all of the current user\'s notifications. + * @summary List Notifications + * @param {string} [type] Only send notifications of this type (can use `all` for all). This parameter no longer does anything, and is deprecated. + * @param {boolean} [sent] Return notifications sent by the user. Must be false or omitted. + * @param {boolean} [hidden] Whether to return hidden or non-hidden notifications. True only allowed on type `friendRequest`. + * @param {string} [after] Only return notifications sent after this Date. Ignored if type is `friendRequest`. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getNotifications(type?: string, sent?: boolean, hidden?: boolean, after?: string, n?: number, offset?: number, options?: any): AxiosPromise> { + return localVarFp.getNotifications(type, sent, hidden, after, n, offset, options).then((request) => request(axios, basePath)); + }, + /** + * Mark a notification as seen. + * @summary Mark Notification As Read + * @param {string} notificationId Must be a valid notification ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + markNotificationAsRead(notificationId: string, options?: any): AxiosPromise { + return localVarFp.markNotificationAsRead(notificationId, options).then((request) => request(axios, basePath)); }, }; }; /** - * PlayermoderationApi - object-oriented interface + * NotificationsApi - object-oriented interface * @export - * @class PlayermoderationApi + * @class NotificationsApi * @extends {BaseAPI} */ -export class PlayermoderationApi extends BaseAPI { +export class NotificationsApi extends BaseAPI { /** - * ⚠️ **This will delete every single player moderation you\'ve ever made.** - * @summary Clear All Player Moderations + * Accept a friend request by notification `frq_` ID. Friend requests can be found using the NotificationsAPI `getNotifications` by filtering of type `friendRequest`. + * @summary Accept Friend Request + * @param {string} notificationId Must be a valid notification ID. * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof PlayermoderationApi + * @memberof NotificationsApi */ - public clearAllPlayerModerations(options?: AxiosRequestConfig) { - return PlayermoderationApiFp(this.configuration).clearAllPlayerModerations(options).then((request) => request(this.axios, this.basePath)); + public acceptFriendRequest(notificationId: string, options?: AxiosRequestConfig) { + return NotificationsApiFp(this.configuration).acceptFriendRequest(notificationId, options).then((request) => request(this.axios, this.basePath)); } /** - * Returns a list of all player moderations made by **you**. This endpoint does not have pagination, and will return *all* results. Use query parameters to limit your query if needed. - * @summary Search Player Moderations - * @param {string} [type] Must be one of PlayerModerationType, except unblock. Unblocking simply removes a block. - * @param {string} [targetUserId] Must be valid UserID. + * Clear **all** notifications. + * @summary Clear All Notifications * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof PlayermoderationApi + * @memberof NotificationsApi */ - public getPlayerModerations(type?: string, targetUserId?: string, options?: AxiosRequestConfig) { - return PlayermoderationApiFp(this.configuration).getPlayerModerations(type, targetUserId, options).then((request) => request(this.axios, this.basePath)); + public clearNotifications(options?: AxiosRequestConfig) { + return NotificationsApiFp(this.configuration).clearNotifications(options).then((request) => request(this.axios, this.basePath)); } /** - * Moderate a user, e.g. unmute them or show their avatar. Please see the [Player Moderation docs](https://vrchatapi.github.io/docs/api/#tag--playermoderation) on what playerModerations are, and how they differ from staff moderations. - * @summary Moderate User - * @param {ModerateUserRequest} moderateUserRequest + * Delete a notification. + * @summary Delete Notification + * @param {string} notificationId Must be a valid notification ID. * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof PlayermoderationApi + * @memberof NotificationsApi */ - public moderateUser(moderateUserRequest: ModerateUserRequest, options?: AxiosRequestConfig) { - return PlayermoderationApiFp(this.configuration).moderateUser(moderateUserRequest, options).then((request) => request(this.axios, this.basePath)); + public deleteNotification(notificationId: string, options?: AxiosRequestConfig) { + return NotificationsApiFp(this.configuration).deleteNotification(notificationId, options).then((request) => request(this.axios, this.basePath)); } /** - * Removes a player moderation previously added through `moderateUser`. E.g if you previously have shown their avatar, but now want to reset it to default. - * @summary Unmoderate User - * @param {ModerateUserRequest} moderateUserRequest + * Get a notification by notification `not_` ID. + * @summary Show notification + * @param {string} notificationId Must be a valid notification ID. * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof PlayermoderationApi + * @memberof NotificationsApi */ - public unmoderateUser(moderateUserRequest: ModerateUserRequest, options?: AxiosRequestConfig) { - return PlayermoderationApiFp(this.configuration).unmoderateUser(moderateUserRequest, options).then((request) => request(this.axios, this.basePath)); + public getNotification(notificationId: string, options?: AxiosRequestConfig) { + return NotificationsApiFp(this.configuration).getNotification(notificationId, options).then((request) => request(this.axios, this.basePath)); } -} + /** + * Retrieve all of the current user\'s notifications. + * @summary List Notifications + * @param {string} [type] Only send notifications of this type (can use `all` for all). This parameter no longer does anything, and is deprecated. + * @param {boolean} [sent] Return notifications sent by the user. Must be false or omitted. + * @param {boolean} [hidden] Whether to return hidden or non-hidden notifications. True only allowed on type `friendRequest`. + * @param {string} [after] Only return notifications sent after this Date. Ignored if type is `friendRequest`. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof NotificationsApi + */ + public getNotifications(type?: string, sent?: boolean, hidden?: boolean, after?: string, n?: number, offset?: number, options?: AxiosRequestConfig) { + return NotificationsApiFp(this.configuration).getNotifications(type, sent, hidden, after, n, offset, options).then((request) => request(this.axios, this.basePath)); + } -/** - * PrintsApi - axios parameter creator - * @export - */ -export const PrintsApiAxiosParamCreator = function (configuration?: Configuration) { - return { - /** - * Returns a print. - * @summary Delete Print - * @param {string} printId Print ID. - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - deletePrint: async (printId: string, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'printId' is not null or undefined - assertParamExists('deletePrint', 'printId', printId) - const localVarPath = `/prints/{printId}` - .replace(`{${"printId"}}`, encodeURIComponent(String(printId))); - // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); - let baseOptions; - if (configuration) { - baseOptions = configuration.baseOptions; - } - - const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; - const localVarHeaderParameter = {} as any; - const localVarQueryParameter = {} as any; - - // authentication authCookie required - + /** + * Mark a notification as seen. + * @summary Mark Notification As Read + * @param {string} notificationId Must be a valid notification ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof NotificationsApi + */ + public markNotificationAsRead(notificationId: string, options?: AxiosRequestConfig) { + return NotificationsApiFp(this.configuration).markNotificationAsRead(notificationId, options).then((request) => request(this.axios, this.basePath)); + } +} - - setSearchParams(localVarUrlObj, localVarQueryParameter); - let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; - localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - return { - url: toPathString(localVarUrlObj), - options: localVarRequestOptions, - }; - }, +/** + * PlayermoderationApi - axios parameter creator + * @export + */ +export const PlayermoderationApiAxiosParamCreator = function (configuration?: Configuration) { + return { /** - * Edits a print. - * @summary Edit Print - * @param {string} printId Print ID. - * @param {File} image The binary blob of the png file. - * @param {string} [note] The caption for the image. + * ⚠️ **This will delete every single player moderation you\'ve ever made.** + * @summary Clear All Player Moderations * @param {*} [options] Override http request option. * @throws {RequiredError} */ - editPrint: async (printId: string, image: File, note?: string, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'printId' is not null or undefined - assertParamExists('editPrint', 'printId', printId) - // verify required parameter 'image' is not null or undefined - assertParamExists('editPrint', 'image', image) - const localVarPath = `/prints/{printId}` - .replace(`{${"printId"}}`, encodeURIComponent(String(printId))); + clearAllPlayerModerations: async (options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/auth/user/playermoderations`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -22116,29 +22319,17 @@ export const PrintsApiAxiosParamCreator = function (configuration?: Configuratio baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - const localVarFormParams = new ((configuration && configuration.formDataCtor) || FormData)(); // authentication authCookie required - if (image !== undefined) { - localVarFormParams.append('image', image as any); - } - - if (note !== undefined) { - localVarFormParams.append('note', note as any); - } - - - localVarHeaderParameter['Content-Type'] = 'multipart/form-data'; setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - localVarRequestOptions.data = localVarFormParams; return { url: toPathString(localVarUrlObj), @@ -22146,17 +22337,15 @@ export const PrintsApiAxiosParamCreator = function (configuration?: Configuratio }; }, /** - * Returns a print. - * @summary Get Print - * @param {string} printId Print ID. + * Returns a list of all player moderations made by **you**. This endpoint does not have pagination, and will return *all* results. Use query parameters to limit your query if needed. + * @summary Search Player Moderations + * @param {string} [type] Must be one of PlayerModerationType, except unblock. Unblocking simply removes a block. + * @param {string} [targetUserId] Must be valid UserID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getPrint: async (printId: string, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'printId' is not null or undefined - assertParamExists('getPrint', 'printId', printId) - const localVarPath = `/prints/{printId}` - .replace(`{${"printId"}}`, encodeURIComponent(String(printId))); + getPlayerModerations: async (type?: string, targetUserId?: string, options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/auth/user/playermoderations`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -22170,6 +22359,14 @@ export const PrintsApiAxiosParamCreator = function (configuration?: Configuratio // authentication authCookie required + if (type !== undefined) { + localVarQueryParameter['type'] = type; + } + + if (targetUserId !== undefined) { + localVarQueryParameter['targetUserId'] = targetUserId; + } + setSearchParams(localVarUrlObj, localVarQueryParameter); @@ -22182,17 +22379,16 @@ export const PrintsApiAxiosParamCreator = function (configuration?: Configuratio }; }, /** - * Returns a list of all prints of the user. User id has to be your own userId, as you can\'t request other user\'s prints. - * @summary Get Own Prints - * @param {string} userId Must be a valid user ID. + * Moderate a user, e.g. unmute them or show their avatar. Please see the [Player Moderation docs](https://vrchatapi.github.io/docs/api/#tag--playermoderation) on what playerModerations are, and how they differ from staff moderations. + * @summary Moderate User + * @param {ModerateUserRequest} moderateUserRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getUserPrints: async (userId: string, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'userId' is not null or undefined - assertParamExists('getUserPrints', 'userId', userId) - const localVarPath = `/prints/user/{userId}` - .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); + moderateUser: async (moderateUserRequest: ModerateUserRequest, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'moderateUserRequest' is not null or undefined + assertParamExists('moderateUser', 'moderateUserRequest', moderateUserRequest) + const localVarPath = `/auth/user/playermoderations`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -22200,7 +22396,7 @@ export const PrintsApiAxiosParamCreator = function (configuration?: Configuratio baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; @@ -22208,9 +22404,12 @@ export const PrintsApiAxiosParamCreator = function (configuration?: Configuratio + localVarHeaderParameter['Content-Type'] = 'application/json'; + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(moderateUserRequest, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), @@ -22218,22 +22417,16 @@ export const PrintsApiAxiosParamCreator = function (configuration?: Configuratio }; }, /** - * Uploads and creates a print. - * @summary Upload Print - * @param {File} image The binary blob of the png file. - * @param {string} timestamp The time the image was captured. - * @param {string} [note] The caption for the image. - * @param {string} [worldId] The id of the world in which the image was captured. - * @param {string} [worldName] The name of the world in which the image was captured. + * Removes a player moderation previously added through `moderateUser`. E.g if you previously have shown their avatar, but now want to reset it to default. + * @summary Unmoderate User + * @param {ModerateUserRequest} moderateUserRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ - uploadPrint: async (image: File, timestamp: string, note?: string, worldId?: string, worldName?: string, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'image' is not null or undefined - assertParamExists('uploadPrint', 'image', image) - // verify required parameter 'timestamp' is not null or undefined - assertParamExists('uploadPrint', 'timestamp', timestamp) - const localVarPath = `/prints`; + unmoderateUser: async (moderateUserRequest: ModerateUserRequest, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'moderateUserRequest' is not null or undefined + assertParamExists('unmoderateUser', 'moderateUserRequest', moderateUserRequest) + const localVarPath = `/auth/user/unplayermoderate`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -22241,41 +22434,20 @@ export const PrintsApiAxiosParamCreator = function (configuration?: Configuratio baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - const localVarFormParams = new ((configuration && configuration.formDataCtor) || FormData)(); // authentication authCookie required - if (image !== undefined) { - localVarFormParams.append('image', image as any); - } - - if (timestamp !== undefined) { - localVarFormParams.append('timestamp', timestamp as any); - } - - if (note !== undefined) { - localVarFormParams.append('note', note as any); - } - - if (worldId !== undefined) { - localVarFormParams.append('worldId', worldId as any); - } - - if (worldName !== undefined) { - localVarFormParams.append('worldName', worldName as any); - } - - - localVarHeaderParameter['Content-Type'] = 'multipart/form-data'; + localVarHeaderParameter['Content-Type'] = 'application/json'; + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - localVarRequestOptions.data = localVarFormParams; + localVarRequestOptions.data = serializeDataIfNeeded(moderateUserRequest, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), @@ -22286,233 +22458,184 @@ export const PrintsApiAxiosParamCreator = function (configuration?: Configuratio }; /** - * PrintsApi - functional programming interface + * PlayermoderationApi - functional programming interface * @export */ -export const PrintsApiFp = function(configuration?: Configuration) { - const localVarAxiosParamCreator = PrintsApiAxiosParamCreator(configuration) +export const PlayermoderationApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = PlayermoderationApiAxiosParamCreator(configuration) return { /** - * Returns a print. - * @summary Delete Print - * @param {string} printId Print ID. - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - async deletePrint(printId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.deletePrint(printId, options); - return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); - }, - /** - * Edits a print. - * @summary Edit Print - * @param {string} printId Print ID. - * @param {File} image The binary blob of the png file. - * @param {string} [note] The caption for the image. + * ⚠️ **This will delete every single player moderation you\'ve ever made.** + * @summary Clear All Player Moderations * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async editPrint(printId: string, image: File, note?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.editPrint(printId, image, note, options); + async clearAllPlayerModerations(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.clearAllPlayerModerations(options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Returns a print. - * @summary Get Print - * @param {string} printId Print ID. + * Returns a list of all player moderations made by **you**. This endpoint does not have pagination, and will return *all* results. Use query parameters to limit your query if needed. + * @summary Search Player Moderations + * @param {string} [type] Must be one of PlayerModerationType, except unblock. Unblocking simply removes a block. + * @param {string} [targetUserId] Must be valid UserID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getPrint(printId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getPrint(printId, options); + async getPlayerModerations(type?: string, targetUserId?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getPlayerModerations(type, targetUserId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Returns a list of all prints of the user. User id has to be your own userId, as you can\'t request other user\'s prints. - * @summary Get Own Prints - * @param {string} userId Must be a valid user ID. + * Moderate a user, e.g. unmute them or show their avatar. Please see the [Player Moderation docs](https://vrchatapi.github.io/docs/api/#tag--playermoderation) on what playerModerations are, and how they differ from staff moderations. + * @summary Moderate User + * @param {ModerateUserRequest} moderateUserRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getUserPrints(userId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getUserPrints(userId, options); + async moderateUser(moderateUserRequest: ModerateUserRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.moderateUser(moderateUserRequest, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Uploads and creates a print. - * @summary Upload Print - * @param {File} image The binary blob of the png file. - * @param {string} timestamp The time the image was captured. - * @param {string} [note] The caption for the image. - * @param {string} [worldId] The id of the world in which the image was captured. - * @param {string} [worldName] The name of the world in which the image was captured. + * Removes a player moderation previously added through `moderateUser`. E.g if you previously have shown their avatar, but now want to reset it to default. + * @summary Unmoderate User + * @param {ModerateUserRequest} moderateUserRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async uploadPrint(image: File, timestamp: string, note?: string, worldId?: string, worldName?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.uploadPrint(image, timestamp, note, worldId, worldName, options); + async unmoderateUser(moderateUserRequest: ModerateUserRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.unmoderateUser(moderateUserRequest, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, } }; /** - * PrintsApi - factory interface + * PlayermoderationApi - factory interface * @export */ -export const PrintsApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { - const localVarFp = PrintsApiFp(configuration) +export const PlayermoderationApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = PlayermoderationApiFp(configuration) return { /** - * Returns a print. - * @summary Delete Print - * @param {string} printId Print ID. - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - deletePrint(printId: string, options?: any): AxiosPromise { - return localVarFp.deletePrint(printId, options).then((request) => request(axios, basePath)); - }, - /** - * Edits a print. - * @summary Edit Print - * @param {string} printId Print ID. - * @param {File} image The binary blob of the png file. - * @param {string} [note] The caption for the image. + * ⚠️ **This will delete every single player moderation you\'ve ever made.** + * @summary Clear All Player Moderations * @param {*} [options] Override http request option. * @throws {RequiredError} */ - editPrint(printId: string, image: File, note?: string, options?: any): AxiosPromise { - return localVarFp.editPrint(printId, image, note, options).then((request) => request(axios, basePath)); + clearAllPlayerModerations(options?: any): AxiosPromise { + return localVarFp.clearAllPlayerModerations(options).then((request) => request(axios, basePath)); }, /** - * Returns a print. - * @summary Get Print - * @param {string} printId Print ID. + * Returns a list of all player moderations made by **you**. This endpoint does not have pagination, and will return *all* results. Use query parameters to limit your query if needed. + * @summary Search Player Moderations + * @param {string} [type] Must be one of PlayerModerationType, except unblock. Unblocking simply removes a block. + * @param {string} [targetUserId] Must be valid UserID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getPrint(printId: string, options?: any): AxiosPromise { - return localVarFp.getPrint(printId, options).then((request) => request(axios, basePath)); + getPlayerModerations(type?: string, targetUserId?: string, options?: any): AxiosPromise> { + return localVarFp.getPlayerModerations(type, targetUserId, options).then((request) => request(axios, basePath)); }, /** - * Returns a list of all prints of the user. User id has to be your own userId, as you can\'t request other user\'s prints. - * @summary Get Own Prints - * @param {string} userId Must be a valid user ID. + * Moderate a user, e.g. unmute them or show their avatar. Please see the [Player Moderation docs](https://vrchatapi.github.io/docs/api/#tag--playermoderation) on what playerModerations are, and how they differ from staff moderations. + * @summary Moderate User + * @param {ModerateUserRequest} moderateUserRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getUserPrints(userId: string, options?: any): AxiosPromise> { - return localVarFp.getUserPrints(userId, options).then((request) => request(axios, basePath)); + moderateUser(moderateUserRequest: ModerateUserRequest, options?: any): AxiosPromise { + return localVarFp.moderateUser(moderateUserRequest, options).then((request) => request(axios, basePath)); }, /** - * Uploads and creates a print. - * @summary Upload Print - * @param {File} image The binary blob of the png file. - * @param {string} timestamp The time the image was captured. - * @param {string} [note] The caption for the image. - * @param {string} [worldId] The id of the world in which the image was captured. - * @param {string} [worldName] The name of the world in which the image was captured. + * Removes a player moderation previously added through `moderateUser`. E.g if you previously have shown their avatar, but now want to reset it to default. + * @summary Unmoderate User + * @param {ModerateUserRequest} moderateUserRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ - uploadPrint(image: File, timestamp: string, note?: string, worldId?: string, worldName?: string, options?: any): AxiosPromise { - return localVarFp.uploadPrint(image, timestamp, note, worldId, worldName, options).then((request) => request(axios, basePath)); + unmoderateUser(moderateUserRequest: ModerateUserRequest, options?: any): AxiosPromise { + return localVarFp.unmoderateUser(moderateUserRequest, options).then((request) => request(axios, basePath)); }, }; }; /** - * PrintsApi - object-oriented interface + * PlayermoderationApi - object-oriented interface * @export - * @class PrintsApi + * @class PlayermoderationApi * @extends {BaseAPI} */ -export class PrintsApi extends BaseAPI { - /** - * Returns a print. - * @summary Delete Print - * @param {string} printId Print ID. - * @param {*} [options] Override http request option. - * @throws {RequiredError} - * @memberof PrintsApi - */ - public deletePrint(printId: string, options?: AxiosRequestConfig) { - return PrintsApiFp(this.configuration).deletePrint(printId, options).then((request) => request(this.axios, this.basePath)); - } - +export class PlayermoderationApi extends BaseAPI { /** - * Edits a print. - * @summary Edit Print - * @param {string} printId Print ID. - * @param {File} image The binary blob of the png file. - * @param {string} [note] The caption for the image. + * ⚠️ **This will delete every single player moderation you\'ve ever made.** + * @summary Clear All Player Moderations * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof PrintsApi + * @memberof PlayermoderationApi */ - public editPrint(printId: string, image: File, note?: string, options?: AxiosRequestConfig) { - return PrintsApiFp(this.configuration).editPrint(printId, image, note, options).then((request) => request(this.axios, this.basePath)); + public clearAllPlayerModerations(options?: AxiosRequestConfig) { + return PlayermoderationApiFp(this.configuration).clearAllPlayerModerations(options).then((request) => request(this.axios, this.basePath)); } /** - * Returns a print. - * @summary Get Print - * @param {string} printId Print ID. + * Returns a list of all player moderations made by **you**. This endpoint does not have pagination, and will return *all* results. Use query parameters to limit your query if needed. + * @summary Search Player Moderations + * @param {string} [type] Must be one of PlayerModerationType, except unblock. Unblocking simply removes a block. + * @param {string} [targetUserId] Must be valid UserID. * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof PrintsApi + * @memberof PlayermoderationApi */ - public getPrint(printId: string, options?: AxiosRequestConfig) { - return PrintsApiFp(this.configuration).getPrint(printId, options).then((request) => request(this.axios, this.basePath)); + public getPlayerModerations(type?: string, targetUserId?: string, options?: AxiosRequestConfig) { + return PlayermoderationApiFp(this.configuration).getPlayerModerations(type, targetUserId, options).then((request) => request(this.axios, this.basePath)); } /** - * Returns a list of all prints of the user. User id has to be your own userId, as you can\'t request other user\'s prints. - * @summary Get Own Prints - * @param {string} userId Must be a valid user ID. + * Moderate a user, e.g. unmute them or show their avatar. Please see the [Player Moderation docs](https://vrchatapi.github.io/docs/api/#tag--playermoderation) on what playerModerations are, and how they differ from staff moderations. + * @summary Moderate User + * @param {ModerateUserRequest} moderateUserRequest * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof PrintsApi + * @memberof PlayermoderationApi */ - public getUserPrints(userId: string, options?: AxiosRequestConfig) { - return PrintsApiFp(this.configuration).getUserPrints(userId, options).then((request) => request(this.axios, this.basePath)); + public moderateUser(moderateUserRequest: ModerateUserRequest, options?: AxiosRequestConfig) { + return PlayermoderationApiFp(this.configuration).moderateUser(moderateUserRequest, options).then((request) => request(this.axios, this.basePath)); } /** - * Uploads and creates a print. - * @summary Upload Print - * @param {File} image The binary blob of the png file. - * @param {string} timestamp The time the image was captured. - * @param {string} [note] The caption for the image. - * @param {string} [worldId] The id of the world in which the image was captured. - * @param {string} [worldName] The name of the world in which the image was captured. + * Removes a player moderation previously added through `moderateUser`. E.g if you previously have shown their avatar, but now want to reset it to default. + * @summary Unmoderate User + * @param {ModerateUserRequest} moderateUserRequest * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof PrintsApi + * @memberof PlayermoderationApi */ - public uploadPrint(image: File, timestamp: string, note?: string, worldId?: string, worldName?: string, options?: AxiosRequestConfig) { - return PrintsApiFp(this.configuration).uploadPrint(image, timestamp, note, worldId, worldName, options).then((request) => request(this.axios, this.basePath)); + public unmoderateUser(moderateUserRequest: ModerateUserRequest, options?: AxiosRequestConfig) { + return PlayermoderationApiFp(this.configuration).unmoderateUser(moderateUserRequest, options).then((request) => request(this.axios, this.basePath)); } } /** - * SystemApi - axios parameter creator + * PrintsApi - axios parameter creator * @export */ -export const SystemApiAxiosParamCreator = function (configuration?: Configuration) { +export const PrintsApiAxiosParamCreator = function (configuration?: Configuration) { return { /** - * Fetches the CSS code to the frontend React website. - * @summary Download CSS - * @param {'public' | 'internal'} [variant] Specifies which `variant` of the site. Public is the end-user site, while `internal` is the staff-only site with special pages for moderation and management. - * @param {string} [branch] Specifies which git branch the site should load frontend source code from. + * Returns a print. + * @summary Delete Print + * @param {string} printId Print ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getCSS: async (variant?: 'public' | 'internal', branch?: string, options: AxiosRequestConfig = {}): Promise => { - const localVarPath = `/css/app.css`; + deletePrint: async (printId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'printId' is not null or undefined + assertParamExists('deletePrint', 'printId', printId) + const localVarPath = `/prints/{printId}` + .replace(`{${"printId"}}`, encodeURIComponent(String(printId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -22520,17 +22643,11 @@ export const SystemApiAxiosParamCreator = function (configuration?: Configuratio baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - if (variant !== undefined) { - localVarQueryParameter['variant'] = variant; - } - - if (branch !== undefined) { - localVarQueryParameter['branch'] = branch; - } + // authentication authCookie required @@ -22544,13 +22661,21 @@ export const SystemApiAxiosParamCreator = function (configuration?: Configuratio }; }, /** - * API config contains configuration that the clients needs to work properly. Currently the most important value here is `clientApiKey` which is used for all other API endpoints. - * @summary Fetch API Config + * Edits a print. + * @summary Edit Print + * @param {string} printId Print ID. + * @param {File} image The binary blob of the png file. + * @param {string} [note] The caption for the image. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getConfig: async (options: AxiosRequestConfig = {}): Promise => { - const localVarPath = `/config`; + editPrint: async (printId: string, image: File, note?: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'printId' is not null or undefined + assertParamExists('editPrint', 'printId', printId) + // verify required parameter 'image' is not null or undefined + assertParamExists('editPrint', 'image', image) + const localVarPath = `/prints/{printId}` + .replace(`{${"printId"}}`, encodeURIComponent(String(printId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -22558,45 +22683,29 @@ export const SystemApiAxiosParamCreator = function (configuration?: Configuratio baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; + const localVarFormParams = new ((configuration && configuration.formDataCtor) || FormData)(); + // authentication authCookie required - - setSearchParams(localVarUrlObj, localVarQueryParameter); - let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; - localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - return { - url: toPathString(localVarUrlObj), - options: localVarRequestOptions, - }; - }, - /** - * Returns the current number of online users. **NOTE:** The response type is not a JSON object, but a simple JSON integer. - * @summary Current Online Users - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - getCurrentOnlineUsers: async (options: AxiosRequestConfig = {}): Promise => { - const localVarPath = `/visits`; - // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); - let baseOptions; - if (configuration) { - baseOptions = configuration.baseOptions; + if (image !== undefined) { + localVarFormParams.append('image', image as any); } - - const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; - const localVarHeaderParameter = {} as any; - const localVarQueryParameter = {} as any; - - + + if (note !== undefined) { + localVarFormParams.append('note', note as any); + } + + + localVarHeaderParameter['Content-Type'] = 'multipart/form-data'; setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = localVarFormParams; return { url: toPathString(localVarUrlObj), @@ -22604,14 +22713,17 @@ export const SystemApiAxiosParamCreator = function (configuration?: Configuratio }; }, /** - * ~~Gets the overall health status, the server name, and the current build version tag of the API.~~ **DEPRECATED:** VRChat has suddenly restricted this endpoint for unknown reasons, and now always return 401 Unauthorized. - * @summary Check API Health + * Returns a print. + * @summary Get Print + * @param {string} printId Print ID. * @param {*} [options] Override http request option. - * @deprecated * @throws {RequiredError} */ - getHealth: async (options: AxiosRequestConfig = {}): Promise => { - const localVarPath = `/health`; + getPrint: async (printId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'printId' is not null or undefined + assertParamExists('getPrint', 'printId', printId) + const localVarPath = `/prints/{printId}` + .replace(`{${"printId"}}`, encodeURIComponent(String(printId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -22623,6 +22735,8 @@ export const SystemApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; + // authentication authCookie required + setSearchParams(localVarUrlObj, localVarQueryParameter); @@ -22635,15 +22749,17 @@ export const SystemApiAxiosParamCreator = function (configuration?: Configuratio }; }, /** - * IPS (Info Push System) is a system for VRChat to push out dynamic information to the client. This is primarily used by the Quick-Menu info banners, but can also be used to e.g. alert you to update your game to the latest version. `include` is used to query what Information Pushes should be included in the response. If include is missing or empty, then no notices will normally be returned. This is an \"any of\" search. `require` is used to limit what Information Pushes should be included in the response. This is usually used in combination with `include`, and is an \"all of\" search. - * @summary Show Information Notices - * @param {string} [require] Tags to include (comma-separated). All of the tags needs to be present. - * @param {string} [include] Tags to include (comma-separated). Any of the tags needs to be present. + * Returns a list of all prints of the user. User id has to be your own userId, as you can\'t request other user\'s prints. + * @summary Get Own Prints + * @param {string} userId Must be a valid user ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getInfoPush: async (require?: string, include?: string, options: AxiosRequestConfig = {}): Promise => { - const localVarPath = `/infoPush`; + getUserPrints: async (userId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'userId' is not null or undefined + assertParamExists('getUserPrints', 'userId', userId) + const localVarPath = `/prints/user/{userId}` + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -22655,13 +22771,7 @@ export const SystemApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - if (require !== undefined) { - localVarQueryParameter['require'] = require; - } - - if (include !== undefined) { - localVarQueryParameter['include'] = include; - } + // authentication authCookie required @@ -22675,15 +22785,22 @@ export const SystemApiAxiosParamCreator = function (configuration?: Configuratio }; }, /** - * Fetches the JavaScript code to the frontend React website. - * @summary Download JavaScript - * @param {'public' | 'internal'} [variant] Specifies which `variant` of the site. Public is the end-user site, while `internal` is the staff-only site with special pages for moderation and management. - * @param {string} [branch] Specifies which git branch the site should load frontend source code from. + * Uploads and creates a print. + * @summary Upload Print + * @param {File} image The binary blob of the png file. + * @param {string} timestamp The time the image was captured. + * @param {string} [note] The caption for the image. + * @param {string} [worldId] The id of the world in which the image was captured. + * @param {string} [worldName] The name of the world in which the image was captured. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getJavaScript: async (variant?: 'public' | 'internal', branch?: string, options: AxiosRequestConfig = {}): Promise => { - const localVarPath = `/js/app.js`; + uploadPrint: async (image: File, timestamp: string, note?: string, worldId?: string, worldName?: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'image' is not null or undefined + assertParamExists('uploadPrint', 'image', image) + // verify required parameter 'timestamp' is not null or undefined + assertParamExists('uploadPrint', 'timestamp', timestamp) + const localVarPath = `/prints`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -22691,53 +22808,41 @@ export const SystemApiAxiosParamCreator = function (configuration?: Configuratio baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; + const localVarFormParams = new ((configuration && configuration.formDataCtor) || FormData)(); - if (variant !== undefined) { - localVarQueryParameter['variant'] = variant; - } - - if (branch !== undefined) { - localVarQueryParameter['branch'] = branch; - } + // authentication authCookie required + if (image !== undefined) { + localVarFormParams.append('image', image as any); + } - setSearchParams(localVarUrlObj, localVarQueryParameter); - let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; - localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - - return { - url: toPathString(localVarUrlObj), - options: localVarRequestOptions, - }; - }, - /** - * Returns the current time of the API server. **NOTE:** The response type is not a JSON object, but a simple JSON string. - * @summary Current System Time - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - getSystemTime: async (options: AxiosRequestConfig = {}): Promise => { - const localVarPath = `/time`; - // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); - let baseOptions; - if (configuration) { - baseOptions = configuration.baseOptions; + if (timestamp !== undefined) { + localVarFormParams.append('timestamp', timestamp as any); + } + + if (note !== undefined) { + localVarFormParams.append('note', note as any); + } + + if (worldId !== undefined) { + localVarFormParams.append('worldId', worldId as any); } - - const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; - const localVarHeaderParameter = {} as any; - const localVarQueryParameter = {} as any; - - + + if (worldName !== undefined) { + localVarFormParams.append('worldName', worldName as any); + } + + + localVarHeaderParameter['Content-Type'] = 'multipart/form-data'; setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = localVarFormParams; return { url: toPathString(localVarUrlObj), @@ -22748,261 +22853,213 @@ export const SystemApiAxiosParamCreator = function (configuration?: Configuratio }; /** - * SystemApi - functional programming interface + * PrintsApi - functional programming interface * @export */ -export const SystemApiFp = function(configuration?: Configuration) { - const localVarAxiosParamCreator = SystemApiAxiosParamCreator(configuration) +export const PrintsApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = PrintsApiAxiosParamCreator(configuration) return { /** - * Fetches the CSS code to the frontend React website. - * @summary Download CSS - * @param {'public' | 'internal'} [variant] Specifies which `variant` of the site. Public is the end-user site, while `internal` is the staff-only site with special pages for moderation and management. - * @param {string} [branch] Specifies which git branch the site should load frontend source code from. - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - async getCSS(variant?: 'public' | 'internal', branch?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getCSS(variant, branch, options); - return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); - }, - /** - * API config contains configuration that the clients needs to work properly. Currently the most important value here is `clientApiKey` which is used for all other API endpoints. - * @summary Fetch API Config - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - async getConfig(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getConfig(options); - return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); - }, - /** - * Returns the current number of online users. **NOTE:** The response type is not a JSON object, but a simple JSON integer. - * @summary Current Online Users + * Returns a print. + * @summary Delete Print + * @param {string} printId Print ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getCurrentOnlineUsers(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getCurrentOnlineUsers(options); + async deletePrint(printId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.deletePrint(printId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * ~~Gets the overall health status, the server name, and the current build version tag of the API.~~ **DEPRECATED:** VRChat has suddenly restricted this endpoint for unknown reasons, and now always return 401 Unauthorized. - * @summary Check API Health + * Edits a print. + * @summary Edit Print + * @param {string} printId Print ID. + * @param {File} image The binary blob of the png file. + * @param {string} [note] The caption for the image. * @param {*} [options] Override http request option. - * @deprecated * @throws {RequiredError} */ - async getHealth(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getHealth(options); + async editPrint(printId: string, image: File, note?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.editPrint(printId, image, note, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * IPS (Info Push System) is a system for VRChat to push out dynamic information to the client. This is primarily used by the Quick-Menu info banners, but can also be used to e.g. alert you to update your game to the latest version. `include` is used to query what Information Pushes should be included in the response. If include is missing or empty, then no notices will normally be returned. This is an \"any of\" search. `require` is used to limit what Information Pushes should be included in the response. This is usually used in combination with `include`, and is an \"all of\" search. - * @summary Show Information Notices - * @param {string} [require] Tags to include (comma-separated). All of the tags needs to be present. - * @param {string} [include] Tags to include (comma-separated). Any of the tags needs to be present. + * Returns a print. + * @summary Get Print + * @param {string} printId Print ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getInfoPush(require?: string, include?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getInfoPush(require, include, options); + async getPrint(printId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getPrint(printId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Fetches the JavaScript code to the frontend React website. - * @summary Download JavaScript - * @param {'public' | 'internal'} [variant] Specifies which `variant` of the site. Public is the end-user site, while `internal` is the staff-only site with special pages for moderation and management. - * @param {string} [branch] Specifies which git branch the site should load frontend source code from. + * Returns a list of all prints of the user. User id has to be your own userId, as you can\'t request other user\'s prints. + * @summary Get Own Prints + * @param {string} userId Must be a valid user ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getJavaScript(variant?: 'public' | 'internal', branch?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getJavaScript(variant, branch, options); + async getUserPrints(userId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getUserPrints(userId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Returns the current time of the API server. **NOTE:** The response type is not a JSON object, but a simple JSON string. - * @summary Current System Time + * Uploads and creates a print. + * @summary Upload Print + * @param {File} image The binary blob of the png file. + * @param {string} timestamp The time the image was captured. + * @param {string} [note] The caption for the image. + * @param {string} [worldId] The id of the world in which the image was captured. + * @param {string} [worldName] The name of the world in which the image was captured. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getSystemTime(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getSystemTime(options); + async uploadPrint(image: File, timestamp: string, note?: string, worldId?: string, worldName?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.uploadPrint(image, timestamp, note, worldId, worldName, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, } }; /** - * SystemApi - factory interface + * PrintsApi - factory interface * @export */ -export const SystemApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { - const localVarFp = SystemApiFp(configuration) +export const PrintsApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = PrintsApiFp(configuration) return { /** - * Fetches the CSS code to the frontend React website. - * @summary Download CSS - * @param {'public' | 'internal'} [variant] Specifies which `variant` of the site. Public is the end-user site, while `internal` is the staff-only site with special pages for moderation and management. - * @param {string} [branch] Specifies which git branch the site should load frontend source code from. - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - getCSS(variant?: 'public' | 'internal', branch?: string, options?: any): AxiosPromise { - return localVarFp.getCSS(variant, branch, options).then((request) => request(axios, basePath)); - }, - /** - * API config contains configuration that the clients needs to work properly. Currently the most important value here is `clientApiKey` which is used for all other API endpoints. - * @summary Fetch API Config - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - getConfig(options?: any): AxiosPromise { - return localVarFp.getConfig(options).then((request) => request(axios, basePath)); - }, - /** - * Returns the current number of online users. **NOTE:** The response type is not a JSON object, but a simple JSON integer. - * @summary Current Online Users + * Returns a print. + * @summary Delete Print + * @param {string} printId Print ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getCurrentOnlineUsers(options?: any): AxiosPromise { - return localVarFp.getCurrentOnlineUsers(options).then((request) => request(axios, basePath)); + deletePrint(printId: string, options?: any): AxiosPromise { + return localVarFp.deletePrint(printId, options).then((request) => request(axios, basePath)); }, /** - * ~~Gets the overall health status, the server name, and the current build version tag of the API.~~ **DEPRECATED:** VRChat has suddenly restricted this endpoint for unknown reasons, and now always return 401 Unauthorized. - * @summary Check API Health + * Edits a print. + * @summary Edit Print + * @param {string} printId Print ID. + * @param {File} image The binary blob of the png file. + * @param {string} [note] The caption for the image. * @param {*} [options] Override http request option. - * @deprecated * @throws {RequiredError} */ - getHealth(options?: any): AxiosPromise { - return localVarFp.getHealth(options).then((request) => request(axios, basePath)); + editPrint(printId: string, image: File, note?: string, options?: any): AxiosPromise { + return localVarFp.editPrint(printId, image, note, options).then((request) => request(axios, basePath)); }, /** - * IPS (Info Push System) is a system for VRChat to push out dynamic information to the client. This is primarily used by the Quick-Menu info banners, but can also be used to e.g. alert you to update your game to the latest version. `include` is used to query what Information Pushes should be included in the response. If include is missing or empty, then no notices will normally be returned. This is an \"any of\" search. `require` is used to limit what Information Pushes should be included in the response. This is usually used in combination with `include`, and is an \"all of\" search. - * @summary Show Information Notices - * @param {string} [require] Tags to include (comma-separated). All of the tags needs to be present. - * @param {string} [include] Tags to include (comma-separated). Any of the tags needs to be present. + * Returns a print. + * @summary Get Print + * @param {string} printId Print ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getInfoPush(require?: string, include?: string, options?: any): AxiosPromise> { - return localVarFp.getInfoPush(require, include, options).then((request) => request(axios, basePath)); + getPrint(printId: string, options?: any): AxiosPromise { + return localVarFp.getPrint(printId, options).then((request) => request(axios, basePath)); }, /** - * Fetches the JavaScript code to the frontend React website. - * @summary Download JavaScript - * @param {'public' | 'internal'} [variant] Specifies which `variant` of the site. Public is the end-user site, while `internal` is the staff-only site with special pages for moderation and management. - * @param {string} [branch] Specifies which git branch the site should load frontend source code from. + * Returns a list of all prints of the user. User id has to be your own userId, as you can\'t request other user\'s prints. + * @summary Get Own Prints + * @param {string} userId Must be a valid user ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getJavaScript(variant?: 'public' | 'internal', branch?: string, options?: any): AxiosPromise { - return localVarFp.getJavaScript(variant, branch, options).then((request) => request(axios, basePath)); + getUserPrints(userId: string, options?: any): AxiosPromise> { + return localVarFp.getUserPrints(userId, options).then((request) => request(axios, basePath)); }, /** - * Returns the current time of the API server. **NOTE:** The response type is not a JSON object, but a simple JSON string. - * @summary Current System Time + * Uploads and creates a print. + * @summary Upload Print + * @param {File} image The binary blob of the png file. + * @param {string} timestamp The time the image was captured. + * @param {string} [note] The caption for the image. + * @param {string} [worldId] The id of the world in which the image was captured. + * @param {string} [worldName] The name of the world in which the image was captured. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getSystemTime(options?: any): AxiosPromise { - return localVarFp.getSystemTime(options).then((request) => request(axios, basePath)); + uploadPrint(image: File, timestamp: string, note?: string, worldId?: string, worldName?: string, options?: any): AxiosPromise { + return localVarFp.uploadPrint(image, timestamp, note, worldId, worldName, options).then((request) => request(axios, basePath)); }, }; }; /** - * SystemApi - object-oriented interface + * PrintsApi - object-oriented interface * @export - * @class SystemApi + * @class PrintsApi * @extends {BaseAPI} */ -export class SystemApi extends BaseAPI { - /** - * Fetches the CSS code to the frontend React website. - * @summary Download CSS - * @param {'public' | 'internal'} [variant] Specifies which `variant` of the site. Public is the end-user site, while `internal` is the staff-only site with special pages for moderation and management. - * @param {string} [branch] Specifies which git branch the site should load frontend source code from. - * @param {*} [options] Override http request option. - * @throws {RequiredError} - * @memberof SystemApi - */ - public getCSS(variant?: 'public' | 'internal', branch?: string, options?: AxiosRequestConfig) { - return SystemApiFp(this.configuration).getCSS(variant, branch, options).then((request) => request(this.axios, this.basePath)); - } - - /** - * API config contains configuration that the clients needs to work properly. Currently the most important value here is `clientApiKey` which is used for all other API endpoints. - * @summary Fetch API Config - * @param {*} [options] Override http request option. - * @throws {RequiredError} - * @memberof SystemApi - */ - public getConfig(options?: AxiosRequestConfig) { - return SystemApiFp(this.configuration).getConfig(options).then((request) => request(this.axios, this.basePath)); - } - +export class PrintsApi extends BaseAPI { /** - * Returns the current number of online users. **NOTE:** The response type is not a JSON object, but a simple JSON integer. - * @summary Current Online Users + * Returns a print. + * @summary Delete Print + * @param {string} printId Print ID. * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof SystemApi + * @memberof PrintsApi */ - public getCurrentOnlineUsers(options?: AxiosRequestConfig) { - return SystemApiFp(this.configuration).getCurrentOnlineUsers(options).then((request) => request(this.axios, this.basePath)); + public deletePrint(printId: string, options?: AxiosRequestConfig) { + return PrintsApiFp(this.configuration).deletePrint(printId, options).then((request) => request(this.axios, this.basePath)); } /** - * ~~Gets the overall health status, the server name, and the current build version tag of the API.~~ **DEPRECATED:** VRChat has suddenly restricted this endpoint for unknown reasons, and now always return 401 Unauthorized. - * @summary Check API Health + * Edits a print. + * @summary Edit Print + * @param {string} printId Print ID. + * @param {File} image The binary blob of the png file. + * @param {string} [note] The caption for the image. * @param {*} [options] Override http request option. - * @deprecated * @throws {RequiredError} - * @memberof SystemApi + * @memberof PrintsApi */ - public getHealth(options?: AxiosRequestConfig) { - return SystemApiFp(this.configuration).getHealth(options).then((request) => request(this.axios, this.basePath)); + public editPrint(printId: string, image: File, note?: string, options?: AxiosRequestConfig) { + return PrintsApiFp(this.configuration).editPrint(printId, image, note, options).then((request) => request(this.axios, this.basePath)); } /** - * IPS (Info Push System) is a system for VRChat to push out dynamic information to the client. This is primarily used by the Quick-Menu info banners, but can also be used to e.g. alert you to update your game to the latest version. `include` is used to query what Information Pushes should be included in the response. If include is missing or empty, then no notices will normally be returned. This is an \"any of\" search. `require` is used to limit what Information Pushes should be included in the response. This is usually used in combination with `include`, and is an \"all of\" search. - * @summary Show Information Notices - * @param {string} [require] Tags to include (comma-separated). All of the tags needs to be present. - * @param {string} [include] Tags to include (comma-separated). Any of the tags needs to be present. + * Returns a print. + * @summary Get Print + * @param {string} printId Print ID. * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof SystemApi + * @memberof PrintsApi */ - public getInfoPush(require?: string, include?: string, options?: AxiosRequestConfig) { - return SystemApiFp(this.configuration).getInfoPush(require, include, options).then((request) => request(this.axios, this.basePath)); + public getPrint(printId: string, options?: AxiosRequestConfig) { + return PrintsApiFp(this.configuration).getPrint(printId, options).then((request) => request(this.axios, this.basePath)); } /** - * Fetches the JavaScript code to the frontend React website. - * @summary Download JavaScript - * @param {'public' | 'internal'} [variant] Specifies which `variant` of the site. Public is the end-user site, while `internal` is the staff-only site with special pages for moderation and management. - * @param {string} [branch] Specifies which git branch the site should load frontend source code from. + * Returns a list of all prints of the user. User id has to be your own userId, as you can\'t request other user\'s prints. + * @summary Get Own Prints + * @param {string} userId Must be a valid user ID. * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof SystemApi + * @memberof PrintsApi */ - public getJavaScript(variant?: 'public' | 'internal', branch?: string, options?: AxiosRequestConfig) { - return SystemApiFp(this.configuration).getJavaScript(variant, branch, options).then((request) => request(this.axios, this.basePath)); + public getUserPrints(userId: string, options?: AxiosRequestConfig) { + return PrintsApiFp(this.configuration).getUserPrints(userId, options).then((request) => request(this.axios, this.basePath)); } /** - * Returns the current time of the API server. **NOTE:** The response type is not a JSON object, but a simple JSON string. - * @summary Current System Time + * Uploads and creates a print. + * @summary Upload Print + * @param {File} image The binary blob of the png file. + * @param {string} timestamp The time the image was captured. + * @param {string} [note] The caption for the image. + * @param {string} [worldId] The id of the world in which the image was captured. + * @param {string} [worldName] The name of the world in which the image was captured. * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof SystemApi + * @memberof PrintsApi */ - public getSystemTime(options?: AxiosRequestConfig) { - return SystemApiFp(this.configuration).getSystemTime(options).then((request) => request(this.axios, this.basePath)); + public uploadPrint(image: File, timestamp: string, note?: string, worldId?: string, worldName?: string, options?: AxiosRequestConfig) { + return PrintsApiFp(this.configuration).uploadPrint(image, timestamp, note, worldId, worldName, options).then((request) => request(this.axios, this.basePath)); } } diff --git a/base.ts b/base.ts index 2ed0e2c..69f4905 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.19.3 + * The version of the OpenAPI document: 1.19.4 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index 98ca763..ca186c6 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.19.3 + * The version of the OpenAPI document: 1.19.4 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index e4cefc7..b0c9d6c 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.19.3 + * The version of the OpenAPI document: 1.19.4 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index c120b3c..8d5b01d 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.19.3 + * The version of the OpenAPI document: 1.19.4 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index 8cbf40e..29e971c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.19.3", + "version": "1.19.4", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.19.3", + "version": "1.19.4", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index c171bfe..751b33e 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.19.3", + "version": "1.19.4", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "repository": { From 36e7e8d1800c1db7eab49702c89b0c48b8024300 Mon Sep 17 00:00:00 2001 From: VRCCat Date: Sun, 22 Jun 2025 19:20:55 +0000 Subject: [PATCH 128/130] Upgrade Node SDK to spec 1.20.0 --- api.ts | 454 +++++++++++++++++++++++++++++++++++++++++----- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 +- package.json | 2 +- 7 files changed, 412 insertions(+), 56 deletions(-) diff --git a/api.ts b/api.ts index 853fd76..8bc325a 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.19.4 + * The version of the OpenAPI document: 1.20.0 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -1777,6 +1777,12 @@ export interface Avatar { * @memberof Avatar */ 'name': string; + /** + * + * @type {AvatarPerformance} + * @memberof Avatar + */ + 'performance': AvatarPerformance; /** * * @type {string} @@ -1851,6 +1857,49 @@ export interface Avatar { */ 'version': number; } +/** + * + * @export + * @interface AvatarPerformance + */ +export interface AvatarPerformance { + /** + * + * @type {string} + * @memberof AvatarPerformance + */ + 'android'?: string; + /** + * + * @type {number} + * @memberof AvatarPerformance + */ + 'android-sort'?: number; + /** + * + * @type {string} + * @memberof AvatarPerformance + */ + 'ios'?: string; + /** + * + * @type {number} + * @memberof AvatarPerformance + */ + 'ios-sort'?: number; + /** + * + * @type {string} + * @memberof AvatarPerformance + */ + 'standalonewindows'?: string; + /** + * + * @type {number} + * @memberof AvatarPerformance + */ + 'standalonewindows-sort'?: number; +} /** * * @export @@ -3109,6 +3158,12 @@ export interface CurrentUserPresence { * @memberof CurrentUserPresence */ 'displayName'?: string; + /** + * + * @type {string} + * @memberof CurrentUserPresence + */ + 'debugflag'?: string; /** * * @type {Array} @@ -6004,10 +6059,10 @@ export interface Instance { 'world': World; /** * The users field is present on instances created by the requesting user. - * @type {Array} + * @type {Array} * @memberof Instance */ - 'users'?: Array; + 'users'?: Array; /** * * @type {GroupAccessType} @@ -6075,6 +6130,12 @@ export interface InstanceContentSettings { * @memberof InstanceContentSettings */ 'stickers'?: boolean; + /** + * + * @type {boolean} + * @memberof InstanceContentSettings + */ + 'props'?: boolean; } /** * @@ -6570,138 +6631,149 @@ export interface LimitedUnityPackage { 'unityVersion': string; } /** - * + * User object received when querying your friends list * @export - * @interface LimitedUser + * @interface LimitedUserFriend */ -export interface LimitedUser { +export interface LimitedUserFriend { /** * * @type {string} - * @memberof LimitedUser + * @memberof LimitedUserFriend */ 'bio'?: string; /** * * @type {Array} - * @memberof LimitedUser + * @memberof LimitedUserFriend */ 'bioLinks'?: Array; /** * When profilePicOverride is not empty, use it instead. * @type {string} - * @memberof LimitedUser + * @memberof LimitedUserFriend */ - 'currentAvatarImageUrl'?: string; + 'currentAvatarImageUrl': string; /** * When profilePicOverride is not empty, use it instead. * @type {string} - * @memberof LimitedUser + * @memberof LimitedUserFriend */ 'currentAvatarThumbnailImageUrl'?: string; /** * * @type {Array} - * @memberof LimitedUser + * @memberof LimitedUserFriend */ 'currentAvatarTags'?: Array; /** * * @type {DeveloperType} - * @memberof LimitedUser + * @memberof LimitedUserFriend */ 'developerType': DeveloperType; /** * * @type {string} - * @memberof LimitedUser + * @memberof LimitedUserFriend */ 'displayName': string; /** * * @type {string} - * @memberof LimitedUser + * @memberof LimitedUserFriend */ - 'fallbackAvatar'?: string; + 'friendKey': string; /** * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof LimitedUser + * @memberof LimitedUserFriend */ 'id': string; /** * * @type {boolean} - * @memberof LimitedUser + * @memberof LimitedUserFriend */ 'isFriend': boolean; + /** + * + * @type {string} + * @memberof LimitedUserFriend + */ + 'imageUrl': string; /** * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. * @type {string} - * @memberof LimitedUser + * @memberof LimitedUserFriend */ 'last_platform': string; /** * * @type {string} - * @memberof LimitedUser + * @memberof LimitedUserFriend */ - 'last_login'?: string | null; + 'location': string; /** * * @type {string} - * @memberof LimitedUser + * @memberof LimitedUserFriend */ - 'profilePicOverride'?: string; + 'last_login': string | null; /** * * @type {string} - * @memberof LimitedUser + * @memberof LimitedUserFriend */ - 'pronouns'?: string; + 'last_activity': string | null; /** * - * @type {UserStatus} - * @memberof LimitedUser + * @type {string} + * @memberof LimitedUserFriend */ - 'status': UserStatus; + 'last_mobile': string | null; /** * * @type {string} - * @memberof LimitedUser + * @memberof LimitedUserFriend */ - 'statusDescription': string; + 'platform': string; /** - * <- Always empty. - * @type {Array} - * @memberof LimitedUser + * + * @type {string} + * @memberof LimitedUserFriend */ - 'tags': Array; + 'profilePicOverride': string; /** * * @type {string} - * @memberof LimitedUser + * @memberof LimitedUserFriend */ - 'userIcon'?: string; + 'profilePicOverrideThumbnail': string; /** - * -| **DEPRECATED:** VRChat API no longer return usernames of other users. [See issue by Tupper for more information](https://github.com/pypy-vrc/VRCX/issues/429). - * @type {string} - * @memberof LimitedUser - * @deprecated + * + * @type {UserStatus} + * @memberof LimitedUserFriend */ - 'username'?: string; + 'status': UserStatus; /** * * @type {string} - * @memberof LimitedUser + * @memberof LimitedUserFriend */ - 'location'?: string; + 'statusDescription': string; + /** + * <- Always empty. + * @type {Array} + * @memberof LimitedUserFriend + */ + 'tags': Array; /** * * @type {string} - * @memberof LimitedUser + * @memberof LimitedUserFriend */ - 'friendKey'?: string; + 'userIcon': string; } /** * @@ -6818,6 +6890,278 @@ export interface LimitedUserGroups { */ 'lastPostReadAt'?: string | null; } +/** + * User object received when querying your own instance + * @export + * @interface LimitedUserInstance + */ +export interface LimitedUserInstance { + /** + * + * @type {AgeVerificationStatus} + * @memberof LimitedUserInstance + */ + 'ageVerificationStatus': AgeVerificationStatus; + /** + * `true` if, user is age verified (not 18+). + * @type {boolean} + * @memberof LimitedUserInstance + */ + 'ageVerified': boolean; + /** + * + * @type {boolean} + * @memberof LimitedUserInstance + */ + 'allowAvatarCopying': boolean; + /** + * + * @type {string} + * @memberof LimitedUserInstance + */ + 'bio'?: string; + /** + * + * @type {Array} + * @memberof LimitedUserInstance + */ + 'bioLinks'?: Array; + /** + * When profilePicOverride is not empty, use it instead. + * @type {string} + * @memberof LimitedUserInstance + */ + 'currentAvatarImageUrl': string; + /** + * When profilePicOverride is not empty, use it instead. + * @type {string} + * @memberof LimitedUserInstance + */ + 'currentAvatarThumbnailImageUrl': string; + /** + * + * @type {Array} + * @memberof LimitedUserInstance + */ + 'currentAvatarTags': Array; + /** + * + * @type {string} + * @memberof LimitedUserInstance + */ + 'date_joined': string | null; + /** + * + * @type {DeveloperType} + * @memberof LimitedUserInstance + */ + 'developerType': DeveloperType; + /** + * + * @type {string} + * @memberof LimitedUserInstance + */ + 'displayName': string; + /** + * + * @type {string} + * @memberof LimitedUserInstance + */ + 'friendKey': string; + /** + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof LimitedUserInstance + */ + 'id': string; + /** + * + * @type {boolean} + * @memberof LimitedUserInstance + */ + 'isFriend': boolean; + /** + * + * @type {string} + * @memberof LimitedUserInstance + */ + 'imageUrl'?: string; + /** + * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. + * @type {string} + * @memberof LimitedUserInstance + */ + 'last_platform': string; + /** + * + * @type {string} + * @memberof LimitedUserInstance + */ + 'last_activity': string | null; + /** + * + * @type {string} + * @memberof LimitedUserInstance + */ + 'last_mobile': string | null; + /** + * + * @type {string} + * @memberof LimitedUserInstance + */ + 'platform'?: string; + /** + * + * @type {string} + * @memberof LimitedUserInstance + */ + 'profilePicOverride': string; + /** + * + * @type {string} + * @memberof LimitedUserInstance + */ + 'profilePicOverrideThumbnail': string; + /** + * + * @type {string} + * @memberof LimitedUserInstance + */ + 'pronouns': string; + /** + * + * @type {UserState} + * @memberof LimitedUserInstance + */ + 'state': UserState; + /** + * + * @type {UserStatus} + * @memberof LimitedUserInstance + */ + 'status': UserStatus; + /** + * + * @type {string} + * @memberof LimitedUserInstance + */ + 'statusDescription': string; + /** + * + * @type {Array} + * @memberof LimitedUserInstance + */ + 'tags': Array; + /** + * + * @type {string} + * @memberof LimitedUserInstance + */ + 'userIcon': string; +} +/** + * User object received when searching + * @export + * @interface LimitedUserSearch + */ +export interface LimitedUserSearch { + /** + * + * @type {string} + * @memberof LimitedUserSearch + */ + 'bio'?: string; + /** + * + * @type {Array} + * @memberof LimitedUserSearch + */ + 'bioLinks'?: Array; + /** + * When profilePicOverride is not empty, use it instead. + * @type {string} + * @memberof LimitedUserSearch + */ + 'currentAvatarImageUrl': string; + /** + * When profilePicOverride is not empty, use it instead. + * @type {string} + * @memberof LimitedUserSearch + */ + 'currentAvatarThumbnailImageUrl': string; + /** + * + * @type {Array} + * @memberof LimitedUserSearch + */ + 'currentAvatarTags': Array; + /** + * + * @type {DeveloperType} + * @memberof LimitedUserSearch + */ + 'developerType': DeveloperType; + /** + * + * @type {string} + * @memberof LimitedUserSearch + */ + 'displayName': string; + /** + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof LimitedUserSearch + */ + 'id': string; + /** + * + * @type {boolean} + * @memberof LimitedUserSearch + */ + 'isFriend': boolean; + /** + * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. + * @type {string} + * @memberof LimitedUserSearch + */ + 'last_platform': string; + /** + * + * @type {string} + * @memberof LimitedUserSearch + */ + 'profilePicOverride': string; + /** + * + * @type {string} + * @memberof LimitedUserSearch + */ + 'pronouns'?: string; + /** + * + * @type {UserStatus} + * @memberof LimitedUserSearch + */ + 'status': UserStatus; + /** + * + * @type {string} + * @memberof LimitedUserSearch + */ + 'statusDescription': string; + /** + * <- Always empty. + * @type {Array} + * @memberof LimitedUserSearch + */ + 'tags': Array; + /** + * + * @type {string} + * @memberof LimitedUserSearch + */ + 'userIcon': string; +} /** * * @export @@ -8523,6 +8867,12 @@ export interface Subscription { * @memberof Subscription */ 'picoSku'?: string; + /** + * + * @type {string} + * @memberof Subscription + */ + 'appleProductId'?: string; /** * * @type {number} @@ -8646,6 +8996,12 @@ export interface TokenBundle { * @memberof TokenBundle */ 'oculusSku': string; + /** + * + * @type {string} + * @memberof TokenBundle + */ + 'googleProductId'?: string; /** * price of the bundle * @type {number} @@ -15847,7 +16203,7 @@ export const FriendsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getFriends(offset?: number, n?: number, offline?: boolean, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + async getFriends(offset?: number, n?: number, offline?: boolean, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.getFriends(offset, n, offline, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -15911,7 +16267,7 @@ export const FriendsApiFactory = function (configuration?: Configuration, basePa * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getFriends(offset?: number, n?: number, offline?: boolean, options?: any): AxiosPromise> { + getFriends(offset?: number, n?: number, offline?: boolean, options?: any): AxiosPromise> { return localVarFp.getFriends(offset, n, offline, options).then((request) => request(axios, basePath)); }, /** @@ -23930,7 +24286,7 @@ export const UsersApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async searchUsers(search?: string, developerType?: string, n?: number, offset?: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + async searchUsers(search?: string, developerType?: string, n?: number, offset?: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.searchUsers(search, developerType, n, offset, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -24130,7 +24486,7 @@ export const UsersApiFactory = function (configuration?: Configuration, basePath * @param {*} [options] Override http request option. * @throws {RequiredError} */ - searchUsers(search?: string, developerType?: string, n?: number, offset?: number, options?: any): AxiosPromise> { + searchUsers(search?: string, developerType?: string, n?: number, offset?: number, options?: any): AxiosPromise> { return localVarFp.searchUsers(search, developerType, n, offset, options).then((request) => request(axios, basePath)); }, /** diff --git a/base.ts b/base.ts index 69f4905..d88dfdf 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.19.4 + * The version of the OpenAPI document: 1.20.0 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index ca186c6..4d3c2cc 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.19.4 + * The version of the OpenAPI document: 1.20.0 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index b0c9d6c..f53ee60 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.19.4 + * The version of the OpenAPI document: 1.20.0 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index 8d5b01d..364096b 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.19.4 + * The version of the OpenAPI document: 1.20.0 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index 29e971c..db4346e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.19.4", + "version": "1.20.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.19.4", + "version": "1.20.0", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index 751b33e..e298291 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.19.4", + "version": "1.20.0", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "repository": { From 60d396c4f515a0b35289e5211f2ceb855451bcf4 Mon Sep 17 00:00:00 2001 From: VRCCat Date: Thu, 24 Jul 2025 09:26:23 +0000 Subject: [PATCH 129/130] Upgrade Node SDK to spec 1.20.1 --- api.ts | 6933 +++++++++++++++++++++++++++------------------ base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 +- package.json | 2 +- 7 files changed, 4161 insertions(+), 2786 deletions(-) diff --git a/api.ts b/api.ts index 8bc325a..02351f6 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.20.0 + * The version of the OpenAPI document: 1.20.1 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -1672,6 +1672,128 @@ export interface AddGroupGalleryImageRequest { */ 'fileId': string; } +/** + * + * @export + * @interface AdminAssetBundle + */ +export interface AdminAssetBundle { + /** + * + * @type {string} + * @memberof AdminAssetBundle + */ + '_created_at': string; + /** + * + * @type {string} + * @memberof AdminAssetBundle + */ + '_updated_at': string; + /** + * + * @type {string} + * @memberof AdminAssetBundle + */ + 'assetType': string; + /** + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof AdminAssetBundle + */ + 'authorId': string; + /** + * + * @type {string} + * @memberof AdminAssetBundle + */ + 'authorName': string; + /** + * + * @type {string} + * @memberof AdminAssetBundle + */ + 'description': string; + /** + * + * @type {string} + * @memberof AdminAssetBundle + */ + 'imageUrl': string; + /** + * + * @type {string} + * @memberof AdminAssetBundle + */ + 'name': string; + /** + * + * @type {ReleaseStatus} + * @memberof AdminAssetBundle + */ + 'releaseStatus': ReleaseStatus; + /** + * + * @type {Array} + * @memberof AdminAssetBundle + */ + 'tags': Array; + /** + * + * @type {string} + * @memberof AdminAssetBundle + */ + 'thumbnailImageUrl': string; + /** + * + * @type {string} + * @memberof AdminAssetBundle + */ + 'unityPackageUrl': string | null; + /** + * + * @type {Set} + * @memberof AdminAssetBundle + */ + 'unityPackages': Set; +} +/** + * + * @export + * @interface AdminUnityPackage + */ +export interface AdminUnityPackage { + /** + * + * @type {string} + * @memberof AdminUnityPackage + */ + 'assetUrl': string; + /** + * + * @type {number} + * @memberof AdminUnityPackage + */ + 'assetVersion': number; + /** + * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. + * @type {string} + * @memberof AdminUnityPackage + */ + 'platform': string; + /** + * + * @type {string} + * @memberof AdminUnityPackage + */ + 'unityVersion': string; + /** + * + * @type {string} + * @memberof AdminUnityPackage + */ + 'variant': string; +} /** * `verified` is obsolete. User who have verified and are 18+ can switch to `plus18` status. * @export @@ -1943,6 +2065,25 @@ export interface AvatarPublishedListingsInner { */ 'priceTokens'?: number; } +/** + * + * @export + * @interface AvatarStyle + */ +export interface AvatarStyle { + /** + * + * @type {string} + * @memberof AvatarStyle + */ + 'id': string; + /** + * + * @type {string} + * @memberof AvatarStyle + */ + 'styleName': string; +} /** * * @export @@ -5340,7 +5481,8 @@ export const GroupPermissions = { group_members_remove: 'group-members-remove', group_members_viewall: 'group-members-viewall', group_roles_assign: 'group-roles-assign', - group_roles_manage: 'group-roles-manage' + group_roles_manage: 'group-roles-manage', + group_calendar_manage: 'group-calendar-manage' } as const; export type GroupPermissions = typeof GroupPermissions[keyof typeof GroupPermissions]; @@ -6218,273 +6360,227 @@ export type InstanceType = typeof InstanceType[keyof typeof InstanceType]; /** * * @export - * @interface InviteMessage + * @interface Inventory */ -export interface InviteMessage { - /** - * - * @type {boolean} - * @memberof InviteMessage - */ - 'canBeUpdated': boolean; - /** - * - * @type {string} - * @memberof InviteMessage - */ - 'id': string; - /** - * - * @type {string} - * @memberof InviteMessage - */ - 'message': string; +export interface Inventory { /** * - * @type {InviteMessageType} - * @memberof InviteMessage - */ - 'messageType': InviteMessageType; - /** - * Changes to 60 when updated, although probably server-side configurable. - * @type {number} - * @memberof InviteMessage + * @type {Array} + * @memberof Inventory */ - 'remainingCooldownMinutes': number; + 'data': Array; /** * * @type {number} - * @memberof InviteMessage - */ - 'slot': number; - /** - * - * @type {string} - * @memberof InviteMessage + * @memberof Inventory */ - 'updatedAt': string; + 'totalCount': number; } /** * * @export - * @enum {string} - */ - -export const InviteMessageType = { - Message: 'message', - Response: 'response', - Request: 'request', - RequestResponse: 'requestResponse' -} as const; - -export type InviteMessageType = typeof InviteMessageType[keyof typeof InviteMessageType]; - - -/** - * - * @export - * @interface InviteRequest + * @interface InventoryDrop */ -export interface InviteRequest { +export interface InventoryDrop { /** - * InstanceID can be \"offline\" on User profiles if you are not friends with that user and \"private\" if you are friends and user is in private instance. + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof InviteRequest + * @memberof InventoryDrop */ - 'instanceId': string; + 'authorId': string; /** * - * @type {number} - * @memberof InviteRequest + * @type {string} + * @memberof InventoryDrop */ - 'messageSlot'?: number; -} -/** - * - * @export - * @interface InviteResponse - */ -export interface InviteResponse { + 'created_at': string; /** * - * @type {number} - * @memberof InviteResponse + * @type {string} + * @memberof InventoryDrop */ - 'responseSlot': number; -} -/** - * - * @export - * @interface Jam - */ -export interface Jam { + 'dropExpiryDate': string | null; /** * * @type {string} - * @memberof Jam + * @memberof InventoryDrop */ - 'description': string; + 'endDropDate': string; /** * * @type {string} - * @memberof Jam + * @memberof InventoryDrop */ 'id': string; /** * - * @type {boolean} - * @memberof Jam + * @type {string} + * @memberof InventoryDrop */ - 'isVisible': boolean; + 'name': string; /** * - * @type {string} - * @memberof Jam + * @type {InventoryNotificationDetails} + * @memberof InventoryDrop */ - 'moreInfo': string; + 'notificationDetails': InventoryNotificationDetails; /** - * One of: - submissions_open - closed + * * @type {string} - * @memberof Jam + * @memberof InventoryDrop */ - 'state': string; + 'startDropDate': string; /** * - * @type {JamStateChangeDates} - * @memberof Jam + * @type {string} + * @memberof InventoryDrop */ - 'stateChangeDates': JamStateChangeDates; + 'status': string; /** * - * @type {string} - * @memberof Jam + * @type {Array} + * @memberof InventoryDrop */ - 'submissionContentGateDate': string | null; + 'tags': Array; /** * - * @type {boolean} - * @memberof Jam + * @type {string} + * @memberof InventoryDrop */ - 'submissionContentGated': boolean; + 'targetGroup': string; /** * - * @type {string} - * @memberof Jam + * @type {Array} + * @memberof InventoryDrop */ - 'title': string; + 'templateIds': Array; /** * * @type {string} - * @memberof Jam + * @memberof InventoryDrop */ 'updated_at': string; } /** * * @export - * @interface JamStateChangeDates + * @interface InventoryItem */ -export interface JamStateChangeDates { +export interface InventoryItem { /** * - * @type {string} - * @memberof JamStateChangeDates + * @type {Array} + * @memberof InventoryItem */ - 'closed'?: string | null; + 'collections': Array; /** * * @type {string} - * @memberof JamStateChangeDates + * @memberof InventoryItem */ - 'submissionsClosed'?: string | null; + 'created_at': string; /** * * @type {string} - * @memberof JamStateChangeDates + * @memberof InventoryItem */ - 'submissionsOpened'?: string | null; + 'description': string; /** * * @type {string} - * @memberof JamStateChangeDates + * @memberof InventoryItem */ - 'winnersSelected'?: string | null; -} -/** - * - * @export - * @interface License - */ -export interface License { + 'expiryDate': string | null; /** - * Either a AvatarID, LicenseGroupID, PermissionID or ProductID. This depends on the `forType` field. + * + * @type {Array} + * @memberof InventoryItem + */ + 'flags': Array; + /** + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof License + * @memberof InventoryItem */ - 'forId': string; + 'holderId': string; /** * - * @type {LicenseType} - * @memberof License + * @type {string} + * @memberof InventoryItem */ - 'forType': LicenseType; + 'id': string; /** * * @type {string} - * @memberof License + * @memberof InventoryItem */ - 'forName': string; + 'imageUrl': string; /** * - * @type {LicenseAction} - * @memberof License + * @type {boolean} + * @memberof InventoryItem */ - 'forAction': LicenseAction; -} -/** - * - * @export - * @enum {string} - */ - -export const LicenseAction = { - Wear: 'wear', - Have: 'have' -} as const; - -export type LicenseAction = typeof LicenseAction[keyof typeof LicenseAction]; - - -/** - * - * @export - * @interface LicenseGroup - */ -export interface LicenseGroup { + 'isArchived': boolean; + /** + * + * @type {boolean} + * @memberof InventoryItem + */ + 'isSeen': boolean; + /** + * + * @type {InventoryItemType} + * @memberof InventoryItem + */ + 'itemType': InventoryItemType; /** * * @type {string} - * @memberof LicenseGroup + * @memberof InventoryItem */ - 'id': string; + 'itemTypeLabel': string; + /** + * + * @type {InventoryMetadata} + * @memberof InventoryItem + */ + 'metadata': InventoryMetadata; /** * * @type {string} - * @memberof LicenseGroup + * @memberof InventoryItem */ 'name': string; + /** + * + * @type {Array} + * @memberof InventoryItem + */ + 'tags': Array; /** * * @type {string} - * @memberof LicenseGroup + * @memberof InventoryItem */ - 'description': string; + 'templateId': string; /** * - * @type {Array} - * @memberof LicenseGroup + * @type {string} + * @memberof InventoryItem */ - 'licenses': Array; + 'template_created_at': string; + /** + * + * @type {string} + * @memberof InventoryItem + */ + 'template_updated_at': string; + /** + * + * @type {string} + * @memberof InventoryItem + */ + 'updated_at': string; } /** * @@ -6492,1364 +6588,1317 @@ export interface LicenseGroup { * @enum {string} */ -export const LicenseType = { - Avatar: 'avatar', - LicenseGroup: 'licenseGroup', - Permission: 'permission', - Product: 'product' +export const InventoryItemType = { + Bundle: 'bundle', + Prop: 'prop', + Emoji: 'emoji', + Sticker: 'sticker' } as const; -export type LicenseType = typeof LicenseType[keyof typeof LicenseType]; +export type InventoryItemType = typeof InventoryItemType[keyof typeof InventoryItemType]; /** * * @export - * @interface LimitedGroup + * @interface InventoryMetadata */ -export interface LimitedGroup { +export interface InventoryMetadata { + [key: string]: any; + /** - * - * @type {string} - * @memberof LimitedGroup + * Only in bundles + * @type {Array} + * @memberof InventoryMetadata */ - 'id'?: string; + 'inventoryItemsToInstantiate'?: Array; /** * - * @type {string} - * @memberof LimitedGroup + * @type {boolean} + * @memberof InventoryMetadata */ - 'name'?: string; + 'animated'?: boolean; /** * * @type {string} - * @memberof LimitedGroup + * @memberof InventoryMetadata */ - 'shortCode'?: string; + 'animationStyle'?: string; /** * * @type {string} - * @memberof LimitedGroup + * @memberof InventoryMetadata */ - 'discriminator'?: string; + 'assetBundleId'?: string; /** * * @type {string} - * @memberof LimitedGroup + * @memberof InventoryMetadata */ - 'description'?: string; + 'fileId'?: string; /** * * @type {string} - * @memberof LimitedGroup + * @memberof InventoryMetadata */ - 'iconUrl'?: string | null; + 'imageUrl'?: string; /** * * @type {string} - * @memberof LimitedGroup - */ - 'bannerUrl'?: string | null; - /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. - * @type {string} - * @memberof LimitedGroup + * @memberof InventoryMetadata */ - 'ownerId'?: string; + 'maskTag'?: string; /** * * @type {string} - * @memberof LimitedGroup + * @memberof InventoryMetadata */ - 'rules'?: string | null; + 'propId'?: string; +} +/** + * + * @export + * @interface InventoryNotificationDetails + */ +export interface InventoryNotificationDetails { /** * * @type {string} - * @memberof LimitedGroup + * @memberof InventoryNotificationDetails */ - 'iconId'?: string | null; + 'body': string; /** * * @type {string} - * @memberof LimitedGroup - */ - 'bannerId'?: string | null; - /** - * - * @type {number} - * @memberof LimitedGroup - */ - 'memberCount'?: number; - /** - * - * @type {Array} - * @memberof LimitedGroup + * @memberof InventoryNotificationDetails */ - 'tags'?: Array; + 'imageUrl': string; /** * * @type {string} - * @memberof LimitedGroup - */ - 'createdAt'?: string; - /** - * - * @type {GroupMemberStatus} - * @memberof LimitedGroup - */ - 'membershipStatus'?: GroupMemberStatus; - /** - * - * @type {boolean} - * @memberof LimitedGroup - */ - 'isSearchable'?: boolean; - /** - * - * @type {Array} - * @memberof LimitedGroup + * @memberof InventoryNotificationDetails */ - 'galleries'?: Array; + 'title': string; } /** * * @export - * @interface LimitedUnityPackage + * @interface InventorySpawn */ -export interface LimitedUnityPackage { +export interface InventorySpawn { /** - * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. + * * @type {string} - * @memberof LimitedUnityPackage + * @memberof InventorySpawn */ - 'platform': string; + 'token': string; /** * - * @type {string} - * @memberof LimitedUnityPackage + * @type {number} + * @memberof InventorySpawn */ - 'unityVersion': string; + 'version': number; } /** - * User object received when querying your friends list + * * @export - * @interface LimitedUserFriend + * @interface InventoryTemplate */ -export interface LimitedUserFriend { +export interface InventoryTemplate { /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof LimitedUserFriend + * @memberof InventoryTemplate */ - 'bio'?: string; + 'authorId': string; /** - * + * * @type {Array} - * @memberof LimitedUserFriend + * @memberof InventoryTemplate */ - 'bioLinks'?: Array; + 'collections': Array; /** - * When profilePicOverride is not empty, use it instead. + * * @type {string} - * @memberof LimitedUserFriend + * @memberof InventoryTemplate */ - 'currentAvatarImageUrl': string; + 'created_at': string; /** - * When profilePicOverride is not empty, use it instead. + * * @type {string} - * @memberof LimitedUserFriend + * @memberof InventoryTemplate */ - 'currentAvatarThumbnailImageUrl'?: string; + 'description': string; /** * * @type {Array} - * @memberof LimitedUserFriend + * @memberof InventoryTemplate */ - 'currentAvatarTags'?: Array; + 'flags': Array; /** * - * @type {DeveloperType} - * @memberof LimitedUserFriend + * @type {string} + * @memberof InventoryTemplate */ - 'developerType': DeveloperType; + 'id': string; /** * * @type {string} - * @memberof LimitedUserFriend + * @memberof InventoryTemplate */ - 'displayName': string; + 'imageUrl': string; /** * - * @type {string} - * @memberof LimitedUserFriend + * @type {InventoryItemType} + * @memberof InventoryTemplate */ - 'friendKey': string; + 'itemType': InventoryItemType; /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * * @type {string} - * @memberof LimitedUserFriend + * @memberof InventoryTemplate */ - 'id': string; + 'itemTypeLabel': string; /** * - * @type {boolean} - * @memberof LimitedUserFriend + * @type {InventoryMetadata} + * @memberof InventoryTemplate */ - 'isFriend': boolean; + 'metadata'?: InventoryMetadata; /** * * @type {string} - * @memberof LimitedUserFriend + * @memberof InventoryTemplate */ - 'imageUrl': string; + 'name': string; /** - * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. - * @type {string} - * @memberof LimitedUserFriend + * + * @type {InventoryNotificationDetails} + * @memberof InventoryTemplate */ - 'last_platform': string; + 'notificationDetails'?: InventoryNotificationDetails; /** * * @type {string} - * @memberof LimitedUserFriend + * @memberof InventoryTemplate */ - 'location': string; + 'status': string; /** * - * @type {string} - * @memberof LimitedUserFriend + * @type {Array} + * @memberof InventoryTemplate */ - 'last_login': string | null; + 'tags': Array; /** * * @type {string} - * @memberof LimitedUserFriend + * @memberof InventoryTemplate */ - 'last_activity': string | null; + 'updated_at': string; +} +/** + * + * @export + * @interface InviteMessage + */ +export interface InviteMessage { /** * - * @type {string} - * @memberof LimitedUserFriend + * @type {boolean} + * @memberof InviteMessage */ - 'last_mobile': string | null; + 'canBeUpdated': boolean; /** * * @type {string} - * @memberof LimitedUserFriend + * @memberof InviteMessage */ - 'platform': string; + 'id': string; /** * * @type {string} - * @memberof LimitedUserFriend + * @memberof InviteMessage */ - 'profilePicOverride': string; + 'message': string; /** * - * @type {string} - * @memberof LimitedUserFriend + * @type {InviteMessageType} + * @memberof InviteMessage */ - 'profilePicOverrideThumbnail': string; + 'messageType': InviteMessageType; /** - * - * @type {UserStatus} - * @memberof LimitedUserFriend + * Changes to 60 when updated, although probably server-side configurable. + * @type {number} + * @memberof InviteMessage */ - 'status': UserStatus; + 'remainingCooldownMinutes': number; /** * - * @type {string} - * @memberof LimitedUserFriend - */ - 'statusDescription': string; - /** - * <- Always empty. - * @type {Array} - * @memberof LimitedUserFriend + * @type {number} + * @memberof InviteMessage */ - 'tags': Array; + 'slot': number; /** * * @type {string} - * @memberof LimitedUserFriend + * @memberof InviteMessage */ - 'userIcon': string; + 'updatedAt': string; } /** * * @export - * @interface LimitedUserGroups + * @enum {string} */ -export interface LimitedUserGroups { - /** - * - * @type {string} - * @memberof LimitedUserGroups - */ - 'id'?: string; - /** - * - * @type {string} - * @memberof LimitedUserGroups - */ - 'name'?: string; - /** - * - * @type {string} - * @memberof LimitedUserGroups - */ - 'shortCode'?: string; - /** - * - * @type {string} - * @memberof LimitedUserGroups - */ - 'discriminator'?: string; + +export const InviteMessageType = { + Message: 'message', + Response: 'response', + Request: 'request', + RequestResponse: 'requestResponse' +} as const; + +export type InviteMessageType = typeof InviteMessageType[keyof typeof InviteMessageType]; + + +/** + * + * @export + * @interface InviteRequest + */ +export interface InviteRequest { /** - * + * InstanceID can be \"offline\" on User profiles if you are not friends with that user and \"private\" if you are friends and user is in private instance. * @type {string} - * @memberof LimitedUserGroups + * @memberof InviteRequest */ - 'description'?: string; + 'instanceId': string; /** * - * @type {string} - * @memberof LimitedUserGroups + * @type {number} + * @memberof InviteRequest */ - 'iconId'?: string | null; + 'messageSlot'?: number; +} +/** + * + * @export + * @interface InviteResponse + */ +export interface InviteResponse { /** * - * @type {string} - * @memberof LimitedUserGroups + * @type {number} + * @memberof InviteResponse */ - 'iconUrl'?: string | null; + 'responseSlot': number; +} +/** + * + * @export + * @interface Jam + */ +export interface Jam { /** * * @type {string} - * @memberof LimitedUserGroups + * @memberof Jam */ - 'bannerId'?: string | null; + 'description': string; /** * * @type {string} - * @memberof LimitedUserGroups + * @memberof Jam */ - 'bannerUrl'?: string | null; + 'id': string; /** * - * @type {string} - * @memberof LimitedUserGroups + * @type {boolean} + * @memberof Jam */ - 'privacy'?: string; + 'isVisible': boolean; /** * * @type {string} - * @memberof LimitedUserGroups + * @memberof Jam */ - 'lastPostCreatedAt'?: string | null; + 'moreInfo': string; /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * One of: - submissions_open - closed * @type {string} - * @memberof LimitedUserGroups - */ - 'ownerId'?: string; - /** - * - * @type {number} - * @memberof LimitedUserGroups + * @memberof Jam */ - 'memberCount'?: number; + 'state': string; /** * - * @type {string} - * @memberof LimitedUserGroups + * @type {JamStateChangeDates} + * @memberof Jam */ - 'groupId'?: string; + 'stateChangeDates': JamStateChangeDates; /** * * @type {string} - * @memberof LimitedUserGroups + * @memberof Jam */ - 'memberVisibility'?: string; + 'submissionContentGateDate': string | null; /** * * @type {boolean} - * @memberof LimitedUserGroups + * @memberof Jam */ - 'isRepresenting'?: boolean; + 'submissionContentGated': boolean; /** * - * @type {boolean} - * @memberof LimitedUserGroups + * @type {string} + * @memberof Jam */ - 'mutualGroup'?: boolean; + 'title': string; /** * * @type {string} - * @memberof LimitedUserGroups + * @memberof Jam */ - 'lastPostReadAt'?: string | null; + 'updated_at': string; } /** - * User object received when querying your own instance + * * @export - * @interface LimitedUserInstance + * @interface JamStateChangeDates */ -export interface LimitedUserInstance { +export interface JamStateChangeDates { /** * - * @type {AgeVerificationStatus} - * @memberof LimitedUserInstance - */ - 'ageVerificationStatus': AgeVerificationStatus; - /** - * `true` if, user is age verified (not 18+). - * @type {boolean} - * @memberof LimitedUserInstance + * @type {string} + * @memberof JamStateChangeDates */ - 'ageVerified': boolean; + 'closed'?: string | null; /** * - * @type {boolean} - * @memberof LimitedUserInstance + * @type {string} + * @memberof JamStateChangeDates */ - 'allowAvatarCopying': boolean; + 'submissionsClosed'?: string | null; /** * * @type {string} - * @memberof LimitedUserInstance - */ - 'bio'?: string; - /** - * - * @type {Array} - * @memberof LimitedUserInstance + * @memberof JamStateChangeDates */ - 'bioLinks'?: Array; + 'submissionsOpened'?: string | null; /** - * When profilePicOverride is not empty, use it instead. + * * @type {string} - * @memberof LimitedUserInstance + * @memberof JamStateChangeDates */ - 'currentAvatarImageUrl': string; + 'winnersSelected'?: string | null; +} +/** + * + * @export + * @interface License + */ +export interface License { /** - * When profilePicOverride is not empty, use it instead. + * Either a AvatarID, LicenseGroupID, PermissionID or ProductID. This depends on the `forType` field. * @type {string} - * @memberof LimitedUserInstance + * @memberof License */ - 'currentAvatarThumbnailImageUrl': string; + 'forId': string; /** * - * @type {Array} - * @memberof LimitedUserInstance + * @type {LicenseType} + * @memberof License */ - 'currentAvatarTags': Array; + 'forType': LicenseType; /** * * @type {string} - * @memberof LimitedUserInstance + * @memberof License */ - 'date_joined': string | null; + 'forName': string; /** * - * @type {DeveloperType} - * @memberof LimitedUserInstance + * @type {LicenseAction} + * @memberof License */ - 'developerType': DeveloperType; + 'forAction': LicenseAction; +} +/** + * + * @export + * @enum {string} + */ + +export const LicenseAction = { + Wear: 'wear', + Have: 'have' +} as const; + +export type LicenseAction = typeof LicenseAction[keyof typeof LicenseAction]; + + +/** + * + * @export + * @interface LicenseGroup + */ +export interface LicenseGroup { /** * * @type {string} - * @memberof LimitedUserInstance + * @memberof LicenseGroup */ - 'displayName': string; + 'id': string; /** * * @type {string} - * @memberof LimitedUserInstance + * @memberof LicenseGroup */ - 'friendKey': string; + 'name': string; /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * * @type {string} - * @memberof LimitedUserInstance + * @memberof LicenseGroup */ - 'id': string; + 'description': string; /** * - * @type {boolean} - * @memberof LimitedUserInstance + * @type {Array} + * @memberof LicenseGroup */ - 'isFriend': boolean; - /** - * + 'licenses': Array; +} +/** + * + * @export + * @enum {string} + */ + +export const LicenseType = { + Avatar: 'avatar', + LicenseGroup: 'licenseGroup', + Permission: 'permission', + Product: 'product' +} as const; + +export type LicenseType = typeof LicenseType[keyof typeof LicenseType]; + + +/** + * + * @export + * @interface LimitedGroup + */ +export interface LimitedGroup { + /** + * * @type {string} - * @memberof LimitedUserInstance + * @memberof LimitedGroup */ - 'imageUrl'?: string; + 'id'?: string; /** - * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. + * * @type {string} - * @memberof LimitedUserInstance + * @memberof LimitedGroup */ - 'last_platform': string; + 'name'?: string; /** * * @type {string} - * @memberof LimitedUserInstance + * @memberof LimitedGroup */ - 'last_activity': string | null; + 'shortCode'?: string; /** * * @type {string} - * @memberof LimitedUserInstance + * @memberof LimitedGroup */ - 'last_mobile': string | null; + 'discriminator'?: string; /** * * @type {string} - * @memberof LimitedUserInstance + * @memberof LimitedGroup */ - 'platform'?: string; + 'description'?: string; /** * * @type {string} - * @memberof LimitedUserInstance + * @memberof LimitedGroup */ - 'profilePicOverride': string; + 'iconUrl'?: string | null; /** * * @type {string} - * @memberof LimitedUserInstance + * @memberof LimitedGroup */ - 'profilePicOverrideThumbnail': string; + 'bannerUrl'?: string | null; /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof LimitedUserInstance + * @memberof LimitedGroup */ - 'pronouns': string; + 'ownerId'?: string; /** * - * @type {UserState} - * @memberof LimitedUserInstance + * @type {string} + * @memberof LimitedGroup */ - 'state': UserState; + 'rules'?: string | null; /** * - * @type {UserStatus} - * @memberof LimitedUserInstance + * @type {string} + * @memberof LimitedGroup */ - 'status': UserStatus; + 'iconId'?: string | null; /** * * @type {string} - * @memberof LimitedUserInstance + * @memberof LimitedGroup */ - 'statusDescription': string; + 'bannerId'?: string | null; /** * + * @type {number} + * @memberof LimitedGroup + */ + 'memberCount'?: number; + /** + * * @type {Array} - * @memberof LimitedUserInstance + * @memberof LimitedGroup */ - 'tags': Array; + 'tags'?: Array; /** * * @type {string} - * @memberof LimitedUserInstance + * @memberof LimitedGroup */ - 'userIcon': string; + 'createdAt'?: string; + /** + * + * @type {GroupMemberStatus} + * @memberof LimitedGroup + */ + 'membershipStatus'?: GroupMemberStatus; + /** + * + * @type {boolean} + * @memberof LimitedGroup + */ + 'isSearchable'?: boolean; + /** + * + * @type {Array} + * @memberof LimitedGroup + */ + 'galleries'?: Array; } /** - * User object received when searching + * * @export - * @interface LimitedUserSearch + * @interface LimitedUnityPackage */ -export interface LimitedUserSearch { +export interface LimitedUnityPackage { + /** + * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. + * @type {string} + * @memberof LimitedUnityPackage + */ + 'platform': string; /** * * @type {string} - * @memberof LimitedUserSearch + * @memberof LimitedUnityPackage + */ + 'unityVersion': string; +} +/** + * User object received when querying your friends list + * @export + * @interface LimitedUserFriend + */ +export interface LimitedUserFriend { + /** + * + * @type {string} + * @memberof LimitedUserFriend */ 'bio'?: string; /** * * @type {Array} - * @memberof LimitedUserSearch + * @memberof LimitedUserFriend */ 'bioLinks'?: Array; /** * When profilePicOverride is not empty, use it instead. * @type {string} - * @memberof LimitedUserSearch + * @memberof LimitedUserFriend */ 'currentAvatarImageUrl': string; /** * When profilePicOverride is not empty, use it instead. * @type {string} - * @memberof LimitedUserSearch + * @memberof LimitedUserFriend */ - 'currentAvatarThumbnailImageUrl': string; + 'currentAvatarThumbnailImageUrl'?: string; /** * * @type {Array} - * @memberof LimitedUserSearch + * @memberof LimitedUserFriend */ - 'currentAvatarTags': Array; + 'currentAvatarTags'?: Array; /** * * @type {DeveloperType} - * @memberof LimitedUserSearch + * @memberof LimitedUserFriend */ 'developerType': DeveloperType; /** * * @type {string} - * @memberof LimitedUserSearch + * @memberof LimitedUserFriend */ 'displayName': string; + /** + * + * @type {string} + * @memberof LimitedUserFriend + */ + 'friendKey': string; /** * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof LimitedUserSearch + * @memberof LimitedUserFriend */ 'id': string; /** * * @type {boolean} - * @memberof LimitedUserSearch + * @memberof LimitedUserFriend */ 'isFriend': boolean; + /** + * + * @type {string} + * @memberof LimitedUserFriend + */ + 'imageUrl': string; /** * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. * @type {string} - * @memberof LimitedUserSearch + * @memberof LimitedUserFriend */ 'last_platform': string; /** * * @type {string} - * @memberof LimitedUserSearch + * @memberof LimitedUserFriend + */ + 'location': string; + /** + * + * @type {string} + * @memberof LimitedUserFriend + */ + 'last_login': string | null; + /** + * + * @type {string} + * @memberof LimitedUserFriend + */ + 'last_activity': string | null; + /** + * + * @type {string} + * @memberof LimitedUserFriend + */ + 'last_mobile': string | null; + /** + * + * @type {string} + * @memberof LimitedUserFriend + */ + 'platform': string; + /** + * + * @type {string} + * @memberof LimitedUserFriend */ 'profilePicOverride': string; /** * * @type {string} - * @memberof LimitedUserSearch + * @memberof LimitedUserFriend */ - 'pronouns'?: string; + 'profilePicOverrideThumbnail': string; /** * * @type {UserStatus} - * @memberof LimitedUserSearch + * @memberof LimitedUserFriend */ 'status': UserStatus; /** * * @type {string} - * @memberof LimitedUserSearch + * @memberof LimitedUserFriend */ 'statusDescription': string; /** * <- Always empty. * @type {Array} - * @memberof LimitedUserSearch + * @memberof LimitedUserFriend */ 'tags': Array; /** * * @type {string} - * @memberof LimitedUserSearch + * @memberof LimitedUserFriend */ 'userIcon': string; } /** * * @export - * @interface LimitedWorld + * @interface LimitedUserGroups */ -export interface LimitedWorld { +export interface LimitedUserGroups { /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * * @type {string} - * @memberof LimitedWorld + * @memberof LimitedUserGroups */ - 'authorId': string; + 'id'?: string; /** * * @type {string} - * @memberof LimitedWorld + * @memberof LimitedUserGroups */ - 'authorName': string; + 'name'?: string; /** * - * @type {number} - * @memberof LimitedWorld + * @type {string} + * @memberof LimitedUserGroups */ - 'capacity': number; + 'shortCode'?: string; /** * - * @type {number} - * @memberof LimitedWorld + * @type {string} + * @memberof LimitedUserGroups */ - 'recommendedCapacity'?: number; + 'discriminator'?: string; /** * * @type {string} - * @memberof LimitedWorld + * @memberof LimitedUserGroups */ - 'created_at': string; + 'description'?: string; /** * - * @type {InstanceContentSettings} - * @memberof LimitedWorld + * @type {string} + * @memberof LimitedUserGroups */ - 'defaultContentSettings'?: InstanceContentSettings; + 'iconId'?: string | null; /** * - * @type {number} - * @memberof LimitedWorld + * @type {string} + * @memberof LimitedUserGroups */ - 'favorites': number; + 'iconUrl'?: string | null; /** * - * @type {number} - * @memberof LimitedWorld + * @type {string} + * @memberof LimitedUserGroups */ - 'visits'?: number; + 'bannerId'?: string | null; /** * - * @type {number} - * @memberof LimitedWorld - */ - 'heat': number; - /** - * WorldID be \"offline\" on User profiles if you are not friends with that user. * @type {string} - * @memberof LimitedWorld + * @memberof LimitedUserGroups */ - 'id': string; + 'bannerUrl'?: string | null; /** * * @type {string} - * @memberof LimitedWorld + * @memberof LimitedUserGroups */ - 'imageUrl': string; + 'privacy'?: string; /** * * @type {string} - * @memberof LimitedWorld + * @memberof LimitedUserGroups */ - 'labsPublicationDate': string; + 'lastPostCreatedAt'?: string | null; /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof LimitedWorld + * @memberof LimitedUserGroups */ - 'name': string; + 'ownerId'?: string; /** * * @type {number} - * @memberof LimitedWorld + * @memberof LimitedUserGroups */ - 'occupants': number; + 'memberCount'?: number; /** * * @type {string} - * @memberof LimitedWorld + * @memberof LimitedUserGroups */ - 'organization': string; + 'groupId'?: string; /** * - * @type {number} - * @memberof LimitedWorld + * @type {string} + * @memberof LimitedUserGroups */ - 'popularity': number; + 'memberVisibility'?: string; /** * - * @type {string} - * @memberof LimitedWorld + * @type {boolean} + * @memberof LimitedUserGroups */ - 'previewYoutubeId'?: string | null; + 'isRepresenting'?: boolean; /** * - * @type {string} - * @memberof LimitedWorld + * @type {boolean} + * @memberof LimitedUserGroups */ - 'publicationDate': string; + 'mutualGroup'?: boolean; /** * - * @type {ReleaseStatus} - * @memberof LimitedWorld + * @type {string} + * @memberof LimitedUserGroups */ - 'releaseStatus': ReleaseStatus; + 'lastPostReadAt'?: string | null; +} +/** + * User object received when querying your own instance + * @export + * @interface LimitedUserInstance + */ +export interface LimitedUserInstance { /** * - * @type {string} - * @memberof LimitedWorld + * @type {AgeVerificationStatus} + * @memberof LimitedUserInstance */ - 'storeId'?: string; + 'ageVerificationStatus': AgeVerificationStatus; /** - * - * @type {Array} - * @memberof LimitedWorld + * `true` if, user is age verified (not 18+). + * @type {boolean} + * @memberof LimitedUserInstance */ - 'tags': Array; + 'ageVerified': boolean; + /** + * + * @type {boolean} + * @memberof LimitedUserInstance + */ + 'allowAvatarCopying': boolean; /** * * @type {string} - * @memberof LimitedWorld + * @memberof LimitedUserInstance */ - 'thumbnailImageUrl': string; + 'bio'?: string; /** * - * @type {Array} - * @memberof LimitedWorld + * @type {Array} + * @memberof LimitedUserInstance */ - 'unityPackages': Array; + 'bioLinks'?: Array; /** - * + * When profilePicOverride is not empty, use it instead. * @type {string} - * @memberof LimitedWorld + * @memberof LimitedUserInstance */ - 'updated_at': string; + 'currentAvatarImageUrl': string; + /** + * When profilePicOverride is not empty, use it instead. + * @type {string} + * @memberof LimitedUserInstance + */ + 'currentAvatarThumbnailImageUrl': string; /** * * @type {Array} - * @memberof LimitedWorld + * @memberof LimitedUserInstance */ - 'udonProducts'?: Array; -} -/** - * - * @export - * @enum {string} - */ - -export const MIMEType = { - ImageJpeg: 'image/jpeg', - ImageJpg: 'image/jpg', - ImagePng: 'image/png', - ImageWebp: 'image/webp', - ImageGif: 'image/gif', - ImageBmp: 'image/bmp', - ImageSvgxml: 'image/svg+xml', - ImageTiff: 'image/tiff', - ApplicationXAvatar: 'application/x-avatar', - ApplicationXWorld: 'application/x-world', - ApplicationGzip: 'application/gzip', - ApplicationXRsyncSignature: 'application/x-rsync-signature', - ApplicationXRsyncDelta: 'application/x-rsync-delta', - ApplicationOctetStream: 'application/octet-stream' -} as const; - -export type MIMEType = typeof MIMEType[keyof typeof MIMEType]; - - -/** - * - * @export - * @interface ModelError - */ -export interface ModelError { + 'currentAvatarTags': Array; /** * - * @type {Response} - * @memberof ModelError + * @type {string} + * @memberof LimitedUserInstance */ - 'error'?: Response; -} -/** - * - * @export - * @interface ModelFile - */ -export interface ModelFile { + 'date_joined': string | null; /** * - * @type {string} - * @memberof ModelFile + * @type {DeveloperType} + * @memberof LimitedUserInstance */ - 'animationStyle'?: string; + 'developerType': DeveloperType; /** * * @type {string} - * @memberof ModelFile + * @memberof LimitedUserInstance */ - 'maskTag'?: string; + 'displayName': string; /** * * @type {string} - * @memberof ModelFile + * @memberof LimitedUserInstance */ - 'extension': string; + 'friendKey': string; /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof ModelFile + * @memberof LimitedUserInstance */ 'id': string; /** * - * @type {MIMEType} - * @memberof ModelFile + * @type {boolean} + * @memberof LimitedUserInstance */ - 'mimeType': MIMEType; + 'isFriend': boolean; /** * * @type {string} - * @memberof ModelFile + * @memberof LimitedUserInstance */ - 'name': string; + 'imageUrl'?: string; /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. * @type {string} - * @memberof ModelFile - */ - 'ownerId': string; - /** - * - * @type {Array} - * @memberof ModelFile + * @memberof LimitedUserInstance */ - 'tags': Array; + 'last_platform': string; /** - * - * @type {Set} - * @memberof ModelFile + * + * @type {string} + * @memberof LimitedUserInstance */ - 'versions': Set; -} -/** - * - * @export - * @interface ModerateUserRequest - */ -export interface ModerateUserRequest { + 'last_activity': string | null; /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * * @type {string} - * @memberof ModerateUserRequest + * @memberof LimitedUserInstance */ - 'moderated': string; + 'last_mobile': string | null; /** * - * @type {PlayerModerationType} - * @memberof ModerateUserRequest + * @type {string} + * @memberof LimitedUserInstance */ - 'type': PlayerModerationType; -} -/** - * - * @export - * @interface Notification - */ -export interface Notification { + 'platform'?: string; /** * * @type {string} - * @memberof Notification + * @memberof LimitedUserInstance */ - 'created_at': string; + 'profilePicOverride': string; /** - * **NOTICE:** This is not a JSON object when received from the REST API, but it is when received from the Websocket API. When received from the REST API, this is a json **encoded** object, meaning you have to json-de-encode to get the NotificationDetail object depending on the NotificationType. + * * @type {string} - * @memberof Notification + * @memberof LimitedUserInstance */ - 'details': string; + 'profilePicOverrideThumbnail': string; /** * * @type {string} - * @memberof Notification + * @memberof LimitedUserInstance */ - 'id': string; + 'pronouns': string; /** * - * @type {string} - * @memberof Notification + * @type {UserState} + * @memberof LimitedUserInstance */ - 'message': string; + 'state': UserState; /** - * Not included in notification objects received from the Websocket API - * @type {boolean} - * @memberof Notification - */ - 'seen'?: boolean; - /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. - * @type {string} - * @memberof Notification + * + * @type {UserStatus} + * @memberof LimitedUserInstance */ - 'receiverUserId'?: string; + 'status': UserStatus; /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * * @type {string} - * @memberof Notification + * @memberof LimitedUserInstance */ - 'senderUserId': string; + 'statusDescription': string; /** - * -| **DEPRECATED:** VRChat API no longer return usernames of other users. [See issue by Tupper for more information](https://github.com/pypy-vrc/VRCX/issues/429). - * @type {string} - * @memberof Notification - * @deprecated + * + * @type {Array} + * @memberof LimitedUserInstance */ - 'senderUsername'?: string; + 'tags': Array; /** * - * @type {NotificationType} - * @memberof Notification + * @type {string} + * @memberof LimitedUserInstance */ - 'type': NotificationType; + 'userIcon': string; } /** - * + * User object received when searching * @export - * @interface NotificationDetailInvite + * @interface LimitedUserSearch */ -export interface NotificationDetailInvite { +export interface LimitedUserSearch { /** * * @type {string} - * @memberof NotificationDetailInvite + * @memberof LimitedUserSearch */ - 'inviteMessage'?: string; + 'bio'?: string; /** - * WorldID be \"offline\" on User profiles if you are not friends with that user. + * + * @type {Array} + * @memberof LimitedUserSearch + */ + 'bioLinks'?: Array; + /** + * When profilePicOverride is not empty, use it instead. * @type {string} - * @memberof NotificationDetailInvite + * @memberof LimitedUserSearch */ - 'worldId': string; + 'currentAvatarImageUrl': string; /** - * + * When profilePicOverride is not empty, use it instead. * @type {string} - * @memberof NotificationDetailInvite + * @memberof LimitedUserSearch */ - 'worldName': string; -} -/** - * - * @export - * @interface NotificationDetailInviteResponse - */ -export interface NotificationDetailInviteResponse { + 'currentAvatarThumbnailImageUrl': string; /** * - * @type {string} - * @memberof NotificationDetailInviteResponse + * @type {Array} + * @memberof LimitedUserSearch */ - 'inResponseTo': string; + 'currentAvatarTags': Array; /** * - * @type {string} - * @memberof NotificationDetailInviteResponse + * @type {DeveloperType} + * @memberof LimitedUserSearch */ - 'responseMessage': string; -} -/** - * - * @export - * @interface NotificationDetailRequestInvite - */ -export interface NotificationDetailRequestInvite { + 'developerType': DeveloperType; /** - * TODO: Does this still exist? + * * @type {string} - * @memberof NotificationDetailRequestInvite + * @memberof LimitedUserSearch */ - 'platform'?: string; + 'displayName': string; /** - * Used when using InviteMessage Slot. + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof NotificationDetailRequestInvite + * @memberof LimitedUserSearch */ - 'requestMessage'?: string; -} -/** - * - * @export - * @interface NotificationDetailRequestInviteResponse - */ -export interface NotificationDetailRequestInviteResponse { + 'id': string; /** * - * @type {string} - * @memberof NotificationDetailRequestInviteResponse + * @type {boolean} + * @memberof LimitedUserSearch */ - 'inResponseTo': string; + 'isFriend': boolean; /** - * Used when using InviteMessage Slot. + * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. * @type {string} - * @memberof NotificationDetailRequestInviteResponse + * @memberof LimitedUserSearch */ - 'requestMessage'?: string; -} -/** - * - * @export - * @interface NotificationDetailVoteToKick - */ -export interface NotificationDetailVoteToKick { + 'last_platform': string; /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * * @type {string} - * @memberof NotificationDetailVoteToKick + * @memberof LimitedUserSearch */ - 'initiatorUserId': string; + 'profilePicOverride': string; /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * * @type {string} - * @memberof NotificationDetailVoteToKick + * @memberof LimitedUserSearch */ - 'userToKickId': string; -} -/** - * - * @export - * @enum {string} - */ - -export const NotificationType = { - FriendRequest: 'friendRequest', - Invite: 'invite', - InviteResponse: 'inviteResponse', - Message: 'message', - RequestInvite: 'requestInvite', - RequestInviteResponse: 'requestInviteResponse', - Votetokick: 'votetokick' -} as const; - -export type NotificationType = typeof NotificationType[keyof typeof NotificationType]; - - -/** - * - * @export - * @enum {string} - */ - -export const OrderOption = { - Ascending: 'ascending', - Descending: 'descending' -} as const; - -export type OrderOption = typeof OrderOption[keyof typeof OrderOption]; - - -/** - * - * @export - * @interface PaginatedGroupAuditLogEntryList - */ -export interface PaginatedGroupAuditLogEntryList { + 'pronouns'?: string; /** - * - * @type {Array} - * @memberof PaginatedGroupAuditLogEntryList + * + * @type {UserStatus} + * @memberof LimitedUserSearch */ - 'results'?: Array; + 'status': UserStatus; /** - * The total number of results that the query would return if there were no pagination. - * @type {number} - * @memberof PaginatedGroupAuditLogEntryList + * + * @type {string} + * @memberof LimitedUserSearch */ - 'totalCount'?: number; + 'statusDescription': string; /** - * Whether there are more results after this page. - * @type {boolean} - * @memberof PaginatedGroupAuditLogEntryList + * <- Always empty. + * @type {Array} + * @memberof LimitedUserSearch */ - 'hasNext'?: boolean; + 'tags': Array; + /** + * + * @type {string} + * @memberof LimitedUserSearch + */ + 'userIcon': string; } /** * * @export - * @interface PastDisplayName + * @interface LimitedWorld */ -export interface PastDisplayName { +export interface LimitedWorld { /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof PastDisplayName + * @memberof LimitedWorld */ - 'displayName': string; + 'authorId': string; /** * * @type {string} - * @memberof PastDisplayName + * @memberof LimitedWorld */ - 'updated_at': string; -} -/** - * - * @export - * @interface Pending2FAResult - */ -export interface Pending2FAResult { + 'authorName': string; /** * - * @type {string} - * @memberof Pending2FAResult + * @type {number} + * @memberof LimitedWorld */ - 'qrCodeDataUrl': string; + 'capacity': number; /** * - * @type {string} - * @memberof Pending2FAResult + * @type {number} + * @memberof LimitedWorld */ - 'secret': string; -} -/** - * Info about the performance limits on a platform - * @export - * @interface PerformanceLimiterInfo - */ -export interface PerformanceLimiterInfo { + 'recommendedCapacity'?: number; /** - * Maximum amount of seats. -1 means no limit. - * @type {number} - * @memberof PerformanceLimiterInfo + * + * @type {string} + * @memberof LimitedWorld */ - 'maxSeats': number; -} -/** - * Avatar Performance ratings. - * @export - * @enum {string} - */ - -export const PerformanceRatings = { - None: 'None', - Excellent: 'Excellent', - Good: 'Good', - Medium: 'Medium', - Poor: 'Poor', - VeryPoor: 'VeryPoor' -} as const; - -export type PerformanceRatings = typeof PerformanceRatings[keyof typeof PerformanceRatings]; - - -/** - * - * @export - * @interface Permission - */ -export interface Permission { + 'created_at': string; /** * - * @type {string} - * @memberof Permission + * @type {InstanceContentSettings} + * @memberof LimitedWorld */ - 'displayName'?: string; + 'defaultContentSettings'?: InstanceContentSettings; /** * - * @type {string} - * @memberof Permission + * @type {number} + * @memberof LimitedWorld */ - 'description'?: string; + 'favorites': number; + /** + * + * @type {number} + * @memberof LimitedWorld + */ + 'visits'?: number; /** * + * @type {number} + * @memberof LimitedWorld + */ + 'heat': number; + /** + * WorldID be \"offline\" on User profiles if you are not friends with that user. * @type {string} - * @memberof Permission + * @memberof LimitedWorld */ 'id': string; /** * * @type {string} - * @memberof Permission + * @memberof LimitedWorld */ - 'ownerDisplayName': string; + 'imageUrl': string; /** * * @type {string} - * @memberof Permission + * @memberof LimitedWorld */ - 'name': string; + 'labsPublicationDate': string; /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * * @type {string} - * @memberof Permission + * @memberof LimitedWorld */ - 'ownerId': string; + 'name': string; /** * - * @type {string} - * @memberof Permission + * @type {number} + * @memberof LimitedWorld */ - 'type'?: string; + 'occupants': number; /** * - * @type {object} - * @memberof Permission + * @type {string} + * @memberof LimitedWorld */ - 'data'?: object; -} -/** - * Build information for a platform - * @export - * @interface PlatformBuildInfo - */ -export interface PlatformBuildInfo { + 'organization': string; /** - * Minimum build number required for the platform + * * @type {number} - * @memberof PlatformBuildInfo + * @memberof LimitedWorld */ - 'minBuildNumber': number; + 'popularity': number; /** - * Redirection URL for updating the app + * * @type {string} - * @memberof PlatformBuildInfo + * @memberof LimitedWorld */ - 'redirectionAddress'?: string; -} -/** - * - * @export - * @interface PlayerModeration - */ -export interface PlayerModeration { + 'previewYoutubeId'?: string | null; /** * * @type {string} - * @memberof PlayerModeration + * @memberof LimitedWorld */ - 'created': string; + 'publicationDate': string; /** * - * @type {string} - * @memberof PlayerModeration + * @type {ReleaseStatus} + * @memberof LimitedWorld */ - 'id': string; + 'releaseStatus': ReleaseStatus; /** * * @type {string} - * @memberof PlayerModeration + * @memberof LimitedWorld */ - 'sourceDisplayName': string; + 'storeId'?: string; /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. - * @type {string} - * @memberof PlayerModeration + * + * @type {Array} + * @memberof LimitedWorld */ - 'sourceUserId': string; + 'tags': Array; /** * * @type {string} - * @memberof PlayerModeration + * @memberof LimitedWorld */ - 'targetDisplayName': string; + 'thumbnailImageUrl': string; /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * + * @type {Array} + * @memberof LimitedWorld + */ + 'unityPackages': Array; + /** + * * @type {string} - * @memberof PlayerModeration + * @memberof LimitedWorld */ - 'targetUserId': string; + 'updated_at': string; /** * - * @type {PlayerModerationType} - * @memberof PlayerModeration + * @type {Array} + * @memberof LimitedWorld */ - 'type': PlayerModerationType; + 'udonProducts'?: Array; } /** * @@ -7857,405 +7906,531 @@ export interface PlayerModeration { * @enum {string} */ -export const PlayerModerationType = { - Mute: 'mute', - Unmute: 'unmute', - Block: 'block', - Unblock: 'unblock', - InteractOn: 'interactOn', - InteractOff: 'interactOff' +export const MIMEType = { + ImageJpeg: 'image/jpeg', + ImageJpg: 'image/jpg', + ImagePng: 'image/png', + ImageWebp: 'image/webp', + ImageGif: 'image/gif', + ImageBmp: 'image/bmp', + ImageSvgxml: 'image/svg+xml', + ImageTiff: 'image/tiff', + ApplicationXAvatar: 'application/x-avatar', + ApplicationXWorld: 'application/x-world', + ApplicationGzip: 'application/gzip', + ApplicationXRsyncSignature: 'application/x-rsync-signature', + ApplicationXRsyncDelta: 'application/x-rsync-delta', + ApplicationOctetStream: 'application/octet-stream' } as const; -export type PlayerModerationType = typeof PlayerModerationType[keyof typeof PlayerModerationType]; +export type MIMEType = typeof MIMEType[keyof typeof MIMEType]; /** - * Info about a print + * * @export - * @interface Print + * @interface ModelError */ -export interface Print { +export interface ModelError { /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. - * @type {string} - * @memberof Print + * + * @type {Response} + * @memberof ModelError */ - 'authorId': string; + 'error'?: Response; +} +/** + * + * @export + * @interface ModelFile + */ +export interface ModelFile { /** * * @type {string} - * @memberof Print + * @memberof ModelFile */ - 'authorName': string; + 'animationStyle'?: string; /** * * @type {string} - * @memberof Print + * @memberof ModelFile */ - 'createdAt': string; + 'maskTag'?: string; /** * - * @type {PrintFiles} - * @memberof Print + * @type {string} + * @memberof ModelFile */ - 'files': PrintFiles; + 'extension': string; /** * * @type {string} - * @memberof Print + * @memberof ModelFile */ 'id': string; /** * - * @type {string} - * @memberof Print + * @type {MIMEType} + * @memberof ModelFile */ - 'note': string; + 'mimeType': MIMEType; /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * * @type {string} - * @memberof Print + * @memberof ModelFile */ - 'ownerId'?: string; + 'name': string; /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof Print + * @memberof ModelFile */ - 'timestamp': string; + 'ownerId': string; /** - * WorldID be \"offline\" on User profiles if you are not friends with that user. - * @type {string} - * @memberof Print + * + * @type {Array} + * @memberof ModelFile */ - 'worldId': string; + 'tags': Array; /** - * - * @type {string} - * @memberof Print + * + * @type {Set} + * @memberof ModelFile */ - 'worldName': string; + 'versions': Set; } /** * * @export - * @interface PrintFiles + * @interface ModerateUserRequest */ -export interface PrintFiles { +export interface ModerateUserRequest { /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof PrintFiles + * @memberof ModerateUserRequest */ - 'fileId'?: string; + 'moderated': string; /** - * Link to file, e.g. https://api.vrchat.cloud/api/1/file/file_66fe782d-f2bd-4462-9761-1d766d7b2b26/1/file - * @type {string} - * @memberof PrintFiles + * + * @type {PlayerModerationType} + * @memberof ModerateUserRequest */ - 'image'?: string; + 'type': PlayerModerationType; } /** * * @export - * @interface Product + * @interface Notification */ -export interface Product { - /** - * - * @type {boolean} - * @memberof Product - */ - 'archived': boolean; +export interface Notification { /** * * @type {string} - * @memberof Product + * @memberof Notification */ - 'created': string; + 'created_at': string; /** - * + * **NOTICE:** This is not a JSON object when received from the REST API, but it is when received from the Websocket API. When received from the REST API, this is a json **encoded** object, meaning you have to json-de-encode to get the NotificationDetail object depending on the NotificationType. * @type {string} - * @memberof Product + * @memberof Notification */ - 'description': string; + 'details': string; /** * * @type {string} - * @memberof Product + * @memberof Notification */ - 'displayName': string; + 'id': string; /** * - * @type {boolean} - * @memberof Product + * @type {string} + * @memberof Notification */ - 'groupAccess'?: boolean; + 'message': string; /** - * + * Not included in notification objects received from the Websocket API * @type {boolean} - * @memberof Product + * @memberof Notification */ - 'groupAccessRemove'?: boolean; + 'seen'?: boolean; /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof Product + * @memberof Notification */ - 'groupId'?: string; + 'receiverUserId'?: string; /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof Product + * @memberof Notification */ - 'groupRoleId'?: string; + 'senderUserId': string; /** - * + * -| **DEPRECATED:** VRChat API no longer return usernames of other users. [See issue by Tupper for more information](https://github.com/pypy-vrc/VRCX/issues/429). * @type {string} - * @memberof Product + * @memberof Notification + * @deprecated */ - 'id': string; + 'senderUsername'?: string; /** * - * @type {string} - * @memberof Product + * @type {NotificationType} + * @memberof Notification */ - 'imageId': string; + 'type': NotificationType; +} +/** + * + * @export + * @interface NotificationDetailInvite + */ +export interface NotificationDetailInvite { /** * - * @type {Array} - * @memberof Product + * @type {string} + * @memberof NotificationDetailInvite */ - 'parentListings': Array; + 'inviteMessage'?: string; /** - * - * @type {ProductType} - * @memberof Product + * WorldID be \"offline\" on User profiles if you are not friends with that user. + * @type {string} + * @memberof NotificationDetailInvite */ - 'productType': ProductType; + 'worldId': string; /** * * @type {string} - * @memberof Product + * @memberof NotificationDetailInvite */ - 'sellerDisplayName': string; + 'worldName': string; +} +/** + * + * @export + * @interface NotificationDetailInviteResponse + */ +export interface NotificationDetailInviteResponse { /** * * @type {string} - * @memberof Product + * @memberof NotificationDetailInviteResponse */ - 'sellerId': string; + 'inResponseTo': string; /** * - * @type {Array} - * @memberof Product + * @type {string} + * @memberof NotificationDetailInviteResponse */ - 'tags': Array; + 'responseMessage': string; +} +/** + * + * @export + * @interface NotificationDetailRequestInvite + */ +export interface NotificationDetailRequestInvite { /** - * + * TODO: Does this still exist? * @type {string} - * @memberof Product + * @memberof NotificationDetailRequestInvite */ - 'updated': string | null; + 'platform'?: string; /** - * - * @type {boolean} - * @memberof Product + * Used when using InviteMessage Slot. + * @type {string} + * @memberof NotificationDetailRequestInvite */ - 'useForSubscriberList'?: boolean; + 'requestMessage'?: string; } /** * * @export - * @interface ProductListing + * @interface NotificationDetailRequestInviteResponse */ -export interface ProductListing { - /** - * - * @type {boolean} - * @memberof ProductListing - */ - 'active': boolean; +export interface NotificationDetailRequestInviteResponse { /** * - * @type {boolean} - * @memberof ProductListing + * @type {string} + * @memberof NotificationDetailRequestInviteResponse */ - 'archived': boolean; + 'inResponseTo': string; /** - * - * @type {boolean} - * @memberof ProductListing + * Used when using InviteMessage Slot. + * @type {string} + * @memberof NotificationDetailRequestInviteResponse */ - 'buyerRefundable': boolean; + 'requestMessage'?: string; +} +/** + * + * @export + * @interface NotificationDetailVoteToKick + */ +export interface NotificationDetailVoteToKick { /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof ProductListing + * @memberof NotificationDetailVoteToKick */ - 'created': string; + 'initiatorUserId': string; /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof ProductListing + * @memberof NotificationDetailVoteToKick */ - 'description': string; + 'userToKickId': string; +} +/** + * + * @export + * @enum {string} + */ + +export const NotificationType = { + FriendRequest: 'friendRequest', + Invite: 'invite', + InviteResponse: 'inviteResponse', + Message: 'message', + RequestInvite: 'requestInvite', + RequestInviteResponse: 'requestInviteResponse', + Votetokick: 'votetokick' +} as const; + +export type NotificationType = typeof NotificationType[keyof typeof NotificationType]; + + +/** + * + * @export + * @enum {string} + */ + +export const OrderOption = { + Ascending: 'ascending', + Descending: 'descending' +} as const; + +export type OrderOption = typeof OrderOption[keyof typeof OrderOption]; + + +/** + * + * @export + * @interface PaginatedGroupAuditLogEntryList + */ +export interface PaginatedGroupAuditLogEntryList { /** - * - * @type {string} - * @memberof ProductListing + * + * @type {Array} + * @memberof PaginatedGroupAuditLogEntryList */ - 'displayName': string; + 'results'?: Array; /** - * + * The total number of results that the query would return if there were no pagination. * @type {number} - * @memberof ProductListing + * @memberof PaginatedGroupAuditLogEntryList */ - 'duration'?: number; + 'totalCount'?: number; /** - * - * @type {string} - * @memberof ProductListing + * Whether there are more results after this page. + * @type {boolean} + * @memberof PaginatedGroupAuditLogEntryList */ - 'durationType'?: string; + 'hasNext'?: boolean; +} +/** + * + * @export + * @interface PastDisplayName + */ +export interface PastDisplayName { /** * * @type {string} - * @memberof ProductListing + * @memberof PastDisplayName */ - 'groupIcon': string; + 'displayName': string; /** * * @type {string} - * @memberof ProductListing + * @memberof PastDisplayName */ - 'groupId': string; + 'updated_at': string; +} +/** + * + * @export + * @interface Pending2FAResult + */ +export interface Pending2FAResult { /** * * @type {string} - * @memberof ProductListing - */ - 'groupName': string; - /** - * - * @type {Array} - * @memberof ProductListing + * @memberof Pending2FAResult */ - 'hydratedProducts'?: Array; + 'qrCodeDataUrl': string; /** * * @type {string} - * @memberof ProductListing + * @memberof Pending2FAResult */ - 'id': string; + 'secret': string; +} +/** + * Info about the performance limits on a platform + * @export + * @interface PerformanceLimiterInfo + */ +export interface PerformanceLimiterInfo { /** - * - * @type {string} - * @memberof ProductListing + * Maximum amount of seats. -1 means no limit. + * @type {number} + * @memberof PerformanceLimiterInfo */ - 'imageId': string; + 'maxSeats': number; +} +/** + * Avatar Performance ratings. + * @export + * @enum {string} + */ + +export const PerformanceRatings = { + None: 'None', + Excellent: 'Excellent', + Good: 'Good', + Medium: 'Medium', + Poor: 'Poor', + VeryPoor: 'VeryPoor' +} as const; + +export type PerformanceRatings = typeof PerformanceRatings[keyof typeof PerformanceRatings]; + + +/** + * + * @export + * @interface Permission + */ +export interface Permission { /** * - * @type {boolean} - * @memberof ProductListing + * @type {string} + * @memberof Permission */ - 'instant': boolean; + 'displayName'?: string; /** * - * @type {ProductListingType} - * @memberof ProductListing + * @type {string} + * @memberof Permission */ - 'listingType': ProductListingType; + 'description'?: string; /** * - * @type {Array} - * @memberof ProductListing + * @type {string} + * @memberof Permission */ - 'listingVariants': Array; + 'id': string; /** * - * @type {boolean} - * @memberof ProductListing + * @type {string} + * @memberof Permission */ - 'permanent': boolean; + 'ownerDisplayName': string; /** * - * @type {number} - * @memberof ProductListing + * @type {string} + * @memberof Permission */ - 'priceTokens': number; + 'name': string; /** - * - * @type {Array} - * @memberof ProductListing + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof Permission */ - 'productIds': Array; + 'ownerId': string; /** * - * @type {ProductType} - * @memberof ProductListing + * @type {string} + * @memberof Permission */ - 'productType': ProductType; + 'type'?: string; /** * - * @type {Array} - * @memberof ProductListing + * @type {object} + * @memberof Permission */ - 'products': Array; + 'data'?: object; +} +/** + * Build information for a platform + * @export + * @interface PlatformBuildInfo + */ +export interface PlatformBuildInfo { /** - * - * @type {boolean} - * @memberof ProductListing + * Minimum build number required for the platform + * @type {number} + * @memberof PlatformBuildInfo */ - 'quantifiable'?: boolean; + 'minBuildNumber': number; /** - * - * @type {boolean} - * @memberof ProductListing + * Redirection URL for updating the app + * @type {string} + * @memberof PlatformBuildInfo */ - 'recurrable': boolean; + 'redirectionAddress'?: string; +} +/** + * + * @export + * @interface PlayerModeration + */ +export interface PlayerModeration { /** * - * @type {boolean} - * @memberof ProductListing + * @type {string} + * @memberof PlayerModeration */ - 'refundable': boolean; + 'created': string; /** * * @type {string} - * @memberof ProductListing + * @memberof PlayerModeration */ - 'sellerDisplayName': string; + 'id': string; /** * * @type {string} - * @memberof ProductListing + * @memberof PlayerModeration */ - 'sellerId': string; + 'sourceDisplayName': string; /** - * - * @type {boolean} - * @memberof ProductListing + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof PlayerModeration */ - 'stackable': boolean; + 'sourceUserId': string; /** * - * @type {Array} - * @memberof ProductListing + * @type {string} + * @memberof PlayerModeration */ - 'storeIds': Array; + 'targetDisplayName': string; /** - * - * @type {Array} - * @memberof ProductListing + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof PlayerModeration */ - 'tags': Array; + 'targetUserId': string; /** * - * @type {string} - * @memberof ProductListing + * @type {PlayerModerationType} + * @memberof PlayerModeration */ - 'updated': string | null; + 'type': PlayerModerationType; } /** * @@ -8263,488 +8438,405 @@ export interface ProductListing { * @enum {string} */ -export const ProductListingType = { - Subscription: 'subscription' +export const PlayerModerationType = { + Mute: 'mute', + Unmute: 'unmute', + Block: 'block', + Unblock: 'unblock', + InteractOn: 'interactOn', + InteractOff: 'interactOff' } as const; -export type ProductListingType = typeof ProductListingType[keyof typeof ProductListingType]; +export type PlayerModerationType = typeof PlayerModerationType[keyof typeof PlayerModerationType]; /** - * + * Info about a print * @export - * @interface ProductListingVariant + * @interface Print */ -export interface ProductListingVariant { +export interface Print { + /** + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof Print + */ + 'authorId': string; /** * * @type {string} - * @memberof ProductListingVariant + * @memberof Print */ - 'effectiveFrom'?: string; + 'authorName': string; /** * * @type {string} - * @memberof ProductListingVariant + * @memberof Print */ - 'listingVariantId': string; + 'createdAt': string; /** * - * @type {boolean} - * @memberof ProductListingVariant + * @type {PrintFiles} + * @memberof Print */ - 'nonRefundable': boolean; + 'files': PrintFiles; /** * - * @type {number} - * @memberof ProductListingVariant + * @type {string} + * @memberof Print */ - 'quantity': number; + 'id': string; /** * - * @type {boolean} - * @memberof ProductListingVariant + * @type {string} + * @memberof Print */ - 'sellerVariant': boolean; + 'note': string; + /** + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof Print + */ + 'ownerId'?: string; /** * - * @type {number} - * @memberof ProductListingVariant + * @type {string} + * @memberof Print */ - 'unitPriceTokens': number; + 'timestamp': string; + /** + * WorldID be \"offline\" on User profiles if you are not friends with that user. + * @type {string} + * @memberof Print + */ + 'worldId': string; + /** + * + * @type {string} + * @memberof Print + */ + 'worldName': string; } /** * * @export - * @enum {string} + * @interface PrintFiles */ - -export const ProductType = { - Listing: 'listing', - Role: 'role', - Udon: 'udon' -} as const; - -export type ProductType = typeof ProductType[keyof typeof ProductType]; - - -/** - * API/Photon region. - * @export - * @enum {string} - */ - -export const Region = { - Us: 'us', - Use: 'use', - Usw: 'usw', - Usx: 'usx', - Eu: 'eu', - Jp: 'jp', - Unknown: 'unknown' -} as const; - -export type Region = typeof Region[keyof typeof Region]; - - +export interface PrintFiles { + /** + * + * @type {string} + * @memberof PrintFiles + */ + 'fileId'?: string; + /** + * Link to file, e.g. https://api.vrchat.cloud/api/1/file/file_66fe782d-f2bd-4462-9761-1d766d7b2b26/1/file + * @type {string} + * @memberof PrintFiles + */ + 'image'?: string; +} /** * * @export - * @interface RegisterUserAccountRequest + * @interface Product */ -export interface RegisterUserAccountRequest { +export interface Product { /** - * Display Name / Username (Username is a sanitized version) - * @type {string} - * @memberof RegisterUserAccountRequest + * + * @type {boolean} + * @memberof Product */ - 'username': string; + 'archived': boolean; /** - * Password + * * @type {string} - * @memberof RegisterUserAccountRequest + * @memberof Product */ - 'password': string; + 'created': string; /** - * Email address + * * @type {string} - * @memberof RegisterUserAccountRequest + * @memberof Product */ - 'email': string; + 'description': string; /** - * Birth year + * * @type {string} - * @memberof RegisterUserAccountRequest + * @memberof Product */ - 'year': string; + 'displayName': string; /** - * Birth month of year + * + * @type {boolean} + * @memberof Product + */ + 'groupAccess'?: boolean; + /** + * + * @type {boolean} + * @memberof Product + */ + 'groupAccessRemove'?: boolean; + /** + * * @type {string} - * @memberof RegisterUserAccountRequest + * @memberof Product */ - 'month': string; + 'groupId'?: string; /** - * Birth day of month + * * @type {string} - * @memberof RegisterUserAccountRequest + * @memberof Product */ - 'day': string; + 'groupRoleId'?: string; /** - * Captcha code + * * @type {string} - * @memberof RegisterUserAccountRequest + * @memberof Product */ - 'captchaCode': string; + 'id': string; /** - * Whether to recieve promotional emails - * @type {boolean} - * @memberof RegisterUserAccountRequest + * + * @type {string} + * @memberof Product */ - 'subscribe': boolean; + 'imageId': string; /** - * The most recent version of the TOS - * @type {number} - * @memberof RegisterUserAccountRequest + * + * @type {Array} + * @memberof Product */ - 'acceptedTOSVersion': number; -} -/** - * - * @export - * @enum {string} - */ - -export const ReleaseStatus = { - Public: 'public', - Private: 'private', - Hidden: 'hidden', - All: 'all' -} as const; - -export type ReleaseStatus = typeof ReleaseStatus[keyof typeof ReleaseStatus]; - - -/** - * A category used for reporting content - * @export - * @interface ReportCategory - */ -export interface ReportCategory { + 'parentListings': Array; /** - * The description of the report category - * @type {string} - * @memberof ReportCategory + * + * @type {ProductType} + * @memberof Product */ - 'description'?: string; + 'productType': ProductType; /** - * The title of the report category + * * @type {string} - * @memberof ReportCategory + * @memberof Product */ - 'title'?: string; + 'sellerDisplayName': string; /** - * The label of the report category + * * @type {string} - * @memberof ReportCategory + * @memberof Product */ - 'text': string; + 'sellerId': string; /** - * The tooltip that describes the category - * @type {string} - * @memberof ReportCategory + * + * @type {Array} + * @memberof Product */ - 'tooltip': string; -} -/** - * A reason used for reporting users - * @export - * @interface ReportReason - */ -export interface ReportReason { + 'tags': Array; /** - * The label or name of the report reason + * * @type {string} - * @memberof ReportReason + * @memberof Product */ - 'text': string; + 'updated': string | null; /** - * A brief explanation of what this reason entails - * @type {string} - * @memberof ReportReason + * + * @type {boolean} + * @memberof Product */ - 'tooltip': string; + 'useForSubscriberList'?: boolean; } /** * * @export - * @interface RepresentedGroup + * @interface ProductListing */ -export interface RepresentedGroup { +export interface ProductListing { /** * - * @type {string} - * @memberof RepresentedGroup + * @type {boolean} + * @memberof ProductListing */ - 'name'?: string; + 'active': boolean; /** * - * @type {string} - * @memberof RepresentedGroup + * @type {boolean} + * @memberof ProductListing */ - 'shortCode'?: string; + 'archived': boolean; /** * - * @type {string} - * @memberof RepresentedGroup + * @type {boolean} + * @memberof ProductListing */ - 'discriminator'?: string; + 'buyerRefundable': boolean; /** * * @type {string} - * @memberof RepresentedGroup + * @memberof ProductListing */ - 'description'?: string; + 'created': string; /** * * @type {string} - * @memberof RepresentedGroup + * @memberof ProductListing */ - 'iconId'?: string | null; + 'description': string; /** * * @type {string} - * @memberof RepresentedGroup + * @memberof ProductListing */ - 'iconUrl'?: string | null; + 'displayName': string; /** * - * @type {string} - * @memberof RepresentedGroup + * @type {number} + * @memberof ProductListing */ - 'bannerId'?: string | null; + 'duration'?: number; /** * * @type {string} - * @memberof RepresentedGroup + * @memberof ProductListing */ - 'bannerUrl'?: string | null; + 'durationType'?: string; /** * - * @type {GroupPrivacy} - * @memberof RepresentedGroup - */ - 'privacy'?: GroupPrivacy; - /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof RepresentedGroup + * @memberof ProductListing */ - 'ownerId'?: string; + 'groupIcon': string; /** * - * @type {number} - * @memberof RepresentedGroup + * @type {string} + * @memberof ProductListing */ - 'memberCount'?: number; + 'groupId': string; /** * * @type {string} - * @memberof RepresentedGroup + * @memberof ProductListing */ - 'groupId'?: string; + 'groupName': string; /** * - * @type {GroupUserVisibility} - * @memberof RepresentedGroup + * @type {Array} + * @memberof ProductListing */ - 'memberVisibility'?: GroupUserVisibility; + 'hydratedProducts'?: Array; /** * - * @type {boolean} - * @memberof RepresentedGroup + * @type {string} + * @memberof ProductListing */ - 'isRepresenting'?: boolean; -} -/** - * - * @export - * @interface RequestInviteRequest - */ -export interface RequestInviteRequest { + 'id': string; /** * - * @type {number} - * @memberof RequestInviteRequest + * @type {string} + * @memberof ProductListing */ - 'messageSlot'?: number; -} -/** - * - * @export - * @interface RespondGroupJoinRequest - */ -export interface RespondGroupJoinRequest { + 'imageId': string; /** * - * @type {GroupJoinRequestAction} - * @memberof RespondGroupJoinRequest - */ - 'action': GroupJoinRequestAction; - /** - * Whether to block the user from requesting again * @type {boolean} - * @memberof RespondGroupJoinRequest + * @memberof ProductListing */ - 'block'?: boolean; -} -/** - * - * @export - * @interface Response - */ -export interface Response { + 'instant': boolean; /** * - * @type {string} - * @memberof Response + * @type {ProductListingType} + * @memberof ProductListing */ - 'message'?: string; + 'listingType': ProductListingType; /** * - * @type {number} - * @memberof Response + * @type {Array} + * @memberof ProductListing */ - 'status_code': number; -} -/** - * - * @export - * @interface SentNotification - */ -export interface SentNotification { + 'listingVariants': Array; /** * - * @type {string} - * @memberof SentNotification + * @type {boolean} + * @memberof ProductListing */ - 'created_at': string; + 'permanent': boolean; /** * - * @type {object} - * @memberof SentNotification + * @type {number} + * @memberof ProductListing */ - 'details': object; + 'priceTokens': number; /** * - * @type {string} - * @memberof SentNotification + * @type {Array} + * @memberof ProductListing */ - 'id': string; + 'productIds': Array; /** * - * @type {string} - * @memberof SentNotification - */ - 'message': string; - /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. - * @type {string} - * @memberof SentNotification - */ - 'receiverUserId': string; - /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. - * @type {string} - * @memberof SentNotification - */ - 'senderUserId': string; - /** - * -| **DEPRECATED:** VRChat API no longer return usernames of other users. [See issue by Tupper for more information](https://github.com/pypy-vrc/VRCX/issues/429). - * @type {string} - * @memberof SentNotification - * @deprecated + * @type {ProductType} + * @memberof ProductListing */ - 'senderUsername'?: string; + 'productType': ProductType; /** * - * @type {NotificationType} - * @memberof SentNotification + * @type {Array} + * @memberof ProductListing */ - 'type': NotificationType; -} -/** - * Statistics about the user\'s currently queued service request - * @export - * @interface ServiceQueueStats - */ -export interface ServiceQueueStats { + 'products': Array; /** * - * @type {number} - * @memberof ServiceQueueStats + * @type {boolean} + * @memberof ProductListing */ - 'estimatedServiceDurationSeconds': number; -} -/** - * Status information for a service request - * @export - * @interface ServiceStatus - */ -export interface ServiceStatus { + 'quantifiable'?: boolean; /** * - * @type {string} - * @memberof ServiceStatus - */ - 'created_at': string; - /** - * The id of this service, NOT the id of the thing this service was requested for. - * @type {string} - * @memberof ServiceStatus + * @type {boolean} + * @memberof ProductListing */ - 'id': string; + 'recurrable': boolean; /** * - * @type {Array} - * @memberof ServiceStatus + * @type {boolean} + * @memberof ProductListing */ - 'progress': Array; + 'refundable': boolean; /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * * @type {string} - * @memberof ServiceStatus + * @memberof ProductListing */ - 'requesterUserId': string; + 'sellerDisplayName': string; /** * * @type {string} - * @memberof ServiceStatus + * @memberof ProductListing */ - 'state': string; + 'sellerId': string; /** - * The id of the thing this service was requested for. - * @type {string} - * @memberof ServiceStatus + * + * @type {boolean} + * @memberof ProductListing */ - 'subjectId': string; + 'stackable': boolean; /** - * The kind of the thing this service was requested for. - * @type {string} - * @memberof ServiceStatus + * + * @type {Array} + * @memberof ProductListing */ - 'subjectType': string; + 'storeIds': Array; /** - * The kind of service that was requested. - * @type {string} - * @memberof ServiceStatus + * + * @type {Array} + * @memberof ProductListing */ - 'type': string; + 'tags': Array; /** * * @type {string} - * @memberof ServiceStatus + * @memberof ProductListing */ - 'updated_at': string; + 'updated': string | null; } /** * @@ -8752,2012 +8844,2647 @@ export interface ServiceStatus { * @enum {string} */ -export const SortOption = { - Popularity: 'popularity', - Heat: 'heat', - Trust: 'trust', - Shuffle: 'shuffle', - Random: 'random', - Favorites: 'favorites', - ReportScore: 'reportScore', - ReportCount: 'reportCount', - PublicationDate: 'publicationDate', - LabsPublicationDate: 'labsPublicationDate', - Created: 'created', - CreatedAt: '_created_at', - Updated: 'updated', - UpdatedAt: '_updated_at', - Order: 'order', - Relevance: 'relevance', - Magic: 'magic', - Name: 'name' +export const ProductListingType = { + Subscription: 'subscription' } as const; -export type SortOption = typeof SortOption[keyof typeof SortOption]; +export type ProductListingType = typeof ProductListingType[keyof typeof ProductListingType]; /** * * @export - * @interface Submission + * @interface ProductListingVariant */ -export interface Submission { +export interface ProductListingVariant { /** - * Either world ID or avatar ID + * * @type {string} - * @memberof Submission + * @memberof ProductListingVariant */ - 'contentId': string; + 'effectiveFrom'?: string; /** * * @type {string} - * @memberof Submission + * @memberof ProductListingVariant */ - 'created_at': string; + 'listingVariantId': string; /** * - * @type {string} - * @memberof Submission + * @type {boolean} + * @memberof ProductListingVariant */ - 'description': string; + 'nonRefundable': boolean; /** * - * @type {string} - * @memberof Submission + * @type {number} + * @memberof ProductListingVariant */ - 'id': string; + 'quantity': number; /** * - * @type {string} - * @memberof Submission + * @type {boolean} + * @memberof ProductListingVariant */ - 'jamId': string; + 'sellerVariant': boolean; /** * * @type {number} - * @memberof Submission - */ - 'ratingScore'?: number; - /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. - * @type {string} - * @memberof Submission + * @memberof ProductListingVariant */ - 'submitterId': string; + 'unitPriceTokens': number; } /** * * @export - * @interface Subscription + * @enum {string} */ -export interface Subscription { - /** + +export const ProductType = { + Listing: 'listing', + Role: 'role', + Udon: 'udon' +} as const; + +export type ProductType = typeof ProductType[keyof typeof ProductType]; + + +/** + * + * @export + * @interface Prop + */ +export interface Prop { + /** * * @type {string} - * @memberof Subscription + * @memberof Prop */ - 'id': string; + '_created_at': string; /** * * @type {string} - * @memberof Subscription + * @memberof Prop */ - 'steamItemId': string; + '_updated_at': string; /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof Subscription + * @memberof Prop */ - 'oculusSku'?: string; + 'authorId': string; /** * * @type {string} - * @memberof Subscription + * @memberof Prop */ - 'googleProductId'?: string; + 'authorName': string; /** * * @type {string} - * @memberof Subscription + * @memberof Prop */ - 'googlePlanId'?: string; + 'description': string; /** * * @type {string} - * @memberof Subscription + * @memberof Prop */ - 'picoSku'?: string; + 'id': string; /** * * @type {string} - * @memberof Subscription + * @memberof Prop */ - 'appleProductId'?: string; + 'imageUrl': string; /** * * @type {number} - * @memberof Subscription + * @memberof Prop */ - 'amount': number; + 'maxCountPerUser': number; /** * * @type {string} - * @memberof Subscription + * @memberof Prop */ - 'description': string; + 'name': string; /** * - * @type {SubscriptionPeriod} - * @memberof Subscription + * @type {ReleaseStatus} + * @memberof Prop */ - 'period': SubscriptionPeriod; + 'releaseStatus': ReleaseStatus; /** * * @type {number} - * @memberof Subscription - */ - 'tier': number; -} -/** - * - * @export - * @enum {string} - */ - -export const SubscriptionPeriod = { - Hour: 'hour', - Day: 'day', - Week: 'week', - Month: 'month', - Year: 'year' -} as const; - -export type SubscriptionPeriod = typeof SubscriptionPeriod[keyof typeof SubscriptionPeriod]; - - -/** - * - * @export - * @interface Success - */ -export interface Success { - /** - * - * @type {Response} - * @memberof Success + * @memberof Prop */ - 'success'?: Response; -} -/** - * - * @export - * @interface TiliaStatus - */ -export interface TiliaStatus { + 'spawnType': number; /** * - * @type {boolean} - * @memberof TiliaStatus + * @type {Array} + * @memberof Prop */ - 'economyOnline': boolean; + 'tags': Array; /** * - * @type {number} - * @memberof TiliaStatus + * @type {string} + * @memberof Prop */ - 'economyState'?: number; + 'thumbnailImageUrl': string; /** * * @type {string} - * @memberof TiliaStatus + * @memberof Prop */ - 'plannedOfflineWindowStart'?: string; + 'unityPackageUrl': string | null; /** * - * @type {string} - * @memberof TiliaStatus + * @type {Set} + * @memberof Prop */ - 'plannedOfflineWindowEnd'?: string; -} -/** - * - * @export - * @interface TiliaTOS - */ -export interface TiliaTOS { + 'unityPackages': Set; /** * - * @type {boolean} - * @memberof TiliaTOS + * @type {number} + * @memberof Prop */ - 'signed_tos': boolean; + 'worldPlacementMask': number; } /** * * @export - * @interface TokenBundle + * @interface PropUnityPackage */ -export interface TokenBundle { +export interface PropUnityPackage { /** * * @type {string} - * @memberof TokenBundle + * @memberof PropUnityPackage */ - 'id': string; + 'assetUrl': string; /** * - * @type {string} - * @memberof TokenBundle + * @type {number} + * @memberof PropUnityPackage */ - 'steamItemId': string; + 'assetVersion': number; /** * * @type {string} - * @memberof TokenBundle + * @memberof PropUnityPackage */ - 'oculusSku': string; + 'propSignature': string; /** - * + * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. * @type {string} - * @memberof TokenBundle - */ - 'googleProductId'?: string; - /** - * price of the bundle - * @type {number} - * @memberof TokenBundle + * @memberof PropUnityPackage */ - 'amount': number; + 'platform': string; /** * * @type {string} - * @memberof TokenBundle - */ - 'description': string; - /** - * number of tokens received - * @type {number} - * @memberof TokenBundle + * @memberof PropUnityPackage */ - 'tokens': number; + 'unityVersion': string; /** - * direct url to image + * * @type {string} - * @memberof TokenBundle + * @memberof PropUnityPackage */ - 'imageUrl': string; + 'variant': string; } +/** + * API/Photon region. + * @export + * @enum {string} + */ + +export const Region = { + Us: 'us', + Use: 'use', + Usw: 'usw', + Usx: 'usx', + Eu: 'eu', + Jp: 'jp', + Unknown: 'unknown' +} as const; + +export type Region = typeof Region[keyof typeof Region]; + + /** * * @export - * @interface Transaction + * @interface RegisterUserAccountRequest */ -export interface Transaction { +export interface RegisterUserAccountRequest { /** - * + * Display Name / Username (Username is a sanitized version) * @type {string} - * @memberof Transaction + * @memberof RegisterUserAccountRequest */ - 'id': string; + 'username': string; /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * Password * @type {string} - * @memberof Transaction + * @memberof RegisterUserAccountRequest */ - 'userId'?: string; + 'password': string; /** - * + * Email address * @type {string} - * @memberof Transaction - */ - 'userDisplayName'?: string; - /** - * - * @type {TransactionStatus} - * @memberof Transaction - */ - 'status': TransactionStatus; - /** - * - * @type {Subscription} - * @memberof Transaction - */ - 'subscription': Subscription; - /** - * - * @type {boolean} - * @memberof Transaction + * @memberof RegisterUserAccountRequest */ - 'sandbox': boolean; + 'email': string; /** - * + * Birth year * @type {string} - * @memberof Transaction + * @memberof RegisterUserAccountRequest */ - 'created_at': string; + 'year': string; /** - * + * Birth month of year * @type {string} - * @memberof Transaction - */ - 'updated_at': string; - /** - * - * @type {TransactionSteamInfo} - * @memberof Transaction + * @memberof RegisterUserAccountRequest */ - 'steam'?: TransactionSteamInfo; + 'month': string; /** - * - * @type {TransactionAgreement} - * @memberof Transaction + * Birth day of month + * @type {string} + * @memberof RegisterUserAccountRequest */ - 'agreement'?: TransactionAgreement; + 'day': string; /** - * + * Captcha code * @type {string} - * @memberof Transaction + * @memberof RegisterUserAccountRequest */ - 'error': string; + 'captchaCode': string; /** - * + * Whether to recieve promotional emails * @type {boolean} - * @memberof Transaction + * @memberof RegisterUserAccountRequest */ - 'isGift'?: boolean; + 'subscribe': boolean; /** - * - * @type {boolean} - * @memberof Transaction + * The most recent version of the TOS + * @type {number} + * @memberof RegisterUserAccountRequest */ - 'isTokens'?: boolean; + 'acceptedTOSVersion': number; } /** - * Represents a single Transaction, which is likely between VRChat and Steam. + * * @export - * @interface TransactionAgreement + * @enum {string} */ -export interface TransactionAgreement { + +export const ReleaseStatus = { + Public: 'public', + Private: 'private', + Hidden: 'hidden', + All: 'all' +} as const; + +export type ReleaseStatus = typeof ReleaseStatus[keyof typeof ReleaseStatus]; + + +/** + * A category used for reporting content + * @export + * @interface ReportCategory + */ +export interface ReportCategory { /** - * + * The description of the report category * @type {string} - * @memberof TransactionAgreement + * @memberof ReportCategory */ - 'agreementId': string; + 'description'?: string; /** - * - * @type {number} - * @memberof TransactionAgreement + * The title of the report category + * @type {string} + * @memberof ReportCategory */ - 'itemId': number; + 'title'?: string; /** - * + * The label of the report category * @type {string} - * @memberof TransactionAgreement + * @memberof ReportCategory */ - 'agreement': string; + 'text': string; /** - * This is NOT TransactionStatus, but whatever Steam return. + * The tooltip that describes the category * @type {string} - * @memberof TransactionAgreement + * @memberof ReportCategory */ - 'status': string; + 'tooltip': string; +} +/** + * A reason used for reporting users + * @export + * @interface ReportReason + */ +export interface ReportReason { /** - * + * The label or name of the report reason * @type {string} - * @memberof TransactionAgreement + * @memberof ReportReason */ - 'period': string; + 'text': string; + /** + * A brief explanation of what this reason entails + * @type {string} + * @memberof ReportReason + */ + 'tooltip': string; +} +/** + * + * @export + * @interface RepresentedGroup + */ +export interface RepresentedGroup { /** * - * @type {number} - * @memberof TransactionAgreement + * @type {string} + * @memberof RepresentedGroup */ - 'frequency': number; + 'name'?: string; /** * * @type {string} - * @memberof TransactionAgreement + * @memberof RepresentedGroup */ - 'billingType': string; + 'shortCode'?: string; /** * * @type {string} - * @memberof TransactionAgreement + * @memberof RepresentedGroup */ - 'startDate': string; + 'discriminator'?: string; /** * * @type {string} - * @memberof TransactionAgreement + * @memberof RepresentedGroup */ - 'endDate': string; + 'description'?: string; /** * - * @type {number} - * @memberof TransactionAgreement + * @type {string} + * @memberof RepresentedGroup */ - 'recurringAmt': number; + 'iconId'?: string | null; /** * * @type {string} - * @memberof TransactionAgreement + * @memberof RepresentedGroup */ - 'currency': string; + 'iconUrl'?: string | null; /** * * @type {string} - * @memberof TransactionAgreement + * @memberof RepresentedGroup */ - 'timeCreated': string; + 'bannerId'?: string | null; /** * * @type {string} - * @memberof TransactionAgreement + * @memberof RepresentedGroup */ - 'nextPayment': string; + 'bannerUrl'?: string | null; /** * + * @type {GroupPrivacy} + * @memberof RepresentedGroup + */ + 'privacy'?: GroupPrivacy; + /** + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof TransactionAgreement + * @memberof RepresentedGroup */ - 'lastPayment': string; + 'ownerId'?: string; /** * * @type {number} - * @memberof TransactionAgreement + * @memberof RepresentedGroup */ - 'lastAmount': number; + 'memberCount'?: number; /** * - * @type {number} - * @memberof TransactionAgreement + * @type {string} + * @memberof RepresentedGroup */ - 'lastAmountVat': number; + 'groupId'?: string; /** * - * @type {number} - * @memberof TransactionAgreement + * @type {GroupUserVisibility} + * @memberof RepresentedGroup */ - 'outstanding': number; + 'memberVisibility'?: GroupUserVisibility; /** * - * @type {number} - * @memberof TransactionAgreement + * @type {boolean} + * @memberof RepresentedGroup */ - 'failedAttempts': number; + 'isRepresenting'?: boolean; } /** * * @export - * @enum {string} + * @interface RequestInviteRequest */ - -export const TransactionStatus = { - Active: 'active', - Failed: 'failed', - Expired: 'expired', - Chargeback: 'chargeback' -} as const; - -export type TransactionStatus = typeof TransactionStatus[keyof typeof TransactionStatus]; - - +export interface RequestInviteRequest { + /** + * + * @type {number} + * @memberof RequestInviteRequest + */ + 'requestSlot'?: number; +} /** * * @export - * @interface TransactionSteamInfo + * @interface RespondGroupJoinRequest */ -export interface TransactionSteamInfo { +export interface RespondGroupJoinRequest { /** * - * @type {TransactionSteamWalletInfo} - * @memberof TransactionSteamInfo - */ - 'walletInfo': TransactionSteamWalletInfo; - /** - * Steam User ID - * @type {string} - * @memberof TransactionSteamInfo + * @type {GroupJoinRequestAction} + * @memberof RespondGroupJoinRequest */ - 'steamId': string; + 'action': GroupJoinRequestAction; /** - * Steam Order ID - * @type {string} - * @memberof TransactionSteamInfo + * Whether to block the user from requesting again + * @type {boolean} + * @memberof RespondGroupJoinRequest */ - 'orderId': string; + 'block'?: boolean; +} +/** + * + * @export + * @interface Response + */ +export interface Response { /** - * Empty + * * @type {string} - * @memberof TransactionSteamInfo + * @memberof Response */ - 'steamUrl': string; + 'message'?: string; /** - * Steam Transaction ID, NOT the same as VRChat TransactionID - * @type {string} - * @memberof TransactionSteamInfo + * + * @type {number} + * @memberof Response */ - 'transId': string; + 'status_code': number; } /** * * @export - * @interface TransactionSteamWalletInfo + * @interface SentNotification */ -export interface TransactionSteamWalletInfo { +export interface SentNotification { /** * * @type {string} - * @memberof TransactionSteamWalletInfo + * @memberof SentNotification */ - 'state': string; + 'created_at': string; /** * - * @type {string} - * @memberof TransactionSteamWalletInfo + * @type {object} + * @memberof SentNotification */ - 'country': string; + 'details': object; /** * * @type {string} - * @memberof TransactionSteamWalletInfo + * @memberof SentNotification */ - 'currency': string; + 'id': string; /** * * @type {string} - * @memberof TransactionSteamWalletInfo + * @memberof SentNotification */ - 'status': string; -} -/** - * - * @export - * @interface TwoFactorAuthCode - */ -export interface TwoFactorAuthCode { + 'message': string; /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof TwoFactorAuthCode + * @memberof SentNotification */ - 'code': string; -} -/** - * - * @export - * @interface TwoFactorEmailCode - */ -export interface TwoFactorEmailCode { + 'receiverUserId': string; /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof TwoFactorEmailCode + * @memberof SentNotification */ - 'code': string; -} -/** - * - * @export - * @interface TwoFactorRecoveryCodes - */ -export interface TwoFactorRecoveryCodes { + 'senderUserId': string; /** - * - * @type {Array} - * @memberof TwoFactorRecoveryCodes + * -| **DEPRECATED:** VRChat API no longer return usernames of other users. [See issue by Tupper for more information](https://github.com/pypy-vrc/VRCX/issues/429). + * @type {string} + * @memberof SentNotification + * @deprecated */ - 'requiresTwoFactorAuth'?: Array; + 'senderUsername'?: string; /** * - * @type {Array} - * @memberof TwoFactorRecoveryCodes + * @type {NotificationType} + * @memberof SentNotification */ - 'otp'?: Array; + 'type': NotificationType; } /** - * + * Statistics about the user\'s currently queued service request * @export - * @interface TwoFactorRecoveryCodesOtpInner + * @interface ServiceQueueStats */ -export interface TwoFactorRecoveryCodesOtpInner { - /** - * - * @type {string} - * @memberof TwoFactorRecoveryCodesOtpInner - */ - 'code': string; +export interface ServiceQueueStats { /** * - * @type {boolean} - * @memberof TwoFactorRecoveryCodesOtpInner + * @type {number} + * @memberof ServiceQueueStats */ - 'used': boolean; + 'estimatedServiceDurationSeconds': number; } /** - * + * Status information for a service request * @export - * @interface UnityPackage + * @interface ServiceStatus */ -export interface UnityPackage { +export interface ServiceStatus { /** * * @type {string} - * @memberof UnityPackage + * @memberof ServiceStatus */ - 'id': string; + 'created_at': string; /** - * + * The id of this service, NOT the id of the thing this service was requested for. * @type {string} - * @memberof UnityPackage + * @memberof ServiceStatus */ - 'assetUrl'?: string | null; + 'id': string; /** * - * @type {object} - * @memberof UnityPackage + * @type {Array} + * @memberof ServiceStatus */ - 'assetUrlObject'?: object; + 'progress': Array; /** - * - * @type {number} - * @memberof UnityPackage + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof ServiceStatus */ - 'assetVersion': number; + 'requesterUserId': string; /** * * @type {string} - * @memberof UnityPackage + * @memberof ServiceStatus */ - 'created_at'?: string; + 'state': string; /** - * + * The id of the thing this service was requested for. * @type {string} - * @memberof UnityPackage + * @memberof ServiceStatus */ - 'impostorizerVersion'?: string; + 'subjectId': string; /** - * - * @type {PerformanceRatings} - * @memberof UnityPackage + * The kind of the thing this service was requested for. + * @type {string} + * @memberof ServiceStatus */ - 'performanceRating'?: PerformanceRatings; + 'subjectType': string; /** - * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. + * The kind of service that was requested. * @type {string} - * @memberof UnityPackage + * @memberof ServiceStatus */ - 'platform': string; + 'type': string; /** * * @type {string} - * @memberof UnityPackage + * @memberof ServiceStatus */ - 'pluginUrl'?: string; + 'updated_at': string; +} +/** + * + * @export + * @enum {string} + */ + +export const SortOption = { + Popularity: 'popularity', + Heat: 'heat', + Trust: 'trust', + Shuffle: 'shuffle', + Random: 'random', + Favorites: 'favorites', + ReportScore: 'reportScore', + ReportCount: 'reportCount', + PublicationDate: 'publicationDate', + LabsPublicationDate: 'labsPublicationDate', + Created: 'created', + CreatedAt: '_created_at', + Updated: 'updated', + UpdatedAt: '_updated_at', + Order: 'order', + Relevance: 'relevance', + Magic: 'magic', + Name: 'name' +} as const; + +export type SortOption = typeof SortOption[keyof typeof SortOption]; + + +/** + * + * @export + * @interface Submission + */ +export interface Submission { /** - * - * @type {object} - * @memberof UnityPackage + * Either world ID or avatar ID + * @type {string} + * @memberof Submission */ - 'pluginUrlObject'?: object; + 'contentId': string; /** * - * @type {number} - * @memberof UnityPackage + * @type {string} + * @memberof Submission */ - 'unitySortNumber'?: number; + 'created_at': string; /** * * @type {string} - * @memberof UnityPackage + * @memberof Submission */ - 'unityVersion': string; + 'description': string; /** * * @type {string} - * @memberof UnityPackage + * @memberof Submission */ - 'worldSignature'?: string | null; + 'id': string; /** * * @type {string} - * @memberof UnityPackage + * @memberof Submission */ - 'impostorUrl'?: string | null; + 'jamId': string; /** * - * @type {string} - * @memberof UnityPackage + * @type {number} + * @memberof Submission */ - 'scanStatus'?: string; + 'ratingScore'?: number; /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof UnityPackage + * @memberof Submission */ - 'variant'?: string; + 'submitterId': string; } /** * * @export - * @interface UpdateAvatarRequest + * @interface Subscription */ -export interface UpdateAvatarRequest { +export interface Subscription { /** * * @type {string} - * @memberof UpdateAvatarRequest + * @memberof Subscription */ - 'assetUrl'?: string; + 'id': string; /** * * @type {string} - * @memberof UpdateAvatarRequest + * @memberof Subscription */ - 'id'?: string; + 'steamItemId': string; /** * * @type {string} - * @memberof UpdateAvatarRequest + * @memberof Subscription */ - 'name'?: string; + 'oculusSku'?: string; /** * * @type {string} - * @memberof UpdateAvatarRequest - */ - 'description'?: string; - /** - * - * @type {Array} - * @memberof UpdateAvatarRequest + * @memberof Subscription */ - 'tags'?: Array; + 'googleProductId'?: string; /** * * @type {string} - * @memberof UpdateAvatarRequest - */ - 'imageUrl'?: string; - /** - * - * @type {ReleaseStatus} - * @memberof UpdateAvatarRequest + * @memberof Subscription */ - 'releaseStatus'?: ReleaseStatus; + 'googlePlanId'?: string; /** * - * @type {number} - * @memberof UpdateAvatarRequest + * @type {string} + * @memberof Subscription */ - 'version'?: number; + 'picoSku'?: string; /** * * @type {string} - * @memberof UpdateAvatarRequest + * @memberof Subscription */ - 'unityPackageUrl'?: string; + 'appleProductId'?: string; /** * - * @type {string} - * @memberof UpdateAvatarRequest + * @type {number} + * @memberof Subscription */ - 'unityVersion'?: string; -} -/** - * - * @export - * @interface UpdateFavoriteGroupRequest - */ -export interface UpdateFavoriteGroupRequest { + 'amount': number; /** * * @type {string} - * @memberof UpdateFavoriteGroupRequest + * @memberof Subscription */ - 'displayName'?: string; + 'description': string; /** * - * @type {FavoriteGroupVisibility} - * @memberof UpdateFavoriteGroupRequest + * @type {SubscriptionPeriod} + * @memberof Subscription */ - 'visibility'?: FavoriteGroupVisibility; + 'period': SubscriptionPeriod; /** - * Tags on FavoriteGroups are believed to do nothing. - * @type {Array} - * @memberof UpdateFavoriteGroupRequest + * + * @type {number} + * @memberof Subscription */ - 'tags'?: Array; + 'tier': number; } /** * * @export - * @interface UpdateGroupGalleryRequest + * @enum {string} */ -export interface UpdateGroupGalleryRequest { - /** - * Name of the gallery. - * @type {string} - * @memberof UpdateGroupGalleryRequest - */ - 'name'?: string; - /** - * Description of the gallery. - * @type {string} - * @memberof UpdateGroupGalleryRequest - */ - 'description'?: string; - /** - * Whether the gallery is members only. - * @type {boolean} - * @memberof UpdateGroupGalleryRequest - */ - 'membersOnly'?: boolean; - /** - * - * @type {Array} - * @memberof UpdateGroupGalleryRequest - */ - 'roleIdsToView'?: Array | null; - /** - * - * @type {Array} - * @memberof UpdateGroupGalleryRequest - */ - 'roleIdsToSubmit'?: Array | null; - /** - * - * @type {Array} - * @memberof UpdateGroupGalleryRequest - */ - 'roleIdsToAutoApprove'?: Array | null; + +export const SubscriptionPeriod = { + Hour: 'hour', + Day: 'day', + Week: 'week', + Month: 'month', + Year: 'year' +} as const; + +export type SubscriptionPeriod = typeof SubscriptionPeriod[keyof typeof SubscriptionPeriod]; + + +/** + * + * @export + * @interface Success + */ +export interface Success { /** - * - * @type {Array} - * @memberof UpdateGroupGalleryRequest + * + * @type {Response} + * @memberof Success */ - 'roleIdsToManage'?: Array | null; + 'success'?: Response; } /** * * @export - * @interface UpdateGroupMemberRequest + * @interface TiliaStatus */ -export interface UpdateGroupMemberRequest { +export interface TiliaStatus { /** * - * @type {GroupUserVisibility} - * @memberof UpdateGroupMemberRequest + * @type {boolean} + * @memberof TiliaStatus */ - 'visibility'?: GroupUserVisibility; + 'economyOnline': boolean; /** * - * @type {boolean} - * @memberof UpdateGroupMemberRequest + * @type {number} + * @memberof TiliaStatus */ - 'isSubscribedToAnnouncements'?: boolean; + 'economyState'?: number; /** * * @type {string} - * @memberof UpdateGroupMemberRequest + * @memberof TiliaStatus */ - 'managerNotes'?: string; + 'plannedOfflineWindowStart'?: string; + /** + * + * @type {string} + * @memberof TiliaStatus + */ + 'plannedOfflineWindowEnd'?: string; } /** * * @export - * @interface UpdateGroupRepresentationRequest + * @interface TiliaTOS */ -export interface UpdateGroupRepresentationRequest { +export interface TiliaTOS { /** - * Whether the user is representing the group. + * * @type {boolean} - * @memberof UpdateGroupRepresentationRequest + * @memberof TiliaTOS */ - 'isRepresenting': boolean; + 'signed_tos': boolean; } /** * * @export - * @interface UpdateGroupRequest + * @interface TokenBundle */ -export interface UpdateGroupRequest { +export interface TokenBundle { /** * * @type {string} - * @memberof UpdateGroupRequest + * @memberof TokenBundle */ - 'name'?: string; + 'id': string; /** * * @type {string} - * @memberof UpdateGroupRequest + * @memberof TokenBundle */ - 'shortCode'?: string; + 'steamItemId': string; /** * * @type {string} - * @memberof UpdateGroupRequest + * @memberof TokenBundle */ - 'description'?: string; + 'oculusSku': string; /** * - * @type {GroupJoinState} - * @memberof UpdateGroupRequest + * @type {string} + * @memberof TokenBundle */ - 'joinState'?: GroupJoinState; + 'googleProductId'?: string; /** - * - * @type {string} - * @memberof UpdateGroupRequest + * price of the bundle + * @type {number} + * @memberof TokenBundle */ - 'iconId'?: string | null; + 'amount': number; /** * * @type {string} - * @memberof UpdateGroupRequest - */ - 'bannerId'?: string | null; - /** - * 3 letter language code - * @type {Array} - * @memberof UpdateGroupRequest + * @memberof TokenBundle */ - 'languages'?: Array; + 'description': string; /** - * - * @type {Array} - * @memberof UpdateGroupRequest + * number of tokens received + * @type {number} + * @memberof TokenBundle */ - 'links'?: Array; + 'tokens': number; /** - * + * direct url to image * @type {string} - * @memberof UpdateGroupRequest - */ - 'rules'?: string; - /** - * - * @type {Array} - * @memberof UpdateGroupRequest + * @memberof TokenBundle */ - 'tags'?: Array; + 'imageUrl': string; } /** * * @export - * @interface UpdateGroupRoleRequest + * @interface Transaction */ -export interface UpdateGroupRoleRequest { +export interface Transaction { /** * * @type {string} - * @memberof UpdateGroupRoleRequest + * @memberof Transaction */ - 'name'?: string; + 'id': string; /** - * + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof UpdateGroupRoleRequest - */ - 'description'?: string; - /** - * - * @type {boolean} - * @memberof UpdateGroupRoleRequest + * @memberof Transaction */ - 'isSelfAssignable'?: boolean; + 'userId'?: string; /** * - * @type {Array} - * @memberof UpdateGroupRoleRequest + * @type {string} + * @memberof Transaction */ - 'permissions'?: Array; + 'userDisplayName'?: string; /** * - * @type {number} - * @memberof UpdateGroupRoleRequest + * @type {TransactionStatus} + * @memberof Transaction */ - 'order'?: number; -} -/** - * - * @export - * @interface UpdateInviteMessageRequest - */ -export interface UpdateInviteMessageRequest { + 'status': TransactionStatus; /** * - * @type {string} - * @memberof UpdateInviteMessageRequest + * @type {Subscription} + * @memberof Transaction */ - 'message': string; -} -/** - * - * @export - * @interface UpdateUserBadgeRequest - */ -export interface UpdateUserBadgeRequest { + 'subscription': Subscription; /** * * @type {boolean} - * @memberof UpdateUserBadgeRequest + * @memberof Transaction */ - 'hidden'?: boolean; + 'sandbox': boolean; /** * - * @type {boolean} - * @memberof UpdateUserBadgeRequest - */ - 'showcased'?: boolean; -} -/** - * - * @export - * @interface UpdateUserNoteRequest - */ -export interface UpdateUserNoteRequest { - /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. * @type {string} - * @memberof UpdateUserNoteRequest + * @memberof Transaction */ - 'targetUserId': string; + 'created_at': string; /** * * @type {string} - * @memberof UpdateUserNoteRequest + * @memberof Transaction */ - 'note': string; -} -/** - * - * @export - * @interface UpdateUserRequest - */ -export interface UpdateUserRequest { + 'updated_at': string; /** * - * @type {string} - * @memberof UpdateUserRequest + * @type {TransactionSteamInfo} + * @memberof Transaction */ - 'email'?: string; + 'steam'?: TransactionSteamInfo; /** * - * @type {boolean} - * @memberof UpdateUserRequest + * @type {TransactionAgreement} + * @memberof Transaction */ - 'unsubscribe'?: boolean; + 'agreement'?: TransactionAgreement; /** * * @type {string} - * @memberof UpdateUserRequest + * @memberof Transaction */ - 'birthday'?: string; + 'error': string; /** * - * @type {number} - * @memberof UpdateUserRequest + * @type {boolean} + * @memberof Transaction */ - 'acceptedTOSVersion'?: number; - /** - * - * @type {Array} - * @memberof UpdateUserRequest - */ - 'tags'?: Array; - /** - * - * @type {UserStatus} - * @memberof UpdateUserRequest - */ - 'status'?: UserStatus; + 'isGift'?: boolean; /** * - * @type {string} - * @memberof UpdateUserRequest + * @type {boolean} + * @memberof Transaction */ - 'statusDescription'?: string; + 'isTokens'?: boolean; +} +/** + * Represents a single Transaction, which is likely between VRChat and Steam. + * @export + * @interface TransactionAgreement + */ +export interface TransactionAgreement { /** * * @type {string} - * @memberof UpdateUserRequest - */ - 'bio'?: string; - /** - * - * @type {Array} - * @memberof UpdateUserRequest + * @memberof TransactionAgreement */ - 'bioLinks'?: Array; + 'agreementId': string; /** * - * @type {string} - * @memberof UpdateUserRequest + * @type {number} + * @memberof TransactionAgreement */ - 'pronouns'?: string; + 'itemId': number; /** * - * @type {boolean} - * @memberof UpdateUserRequest - */ - 'isBoopingEnabled'?: boolean; - /** - * MUST be a valid VRChat /file/ url. - * @type {string} - * @memberof UpdateUserRequest - */ - 'userIcon'?: string; - /** - * These tags begin with `content_` and control content gating - * @type {Array} - * @memberof UpdateUserRequest - */ - 'contentFilters'?: Array; - /** - * MUST specify currentPassword as well to change display name * @type {string} - * @memberof UpdateUserRequest - */ - 'displayName'?: string; - /** - * MUST specify currentPassword as well to revert display name - * @type {boolean} - * @memberof UpdateUserRequest + * @memberof TransactionAgreement */ - 'revertDisplayName'?: boolean; + 'agreement': string; /** - * MUST specify currentPassword as well to change password + * This is NOT TransactionStatus, but whatever Steam return. * @type {string} - * @memberof UpdateUserRequest + * @memberof TransactionAgreement */ - 'password'?: string; + 'status': string; /** * * @type {string} - * @memberof UpdateUserRequest + * @memberof TransactionAgreement */ - 'currentPassword'?: string; -} -/** - * - * @export - * @interface UpdateWorldRequest - */ -export interface UpdateWorldRequest { + 'period': string; /** * - * @type {string} - * @memberof UpdateWorldRequest + * @type {number} + * @memberof TransactionAgreement */ - 'assetUrl'?: string; + 'frequency': number; /** * * @type {string} - * @memberof UpdateWorldRequest + * @memberof TransactionAgreement */ - 'assetVersion'?: string; + 'billingType': string; /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * * @type {string} - * @memberof UpdateWorldRequest + * @memberof TransactionAgreement */ - 'authorId'?: string; + 'startDate': string; /** * * @type {string} - * @memberof UpdateWorldRequest + * @memberof TransactionAgreement */ - 'authorName'?: string; + 'endDate': string; /** * * @type {number} - * @memberof UpdateWorldRequest + * @memberof TransactionAgreement */ - 'capacity'?: number; + 'recurringAmt': number; /** * * @type {string} - * @memberof UpdateWorldRequest + * @memberof TransactionAgreement */ - 'description'?: string; + 'currency': string; /** * * @type {string} - * @memberof UpdateWorldRequest + * @memberof TransactionAgreement */ - 'imageUrl'?: string; + 'timeCreated': string; /** * * @type {string} - * @memberof UpdateWorldRequest + * @memberof TransactionAgreement */ - 'name'?: string; + 'nextPayment': string; /** - * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. + * * @type {string} - * @memberof UpdateWorldRequest + * @memberof TransactionAgreement */ - 'platform'?: string; + 'lastPayment': string; /** * - * @type {ReleaseStatus} - * @memberof UpdateWorldRequest + * @type {number} + * @memberof TransactionAgreement */ - 'releaseStatus'?: ReleaseStatus; + 'lastAmount': number; /** - * - * @type {Array} - * @memberof UpdateWorldRequest + * + * @type {number} + * @memberof TransactionAgreement */ - 'tags'?: Array; + 'lastAmountVat': number; /** * - * @type {string} - * @memberof UpdateWorldRequest + * @type {number} + * @memberof TransactionAgreement */ - 'unityPackageUrl'?: string; + 'outstanding': number; /** * - * @type {string} - * @memberof UpdateWorldRequest + * @type {number} + * @memberof TransactionAgreement */ - 'unityVersion'?: string; + 'failedAttempts': number; } /** * * @export - * @interface User + * @enum {string} */ -export interface User { - /** - * - * @type {AgeVerificationStatus} - * @memberof User - */ - 'ageVerificationStatus': AgeVerificationStatus; - /** - * `true` if, user is age verified (not 18+). - * @type {boolean} - * @memberof User - */ - 'ageVerified': boolean; + +export const TransactionStatus = { + Active: 'active', + Failed: 'failed', + Expired: 'expired', + Chargeback: 'chargeback' +} as const; + +export type TransactionStatus = typeof TransactionStatus[keyof typeof TransactionStatus]; + + +/** + * + * @export + * @interface TransactionSteamInfo + */ +export interface TransactionSteamInfo { /** * - * @type {boolean} - * @memberof User - */ - 'allowAvatarCopying': boolean; - /** - * - * @type {Array} - * @memberof User + * @type {TransactionSteamWalletInfo} + * @memberof TransactionSteamInfo */ - 'badges'?: Array; + 'walletInfo': TransactionSteamWalletInfo; /** - * + * Steam User ID * @type {string} - * @memberof User - */ - 'bio': string; - /** - * - * @type {Array} - * @memberof User + * @memberof TransactionSteamInfo */ - 'bioLinks': Array; + 'steamId': string; /** - * When profilePicOverride is not empty, use it instead. + * Steam Order ID * @type {string} - * @memberof User + * @memberof TransactionSteamInfo */ - 'currentAvatarImageUrl': string; + 'orderId': string; /** - * When profilePicOverride is not empty, use it instead. + * Empty * @type {string} - * @memberof User + * @memberof TransactionSteamInfo */ - 'currentAvatarThumbnailImageUrl': string; + 'steamUrl': string; /** - * - * @type {Array} - * @memberof User + * Steam Transaction ID, NOT the same as VRChat TransactionID + * @type {string} + * @memberof TransactionSteamInfo */ - 'currentAvatarTags': Array; + 'transId': string; +} +/** + * + * @export + * @interface TransactionSteamWalletInfo + */ +export interface TransactionSteamWalletInfo { /** * * @type {string} - * @memberof User + * @memberof TransactionSteamWalletInfo */ - 'date_joined': string; + 'state': string; /** * - * @type {DeveloperType} - * @memberof User - */ - 'developerType': DeveloperType; - /** - * A users visual display name. This is what shows up in-game, and can different from their `username`. Changing display name is restricted to a cooldown period. * @type {string} - * @memberof User + * @memberof TransactionSteamWalletInfo */ - 'displayName': string; + 'country': string; /** * * @type {string} - * @memberof User + * @memberof TransactionSteamWalletInfo */ - 'friendKey': string; + 'currency': string; /** * * @type {string} - * @memberof User + * @memberof TransactionSteamWalletInfo */ - 'friendRequestStatus'?: string; + 'status': string; +} +/** + * + * @export + * @interface TwoFactorAuthCode + */ +export interface TwoFactorAuthCode { /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * * @type {string} - * @memberof User + * @memberof TwoFactorAuthCode */ - 'id': string; + 'code': string; +} +/** + * + * @export + * @interface TwoFactorEmailCode + */ +export interface TwoFactorEmailCode { /** - * InstanceID can be \"offline\" on User profiles if you are not friends with that user and \"private\" if you are friends and user is in private instance. + * * @type {string} - * @memberof User - */ - 'instanceId'?: string; - /** - * Either their `friendKey`, or empty string if you are not friends. Unknown usage. - * @type {boolean} - * @memberof User + * @memberof TwoFactorEmailCode */ - 'isFriend': boolean; + 'code': string; +} +/** + * + * @export + * @interface TwoFactorRecoveryCodes + */ +export interface TwoFactorRecoveryCodes { /** - * Either a date-time or empty string. - * @type {string} - * @memberof User + * + * @type {Array} + * @memberof TwoFactorRecoveryCodes */ - 'last_activity': string; + 'requiresTwoFactorAuth'?: Array; /** - * Either a date-time or empty string. - * @type {string} - * @memberof User + * + * @type {Array} + * @memberof TwoFactorRecoveryCodes */ - 'last_login': string; + 'otp'?: Array; +} +/** + * + * @export + * @interface TwoFactorRecoveryCodesOtpInner + */ +export interface TwoFactorRecoveryCodesOtpInner { /** * * @type {string} - * @memberof User + * @memberof TwoFactorRecoveryCodesOtpInner */ - 'last_mobile'?: string | null; + 'code': string; /** - * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. - * @type {string} - * @memberof User + * + * @type {boolean} + * @memberof TwoFactorRecoveryCodesOtpInner */ - 'last_platform': string; + 'used': boolean; +} +/** + * + * @export + * @interface UnityPackage + */ +export interface UnityPackage { /** - * WorldID be \"offline\" on User profiles if you are not friends with that user. + * * @type {string} - * @memberof User + * @memberof UnityPackage */ - 'location'?: string; + 'id': string; /** * * @type {string} - * @memberof User + * @memberof UnityPackage */ - 'note'?: string; + 'assetUrl'?: string | null; /** * - * @type {string} - * @memberof User + * @type {object} + * @memberof UnityPackage */ - 'platform'?: string; + 'assetUrlObject'?: object; /** * - * @type {string} - * @memberof User + * @type {number} + * @memberof UnityPackage */ - 'profilePicOverride': string; + 'assetVersion': number; /** * * @type {string} - * @memberof User + * @memberof UnityPackage */ - 'profilePicOverrideThumbnail': string; + 'created_at'?: string; /** * * @type {string} - * @memberof User + * @memberof UnityPackage */ - 'pronouns': string; + 'impostorizerVersion'?: string; /** * - * @type {UserState} - * @memberof User + * @type {PerformanceRatings} + * @memberof UnityPackage */ - 'state': UserState; + 'performanceRating'?: PerformanceRatings; /** - * - * @type {UserStatus} - * @memberof User + * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. + * @type {string} + * @memberof UnityPackage */ - 'status': UserStatus; + 'platform': string; /** * * @type {string} - * @memberof User + * @memberof UnityPackage */ - 'statusDescription': string; + 'pluginUrl'?: string; /** - * - * @type {Array} - * @memberof User + * + * @type {object} + * @memberof UnityPackage */ - 'tags': Array; + 'pluginUrlObject'?: object; /** * - * @type {string} - * @memberof User + * @type {number} + * @memberof UnityPackage */ - 'travelingToInstance'?: string; + 'unitySortNumber'?: number; /** * * @type {string} - * @memberof User + * @memberof UnityPackage */ - 'travelingToLocation'?: string; + 'unityVersion': string; /** * * @type {string} - * @memberof User + * @memberof UnityPackage */ - 'travelingToWorld'?: string; + 'worldSignature'?: string | null; /** * * @type {string} - * @memberof User + * @memberof UnityPackage */ - 'userIcon': string; + 'impostorUrl'?: string | null; /** - * -| A users unique name, used during login. This is different from `displayName` which is what shows up in-game. A users `username` can never be changed.\' **DEPRECATED:** VRChat API no longer return usernames of other users. [See issue by Tupper for more information](https://github.com/pypy-vrc/VRCX/issues/429). + * * @type {string} - * @memberof User - * @deprecated + * @memberof UnityPackage */ - 'username'?: string; + 'scanStatus'?: string; /** - * WorldID be \"offline\" on User profiles if you are not friends with that user. + * * @type {string} - * @memberof User + * @memberof UnityPackage */ - 'worldId'?: string; + 'variant'?: string; } /** - * Status object representing if a queried user by username or userId exists or not. This model is primarily used by the `/auth/exists` endpoint, which in turn is used during registration. Please see the documentation on that endpoint for more information on usage. + * * @export - * @interface UserExists + * @interface UpdateAvatarRequest */ -export interface UserExists { +export interface UpdateAvatarRequest { /** - * Status if a user exist with that username or userId. - * @type {boolean} - * @memberof UserExists + * + * @type {string} + * @memberof UpdateAvatarRequest */ - 'userExists': boolean; + 'assetUrl'?: string; /** - * Is the username valid? - * @type {boolean} - * @memberof UserExists + * + * @type {string} + * @memberof UpdateAvatarRequest */ - 'nameOk'?: boolean; -} -/** - * - * @export - * @interface UserNote - */ -export interface UserNote { + 'id'?: string; /** * * @type {string} - * @memberof UserNote + * @memberof UpdateAvatarRequest */ - 'createdAt': string; + 'name'?: string; /** * * @type {string} - * @memberof UserNote + * @memberof UpdateAvatarRequest */ - 'id': string; + 'description'?: string; + /** + * + * @type {Array} + * @memberof UpdateAvatarRequest + */ + 'tags'?: Array; /** * * @type {string} - * @memberof UserNote + * @memberof UpdateAvatarRequest */ - 'note': string; + 'imageUrl'?: string; /** * - * @type {UserNoteTargetUser} - * @memberof UserNote + * @type {ReleaseStatus} + * @memberof UpdateAvatarRequest */ - 'targetUser'?: UserNoteTargetUser; + 'releaseStatus'?: ReleaseStatus; /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * + * @type {number} + * @memberof UpdateAvatarRequest + */ + 'version'?: number; + /** + * * @type {string} - * @memberof UserNote + * @memberof UpdateAvatarRequest */ - 'targetUserId': string; + 'unityPackageUrl'?: string; /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * * @type {string} - * @memberof UserNote + * @memberof UpdateAvatarRequest */ - 'userId': string; + 'unityVersion'?: string; } /** * * @export - * @interface UserNoteTargetUser + * @interface UpdateFavoriteGroupRequest */ -export interface UserNoteTargetUser { +export interface UpdateFavoriteGroupRequest { /** * - * @type {Array} - * @memberof UserNoteTargetUser - */ - 'currentAvatarTags'?: Array; - /** - * When profilePicOverride is not empty, use it instead. * @type {string} - * @memberof UserNoteTargetUser + * @memberof UpdateFavoriteGroupRequest */ - 'currentAvatarThumbnailImageUrl'?: string; + 'displayName'?: string; /** * - * @type {string} - * @memberof UserNoteTargetUser + * @type {FavoriteGroupVisibility} + * @memberof UpdateFavoriteGroupRequest */ - 'displayName'?: string; + 'visibility'?: FavoriteGroupVisibility; /** - * - * @type {string} - * @memberof UserNoteTargetUser + * Tags on FavoriteGroups are believed to do nothing. + * @type {Array} + * @memberof UpdateFavoriteGroupRequest */ - 'id'?: string; + 'tags'?: Array; +} +/** + * + * @export + * @interface UpdateGroupGalleryRequest + */ +export interface UpdateGroupGalleryRequest { /** - * + * Name of the gallery. * @type {string} - * @memberof UserNoteTargetUser + * @memberof UpdateGroupGalleryRequest */ - 'profilePicOverride'?: string | null; + 'name'?: string; /** - * + * Description of the gallery. * @type {string} - * @memberof UserNoteTargetUser + * @memberof UpdateGroupGalleryRequest */ - 'userIcon'?: string; + 'description'?: string; + /** + * Whether the gallery is members only. + * @type {boolean} + * @memberof UpdateGroupGalleryRequest + */ + 'membersOnly'?: boolean; + /** + * + * @type {Array} + * @memberof UpdateGroupGalleryRequest + */ + 'roleIdsToView'?: Array | null; + /** + * + * @type {Array} + * @memberof UpdateGroupGalleryRequest + */ + 'roleIdsToSubmit'?: Array | null; + /** + * + * @type {Array} + * @memberof UpdateGroupGalleryRequest + */ + 'roleIdsToAutoApprove'?: Array | null; + /** + * + * @type {Array} + * @memberof UpdateGroupGalleryRequest + */ + 'roleIdsToManage'?: Array | null; } /** - * * \"online\" User is online in VRChat * \"active\" User is online, but not in VRChat * \"offline\" User is offline Always offline when returned through `getCurrentUser` (/auth/user). + * * @export - * @enum {string} + * @interface UpdateGroupMemberRequest */ - -export const UserState = { - Offline: 'offline', - Active: 'active', - Online: 'online' -} as const; - -export type UserState = typeof UserState[keyof typeof UserState]; - - +export interface UpdateGroupMemberRequest { + /** + * + * @type {GroupUserVisibility} + * @memberof UpdateGroupMemberRequest + */ + 'visibility'?: GroupUserVisibility; + /** + * + * @type {boolean} + * @memberof UpdateGroupMemberRequest + */ + 'isSubscribedToAnnouncements'?: boolean; + /** + * + * @type {string} + * @memberof UpdateGroupMemberRequest + */ + 'managerNotes'?: string; +} /** - * Defines the User\'s current status, for example \"ask me\", \"join me\" or \"offline. This status is a combined indicator of their online activity and privacy preference. + * * @export - * @enum {string} + * @interface UpdateGroupRepresentationRequest */ - -export const UserStatus = { - Active: 'active', - JoinMe: 'join me', - AskMe: 'ask me', - Busy: 'busy', - Offline: 'offline' -} as const; - -export type UserStatus = typeof UserStatus[keyof typeof UserStatus]; - - +export interface UpdateGroupRepresentationRequest { + /** + * Whether the user is representing the group. + * @type {boolean} + * @memberof UpdateGroupRepresentationRequest + */ + 'isRepresenting': boolean; +} /** * * @export - * @interface UserSubscription + * @interface UpdateGroupRequest */ -export interface UserSubscription { +export interface UpdateGroupRequest { /** * * @type {string} - * @memberof UserSubscription + * @memberof UpdateGroupRequest */ - 'id': string; + 'name'?: string; /** * * @type {string} - * @memberof UserSubscription - */ - 'transactionId': string; - /** - * Which \"Store\" it came from. Right now only Stores are \"Steam\" and \"Admin\". - * @type {string} - * @memberof UserSubscription + * @memberof UpdateGroupRequest */ - 'store': string; + 'shortCode'?: string; /** * * @type {string} - * @memberof UserSubscription + * @memberof UpdateGroupRequest */ - 'steamItemId'?: string; + 'description'?: string; /** * - * @type {number} - * @memberof UserSubscription + * @type {GroupJoinState} + * @memberof UpdateGroupRequest */ - 'amount': number; + 'joinState'?: GroupJoinState; /** * * @type {string} - * @memberof UserSubscription - */ - 'description': string; - /** - * - * @type {SubscriptionPeriod} - * @memberof UserSubscription + * @memberof UpdateGroupRequest */ - 'period': SubscriptionPeriod; + 'iconId'?: string | null; /** * - * @type {number} - * @memberof UserSubscription + * @type {string} + * @memberof UpdateGroupRequest */ - 'tier': number; + 'bannerId'?: string | null; /** - * - * @type {boolean} - * @memberof UserSubscription + * 3 letter language code + * @type {Array} + * @memberof UpdateGroupRequest */ - 'active': boolean; + 'languages'?: Array; /** * - * @type {TransactionStatus} - * @memberof UserSubscription + * @type {Array} + * @memberof UpdateGroupRequest */ - 'status': TransactionStatus; + 'links'?: Array; /** * * @type {string} - * @memberof UserSubscription + * @memberof UpdateGroupRequest */ - 'starts'?: string; + 'rules'?: string; /** - * - * @type {string} - * @memberof UserSubscription + * + * @type {Array} + * @memberof UpdateGroupRequest */ - 'expires': string; + 'tags'?: Array; +} +/** + * + * @export + * @interface UpdateGroupRoleRequest + */ +export interface UpdateGroupRoleRequest { /** * * @type {string} - * @memberof UserSubscription + * @memberof UpdateGroupRoleRequest */ - 'created_at': string; + 'name'?: string; /** * * @type {string} - * @memberof UserSubscription + * @memberof UpdateGroupRoleRequest */ - 'updated_at': string; + 'description'?: string; /** * - * @type {Array} - * @memberof UserSubscription + * @type {boolean} + * @memberof UpdateGroupRoleRequest */ - 'licenseGroups': Array; + 'isSelfAssignable'?: boolean; /** * - * @type {boolean} - * @memberof UserSubscription + * @type {Array} + * @memberof UpdateGroupRoleRequest */ - 'isGift': boolean; + 'permissions'?: Array; /** * - * @type {boolean} - * @memberof UserSubscription + * @type {number} + * @memberof UpdateGroupRoleRequest */ - 'isBulkGift': boolean; + 'order'?: number; } /** * * @export - * @interface Verify2FAEmailCodeResult + * @interface UpdateInviteMessageRequest */ -export interface Verify2FAEmailCodeResult { +export interface UpdateInviteMessageRequest { /** * - * @type {boolean} - * @memberof Verify2FAEmailCodeResult + * @type {string} + * @memberof UpdateInviteMessageRequest */ - 'verified': boolean; + 'message': string; } /** * * @export - * @interface Verify2FAResult + * @interface UpdateUserBadgeRequest */ -export interface Verify2FAResult { +export interface UpdateUserBadgeRequest { /** * * @type {boolean} - * @memberof Verify2FAResult + * @memberof UpdateUserBadgeRequest */ - 'verified': boolean; + 'hidden'?: boolean; /** * * @type {boolean} - * @memberof Verify2FAResult + * @memberof UpdateUserBadgeRequest */ - 'enabled'?: boolean; + 'showcased'?: boolean; } /** * * @export - * @interface VerifyAuthTokenResult + * @interface UpdateUserNoteRequest */ -export interface VerifyAuthTokenResult { +export interface UpdateUserNoteRequest { /** - * - * @type {boolean} - * @memberof VerifyAuthTokenResult + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof UpdateUserNoteRequest */ - 'ok': boolean; + 'targetUserId': string; /** * * @type {string} - * @memberof VerifyAuthTokenResult + * @memberof UpdateUserNoteRequest */ - 'token': string; + 'note': string; } /** * * @export - * @interface World + * @interface UpdateUserRequest */ -export interface World { +export interface UpdateUserRequest { /** - * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * * @type {string} - * @memberof World + * @memberof UpdateUserRequest */ - 'authorId': string; + 'email'?: string; /** * - * @type {string} - * @memberof World + * @type {boolean} + * @memberof UpdateUserRequest */ - 'authorName': string; + 'unsubscribe'?: boolean; /** * - * @type {number} - * @memberof World + * @type {string} + * @memberof UpdateUserRequest */ - 'capacity': number; + 'birthday'?: string; /** * * @type {number} - * @memberof World + * @memberof UpdateUserRequest */ - 'recommendedCapacity': number; + 'acceptedTOSVersion'?: number; + /** + * + * @type {Array} + * @memberof UpdateUserRequest + */ + 'tags'?: Array; /** * - * @type {string} - * @memberof World + * @type {UserStatus} + * @memberof UpdateUserRequest */ - 'created_at': string; + 'status'?: UserStatus; /** * - * @type {InstanceContentSettings} - * @memberof World + * @type {string} + * @memberof UpdateUserRequest */ - 'defaultContentSettings'?: InstanceContentSettings; + 'statusDescription'?: string; /** * * @type {string} - * @memberof World + * @memberof UpdateUserRequest */ - 'description': string; + 'bio'?: string; /** * - * @type {number} - * @memberof World + * @type {Array} + * @memberof UpdateUserRequest */ - 'favorites'?: number; + 'bioLinks'?: Array; /** * - * @type {boolean} - * @memberof World + * @type {string} + * @memberof UpdateUserRequest */ - 'featured': boolean; + 'pronouns'?: string; /** * - * @type {number} - * @memberof World + * @type {boolean} + * @memberof UpdateUserRequest */ - 'heat': number; + 'isBoopingEnabled'?: boolean; /** - * WorldID be \"offline\" on User profiles if you are not friends with that user. + * MUST be a valid VRChat /file/ url. * @type {string} - * @memberof World + * @memberof UpdateUserRequest */ - 'id': string; + 'userIcon'?: string; /** - * + * These tags begin with `content_` and control content gating + * @type {Array} + * @memberof UpdateUserRequest + */ + 'contentFilters'?: Array; + /** + * MUST specify currentPassword as well to change display name * @type {string} - * @memberof World + * @memberof UpdateUserRequest */ - 'imageUrl': string; + 'displayName'?: string; /** - * Will always be an empty list when unauthenticated. - * @type {Array>} - * @memberof World + * MUST specify currentPassword as well to revert display name + * @type {boolean} + * @memberof UpdateUserRequest */ - 'instances'?: Array>; + 'revertDisplayName'?: boolean; + /** + * MUST specify currentPassword as well to change password + * @type {string} + * @memberof UpdateUserRequest + */ + 'password'?: string; /** * * @type {string} - * @memberof World + * @memberof UpdateUserRequest */ - 'labsPublicationDate': string; + 'currentPassword'?: string; +} +/** + * + * @export + * @interface UpdateWorldRequest + */ +export interface UpdateWorldRequest { /** * * @type {string} - * @memberof World + * @memberof UpdateWorldRequest */ - 'name': string; + 'assetUrl'?: string; /** * * @type {string} - * @memberof World + * @memberof UpdateWorldRequest */ - 'namespace'?: string; + 'assetVersion'?: string; /** - * Will always be `0` when unauthenticated. - * @type {number} - * @memberof World + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof UpdateWorldRequest */ - 'occupants'?: number; + 'authorId'?: string; /** * * @type {string} - * @memberof World + * @memberof UpdateWorldRequest */ - 'organization': string; + 'authorName'?: string; /** * * @type {number} - * @memberof World + * @memberof UpdateWorldRequest */ - 'popularity': number; + 'capacity'?: number; /** * * @type {string} - * @memberof World - */ - 'previewYoutubeId'?: string | null; - /** - * Will always be `0` when unauthenticated. - * @type {number} - * @memberof World + * @memberof UpdateWorldRequest */ - 'privateOccupants'?: number; + 'description'?: string; /** - * Will always be `0` when unauthenticated. - * @type {number} - * @memberof World + * + * @type {string} + * @memberof UpdateWorldRequest */ - 'publicOccupants'?: number; + 'imageUrl'?: string; /** * * @type {string} - * @memberof World + * @memberof UpdateWorldRequest */ - 'publicationDate': string; + 'name'?: string; /** - * - * @type {ReleaseStatus} - * @memberof World + * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. + * @type {string} + * @memberof UpdateWorldRequest */ - 'releaseStatus': ReleaseStatus; + 'platform'?: string; /** * - * @type {string} - * @memberof World + * @type {ReleaseStatus} + * @memberof UpdateWorldRequest */ - 'storeId'?: string; + 'releaseStatus'?: ReleaseStatus; /** * * @type {Array} - * @memberof World + * @memberof UpdateWorldRequest */ - 'tags': Array; + 'tags'?: Array; /** * * @type {string} - * @memberof World - */ - 'thumbnailImageUrl': string; - /** - * Empty if unauthenticated. - * @type {Array} - * @memberof World + * @memberof UpdateWorldRequest */ - 'unityPackages'?: Array; + 'unityPackageUrl'?: string; /** * * @type {string} - * @memberof World + * @memberof UpdateWorldRequest */ - 'updated_at': string; + 'unityVersion'?: string; +} +/** + * + * @export + * @interface User + */ +export interface User { /** * - * @type {Array} - * @memberof World + * @type {AgeVerificationStatus} + * @memberof User */ - 'urlList'?: Array; + 'ageVerificationStatus': AgeVerificationStatus; + /** + * `true` if, user is age verified (not 18+). + * @type {boolean} + * @memberof User + */ + 'ageVerified': boolean; /** * - * @type {number} - * @memberof World + * @type {boolean} + * @memberof User */ - 'version': number; + 'allowAvatarCopying': boolean; + /** + * + * @type {Array} + * @memberof User + */ + 'badges'?: Array; /** * - * @type {number} - * @memberof World + * @type {string} + * @memberof User */ - 'visits': number; + 'bio': string; /** * * @type {Array} - * @memberof World + * @memberof User */ - 'udonProducts'?: Array; -} -/** - * - * @export - * @interface WorldMetadata - */ -export interface WorldMetadata { + 'bioLinks': Array; /** - * WorldID be \"offline\" on User profiles if you are not friends with that user. + * When profilePicOverride is not empty, use it instead. * @type {string} - * @memberof WorldMetadata + * @memberof User */ - 'id': string; + 'currentAvatarImageUrl': string; /** - * - * @type {object} - * @memberof WorldMetadata + * When profilePicOverride is not empty, use it instead. + * @type {string} + * @memberof User */ - 'metadata': object; -} -/** + 'currentAvatarThumbnailImageUrl': string; + /** + * + * @type {Array} + * @memberof User + */ + 'currentAvatarTags': Array; + /** + * + * @type {string} + * @memberof User + */ + 'date_joined': string; + /** + * + * @type {DeveloperType} + * @memberof User + */ + 'developerType': DeveloperType; + /** + * A users visual display name. This is what shows up in-game, and can different from their `username`. Changing display name is restricted to a cooldown period. + * @type {string} + * @memberof User + */ + 'displayName': string; + /** + * + * @type {string} + * @memberof User + */ + 'friendKey': string; + /** + * + * @type {string} + * @memberof User + */ + 'friendRequestStatus'?: string; + /** + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof User + */ + 'id': string; + /** + * InstanceID can be \"offline\" on User profiles if you are not friends with that user and \"private\" if you are friends and user is in private instance. + * @type {string} + * @memberof User + */ + 'instanceId'?: string; + /** + * Either their `friendKey`, or empty string if you are not friends. Unknown usage. + * @type {boolean} + * @memberof User + */ + 'isFriend': boolean; + /** + * Either a date-time or empty string. + * @type {string} + * @memberof User + */ + 'last_activity': string; + /** + * Either a date-time or empty string. + * @type {string} + * @memberof User + */ + 'last_login': string; + /** + * + * @type {string} + * @memberof User + */ + 'last_mobile'?: string | null; + /** + * This can be `standalonewindows` or `android`, but can also pretty much be any random Unity verison such as `2019.2.4-801-Release` or `2019.2.2-772-Release` or even `unknownplatform`. + * @type {string} + * @memberof User + */ + 'last_platform': string; + /** + * WorldID be \"offline\" on User profiles if you are not friends with that user. + * @type {string} + * @memberof User + */ + 'location'?: string; + /** + * + * @type {string} + * @memberof User + */ + 'note'?: string; + /** + * + * @type {string} + * @memberof User + */ + 'platform'?: string; + /** + * + * @type {string} + * @memberof User + */ + 'profilePicOverride': string; + /** + * + * @type {string} + * @memberof User + */ + 'profilePicOverrideThumbnail': string; + /** + * + * @type {string} + * @memberof User + */ + 'pronouns': string; + /** + * + * @type {UserState} + * @memberof User + */ + 'state': UserState; + /** + * + * @type {UserStatus} + * @memberof User + */ + 'status': UserStatus; + /** + * + * @type {string} + * @memberof User + */ + 'statusDescription': string; + /** + * + * @type {Array} + * @memberof User + */ + 'tags': Array; + /** + * + * @type {string} + * @memberof User + */ + 'travelingToInstance'?: string; + /** + * + * @type {string} + * @memberof User + */ + 'travelingToLocation'?: string; + /** + * + * @type {string} + * @memberof User + */ + 'travelingToWorld'?: string; + /** + * + * @type {string} + * @memberof User + */ + 'userIcon': string; + /** + * -| A users unique name, used during login. This is different from `displayName` which is what shows up in-game. A users `username` can never be changed.\' **DEPRECATED:** VRChat API no longer return usernames of other users. [See issue by Tupper for more information](https://github.com/pypy-vrc/VRCX/issues/429). + * @type {string} + * @memberof User + * @deprecated + */ + 'username'?: string; + /** + * WorldID be \"offline\" on User profiles if you are not friends with that user. + * @type {string} + * @memberof User + */ + 'worldId'?: string; +} +/** + * Status object representing if a queried user by username or userId exists or not. This model is primarily used by the `/auth/exists` endpoint, which in turn is used during registration. Please see the documentation on that endpoint for more information on usage. + * @export + * @interface UserExists + */ +export interface UserExists { + /** + * Status if a user exist with that username or userId. + * @type {boolean} + * @memberof UserExists + */ + 'userExists': boolean; + /** + * Is the username valid? + * @type {boolean} + * @memberof UserExists + */ + 'nameOk'?: boolean; +} +/** + * + * @export + * @interface UserNote + */ +export interface UserNote { + /** + * + * @type {string} + * @memberof UserNote + */ + 'createdAt': string; + /** + * + * @type {string} + * @memberof UserNote + */ + 'id': string; + /** + * + * @type {string} + * @memberof UserNote + */ + 'note': string; + /** + * + * @type {UserNoteTargetUser} + * @memberof UserNote + */ + 'targetUser'?: UserNoteTargetUser; + /** + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof UserNote + */ + 'targetUserId': string; + /** + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof UserNote + */ + 'userId': string; +} +/** + * + * @export + * @interface UserNoteTargetUser + */ +export interface UserNoteTargetUser { + /** + * + * @type {Array} + * @memberof UserNoteTargetUser + */ + 'currentAvatarTags'?: Array; + /** + * When profilePicOverride is not empty, use it instead. + * @type {string} + * @memberof UserNoteTargetUser + */ + 'currentAvatarThumbnailImageUrl'?: string; + /** + * + * @type {string} + * @memberof UserNoteTargetUser + */ + 'displayName'?: string; + /** + * + * @type {string} + * @memberof UserNoteTargetUser + */ + 'id'?: string; + /** + * + * @type {string} + * @memberof UserNoteTargetUser + */ + 'profilePicOverride'?: string | null; + /** + * + * @type {string} + * @memberof UserNoteTargetUser + */ + 'userIcon'?: string; +} +/** + * * \"online\" User is online in VRChat * \"active\" User is online, but not in VRChat * \"offline\" User is offline Always offline when returned through `getCurrentUser` (/auth/user). + * @export + * @enum {string} + */ + +export const UserState = { + Offline: 'offline', + Active: 'active', + Online: 'online' +} as const; + +export type UserState = typeof UserState[keyof typeof UserState]; + + +/** + * Defines the User\'s current status, for example \"ask me\", \"join me\" or \"offline. This status is a combined indicator of their online activity and privacy preference. + * @export + * @enum {string} + */ + +export const UserStatus = { + Active: 'active', + JoinMe: 'join me', + AskMe: 'ask me', + Busy: 'busy', + Offline: 'offline' +} as const; + +export type UserStatus = typeof UserStatus[keyof typeof UserStatus]; + + +/** + * + * @export + * @interface UserSubscription + */ +export interface UserSubscription { + /** + * + * @type {string} + * @memberof UserSubscription + */ + 'id': string; + /** + * + * @type {string} + * @memberof UserSubscription + */ + 'transactionId': string; + /** + * Which \"Store\" it came from. Right now only Stores are \"Steam\" and \"Admin\". + * @type {string} + * @memberof UserSubscription + */ + 'store': string; + /** + * + * @type {string} + * @memberof UserSubscription + */ + 'steamItemId'?: string; + /** + * + * @type {number} + * @memberof UserSubscription + */ + 'amount': number; + /** + * + * @type {string} + * @memberof UserSubscription + */ + 'description': string; + /** + * + * @type {SubscriptionPeriod} + * @memberof UserSubscription + */ + 'period': SubscriptionPeriod; + /** + * + * @type {number} + * @memberof UserSubscription + */ + 'tier': number; + /** + * + * @type {boolean} + * @memberof UserSubscription + */ + 'active': boolean; + /** + * + * @type {TransactionStatus} + * @memberof UserSubscription + */ + 'status': TransactionStatus; + /** + * + * @type {string} + * @memberof UserSubscription + */ + 'starts'?: string; + /** + * + * @type {string} + * @memberof UserSubscription + */ + 'expires': string; + /** + * + * @type {string} + * @memberof UserSubscription + */ + 'created_at': string; + /** + * + * @type {string} + * @memberof UserSubscription + */ + 'updated_at': string; + /** + * + * @type {Array} + * @memberof UserSubscription + */ + 'licenseGroups': Array; + /** + * + * @type {boolean} + * @memberof UserSubscription + */ + 'isGift': boolean; + /** + * + * @type {boolean} + * @memberof UserSubscription + */ + 'isBulkGift': boolean; +} +/** + * + * @export + * @interface Verify2FAEmailCodeResult + */ +export interface Verify2FAEmailCodeResult { + /** + * + * @type {boolean} + * @memberof Verify2FAEmailCodeResult + */ + 'verified': boolean; +} +/** + * + * @export + * @interface Verify2FAResult + */ +export interface Verify2FAResult { + /** + * + * @type {boolean} + * @memberof Verify2FAResult + */ + 'verified': boolean; + /** + * + * @type {boolean} + * @memberof Verify2FAResult + */ + 'enabled'?: boolean; +} +/** + * + * @export + * @interface VerifyAuthTokenResult + */ +export interface VerifyAuthTokenResult { + /** + * + * @type {boolean} + * @memberof VerifyAuthTokenResult + */ + 'ok': boolean; + /** + * + * @type {string} + * @memberof VerifyAuthTokenResult + */ + 'token': string; +} +/** + * + * @export + * @interface World + */ +export interface World { + /** + * A users unique ID, usually in the form of `usr_c1644b5b-3ca4-45b4-97c6-a2a0de70d469`. Legacy players can have old IDs in the form of `8JoV9XEdpo`. The ID can never be changed. + * @type {string} + * @memberof World + */ + 'authorId': string; + /** + * + * @type {string} + * @memberof World + */ + 'authorName': string; + /** + * + * @type {number} + * @memberof World + */ + 'capacity': number; + /** + * + * @type {number} + * @memberof World + */ + 'recommendedCapacity': number; + /** + * + * @type {string} + * @memberof World + */ + 'created_at': string; + /** + * + * @type {InstanceContentSettings} + * @memberof World + */ + 'defaultContentSettings'?: InstanceContentSettings; + /** + * + * @type {string} + * @memberof World + */ + 'description': string; + /** + * + * @type {number} + * @memberof World + */ + 'favorites'?: number; + /** + * + * @type {boolean} + * @memberof World + */ + 'featured': boolean; + /** + * + * @type {number} + * @memberof World + */ + 'heat': number; + /** + * WorldID be \"offline\" on User profiles if you are not friends with that user. + * @type {string} + * @memberof World + */ + 'id': string; + /** + * + * @type {string} + * @memberof World + */ + 'imageUrl': string; + /** + * Will always be an empty list when unauthenticated. + * @type {Array>} + * @memberof World + */ + 'instances'?: Array>; + /** + * + * @type {string} + * @memberof World + */ + 'labsPublicationDate': string; + /** + * + * @type {string} + * @memberof World + */ + 'name': string; + /** + * + * @type {string} + * @memberof World + */ + 'namespace'?: string; + /** + * Will always be `0` when unauthenticated. + * @type {number} + * @memberof World + */ + 'occupants'?: number; + /** + * + * @type {string} + * @memberof World + */ + 'organization': string; + /** + * + * @type {number} + * @memberof World + */ + 'popularity': number; + /** + * + * @type {string} + * @memberof World + */ + 'previewYoutubeId'?: string | null; + /** + * Will always be `0` when unauthenticated. + * @type {number} + * @memberof World + */ + 'privateOccupants'?: number; + /** + * Will always be `0` when unauthenticated. + * @type {number} + * @memberof World + */ + 'publicOccupants'?: number; + /** + * + * @type {string} + * @memberof World + */ + 'publicationDate': string; + /** + * + * @type {ReleaseStatus} + * @memberof World + */ + 'releaseStatus': ReleaseStatus; + /** + * + * @type {string} + * @memberof World + */ + 'storeId'?: string; + /** + * + * @type {Array} + * @memberof World + */ + 'tags': Array; + /** + * + * @type {string} + * @memberof World + */ + 'thumbnailImageUrl': string; + /** + * Empty if unauthenticated. + * @type {Array} + * @memberof World + */ + 'unityPackages'?: Array; + /** + * + * @type {string} + * @memberof World + */ + 'updated_at': string; + /** + * + * @type {Array} + * @memberof World + */ + 'urlList'?: Array; + /** + * + * @type {number} + * @memberof World + */ + 'version': number; + /** + * + * @type {number} + * @memberof World + */ + 'visits': number; + /** + * + * @type {Array} + * @memberof World + */ + 'udonProducts'?: Array; +} +/** + * + * @export + * @interface WorldMetadata + */ +export interface WorldMetadata { + /** + * WorldID be \"offline\" on User profiles if you are not friends with that user. + * @type {string} + * @memberof WorldMetadata + */ + 'id': string; + /** + * + * @type {object} + * @memberof WorldMetadata + */ + 'metadata': object; +} +/** * * @export * @interface WorldPublishStatus @@ -12164,6 +12891,36 @@ export const AvatarsApiAxiosParamCreator = function (configuration?: Configurati + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * List avatar styles. + * @summary Get Avatar Styles + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getAvatarStyles: async (options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/avatarStyles`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -12655,6 +13412,16 @@ export const AvatarsApiFp = function(configuration?: Configuration) { const localVarAxiosArgs = await localVarAxiosParamCreator.getAvatar(avatarId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, + /** + * List avatar styles. + * @summary Get Avatar Styles + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getAvatarStyles(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getAvatarStyles(options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** * Search and list favorited avatars by query filters. * @summary List Favorited Avatars @@ -12829,6 +13596,15 @@ export const AvatarsApiFactory = function (configuration?: Configuration, basePa getAvatar(avatarId: string, options?: any): AxiosPromise { return localVarFp.getAvatar(avatarId, options).then((request) => request(axios, basePath)); }, + /** + * List avatar styles. + * @summary Get Avatar Styles + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getAvatarStyles(options?: any): AxiosPromise> { + return localVarFp.getAvatarStyles(options).then((request) => request(axios, basePath)); + }, /** * Search and list favorited avatars by query filters. * @summary List Favorited Avatars @@ -13005,6 +13781,17 @@ export class AvatarsApi extends BaseAPI { return AvatarsApiFp(this.configuration).getAvatar(avatarId, options).then((request) => request(this.axios, this.basePath)); } + /** + * List avatar styles. + * @summary Get Avatar Styles + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AvatarsApi + */ + public getAvatarStyles(options?: AxiosRequestConfig) { + return AvatarsApiFp(this.configuration).getAvatarStyles(options).then((request) => request(this.axios, this.basePath)); + } + /** * Search and list favorited avatars by query filters. * @summary List Favorited Avatars @@ -13288,7 +14075,7 @@ export const EconomyApiAxiosParamCreator = function (configuration?: Configurati * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {boolean} [hydrate] Populates some fields and changes types of others for certain objects. * @param {string} [groupId] Must be a valid group ID. - * @param {boolean} [active] Filter for users\' listings. + * @param {boolean} [active] Filter for users\' listings and inventory bundles. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -13604,7 +14391,7 @@ export const EconomyApiFp = function(configuration?: Configuration) { * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {boolean} [hydrate] Populates some fields and changes types of others for certain objects. * @param {string} [groupId] Must be a valid group ID. - * @param {boolean} [active] Filter for users\' listings. + * @param {boolean} [active] Filter for users\' listings and inventory bundles. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -13733,7 +14520,7 @@ export const EconomyApiFactory = function (configuration?: Configuration, basePa * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {boolean} [hydrate] Populates some fields and changes types of others for certain objects. * @param {string} [groupId] Must be a valid group ID. - * @param {boolean} [active] Filter for users\' listings. + * @param {boolean} [active] Filter for users\' listings and inventory bundles. * @param {*} [options] Override http request option. * @throws {RequiredError} */ @@ -13863,7 +14650,7 @@ export class EconomyApi extends BaseAPI { * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {boolean} [hydrate] Populates some fields and changes types of others for certain objects. * @param {string} [groupId] Must be a valid group ID. - * @param {boolean} [active] Filter for users\' listings. + * @param {boolean} [active] Filter for users\' listings and inventory bundles. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof EconomyApi @@ -14871,6 +15658,42 @@ export const FilesApiAxiosParamCreator = function (configuration?: Configuration options: localVarRequestOptions, }; }, + /** + * Returns an AdminAssetBundle + * @summary Get AdminAssetBundle + * @param {string} adminAssetBundleId Must be a valid admin asset bundle ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getAdminAssetBundle: async (adminAssetBundleId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'adminAssetBundleId' is not null or undefined + assertParamExists('getAdminAssetBundle', 'adminAssetBundleId', adminAssetBundleId) + const localVarPath = `/adminassetbundles/{adminAssetBundleId}` + .replace(`{${"adminAssetBundleId"}}`, encodeURIComponent(String(adminAssetBundleId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, /** * Shows general information about the \"File\" object. Each File can have several \"Version\"\'s, and each Version can have multiple real files or \"Data\" blobs. * @summary Show File @@ -15410,6 +16233,17 @@ export const FilesApiFp = function(configuration?: Configuration) { const localVarAxiosArgs = await localVarAxiosParamCreator.finishFileDataUpload(fileId, versionId, fileType, finishFileDataUploadRequest, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, + /** + * Returns an AdminAssetBundle + * @summary Get AdminAssetBundle + * @param {string} adminAssetBundleId Must be a valid admin asset bundle ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getAdminAssetBundle(adminAssetBundleId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getAdminAssetBundle(adminAssetBundleId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** * Shows general information about the \"File\" object. Each File can have several \"Version\"\'s, and each Version can have multiple real files or \"Data\" blobs. * @summary Show File @@ -15612,6 +16446,16 @@ export const FilesApiFactory = function (configuration?: Configuration, basePath finishFileDataUpload(fileId: string, versionId: number, fileType: 'file' | 'signature' | 'delta', finishFileDataUploadRequest?: FinishFileDataUploadRequest, options?: any): AxiosPromise { return localVarFp.finishFileDataUpload(fileId, versionId, fileType, finishFileDataUploadRequest, options).then((request) => request(axios, basePath)); }, + /** + * Returns an AdminAssetBundle + * @summary Get AdminAssetBundle + * @param {string} adminAssetBundleId Must be a valid admin asset bundle ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getAdminAssetBundle(adminAssetBundleId: string, options?: any): AxiosPromise { + return localVarFp.getAdminAssetBundle(adminAssetBundleId, options).then((request) => request(axios, basePath)); + }, /** * Shows general information about the \"File\" object. Each File can have several \"Version\"\'s, and each Version can have multiple real files or \"Data\" blobs. * @summary Show File @@ -15816,6 +16660,18 @@ export class FilesApi extends BaseAPI { return FilesApiFp(this.configuration).finishFileDataUpload(fileId, versionId, fileType, finishFileDataUploadRequest, options).then((request) => request(this.axios, this.basePath)); } + /** + * Returns an AdminAssetBundle + * @summary Get AdminAssetBundle + * @param {string} adminAssetBundleId Must be a valid admin asset bundle ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof FilesApi + */ + public getAdminAssetBundle(adminAssetBundleId: string, options?: AxiosRequestConfig) { + return FilesApiFp(this.configuration).getAdminAssetBundle(adminAssetBundleId, options).then((request) => request(this.axios, this.basePath)); + } + /** * Shows general information about the \"File\" object. Each File can have several \"Version\"\'s, and each Version can have multiple real files or \"Data\" blobs. * @summary Show File @@ -19762,168 +20618,586 @@ export class GroupsApi extends BaseAPI { } /** - * Removes a Role from a Group Member - * @summary Remove Role from GroupMember + * Removes a Role from a Group Member + * @summary Remove Role from GroupMember + * @param {string} groupId Must be a valid group ID. + * @param {string} userId Must be a valid user ID. + * @param {string} groupRoleId Must be a valid group role ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof GroupsApi + */ + public removeGroupMemberRole(groupId: string, userId: string, groupRoleId: string, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).removeGroupMemberRole(groupId, userId, groupRoleId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Responds to a Group Join Request with Accept/Deny + * @summary Respond Group Join request + * @param {string} groupId Must be a valid group ID. + * @param {string} userId Must be a valid user ID. + * @param {RespondGroupJoinRequest} respondGroupJoinRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof GroupsApi + */ + public respondGroupJoinRequest(groupId: string, userId: string, respondGroupJoinRequest: RespondGroupJoinRequest, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).respondGroupJoinRequest(groupId, userId, respondGroupJoinRequest, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Searches Groups by name or shortCode + * @summary Search Group + * @param {string} [query] Query to search for, can be either Group Name or Group shortCode + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {number} [n] The number of objects to return. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof GroupsApi + */ + public searchGroups(query?: string, offset?: number, n?: number, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).searchGroups(query, offset, n, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Unbans a user from a Group. + * @summary Unban Group Member + * @param {string} groupId Must be a valid group ID. + * @param {string} userId Must be a valid user ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof GroupsApi + */ + public unbanGroupMember(groupId: string, userId: string, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).unbanGroupMember(groupId, userId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Updates a Group and returns it. + * @summary Update Group + * @param {string} groupId Must be a valid group ID. + * @param {UpdateGroupRequest} [updateGroupRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof GroupsApi + */ + public updateGroup(groupId: string, updateGroupRequest?: UpdateGroupRequest, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).updateGroup(groupId, updateGroupRequest, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Updates a gallery for a Group. + * @summary Update Group Gallery + * @param {string} groupId Must be a valid group ID. + * @param {string} groupGalleryId Must be a valid group gallery ID. + * @param {UpdateGroupGalleryRequest} [updateGroupGalleryRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof GroupsApi + */ + public updateGroupGallery(groupId: string, groupGalleryId: string, updateGroupGalleryRequest?: UpdateGroupGalleryRequest, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).updateGroupGallery(groupId, groupGalleryId, updateGroupGalleryRequest, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Updates a Group Member + * @summary Update Group Member + * @param {string} groupId Must be a valid group ID. + * @param {string} userId Must be a valid user ID. + * @param {UpdateGroupMemberRequest} [updateGroupMemberRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof GroupsApi + */ + public updateGroupMember(groupId: string, userId: string, updateGroupMemberRequest?: UpdateGroupMemberRequest, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).updateGroupMember(groupId, userId, updateGroupMemberRequest, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Edits a Group post + * @summary Edits a Group post * @param {string} groupId Must be a valid group ID. - * @param {string} userId Must be a valid user ID. - * @param {string} groupRoleId Must be a valid group role ID. + * @param {string} notificationId Must be a valid notification ID. + * @param {CreateGroupPostRequest} createGroupPostRequest * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof GroupsApi */ - public removeGroupMemberRole(groupId: string, userId: string, groupRoleId: string, options?: AxiosRequestConfig) { - return GroupsApiFp(this.configuration).removeGroupMemberRole(groupId, userId, groupRoleId, options).then((request) => request(this.axios, this.basePath)); + public updateGroupPost(groupId: string, notificationId: string, createGroupPostRequest: CreateGroupPostRequest, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).updateGroupPost(groupId, notificationId, createGroupPostRequest, options).then((request) => request(this.axios, this.basePath)); } /** - * Responds to a Group Join Request with Accept/Deny - * @summary Respond Group Join request + * Updates whether the user is representing the group. When `isRepresenting` is set to `true`, this flag will be set to `false` for all other groups + * @summary Update Group Representation * @param {string} groupId Must be a valid group ID. - * @param {string} userId Must be a valid user ID. - * @param {RespondGroupJoinRequest} respondGroupJoinRequest + * @param {UpdateGroupRepresentationRequest} updateGroupRepresentationRequest * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof GroupsApi */ - public respondGroupJoinRequest(groupId: string, userId: string, respondGroupJoinRequest: RespondGroupJoinRequest, options?: AxiosRequestConfig) { - return GroupsApiFp(this.configuration).respondGroupJoinRequest(groupId, userId, respondGroupJoinRequest, options).then((request) => request(this.axios, this.basePath)); + public updateGroupRepresentation(groupId: string, updateGroupRepresentationRequest: UpdateGroupRepresentationRequest, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).updateGroupRepresentation(groupId, updateGroupRepresentationRequest, options).then((request) => request(this.axios, this.basePath)); } /** - * Searches Groups by name or shortCode - * @summary Search Group - * @param {string} [query] Query to search for, can be either Group Name or Group shortCode - * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. - * @param {number} [n] The number of objects to return. + * Updates a group role by ID. + * @summary Update Group Role + * @param {string} groupId Must be a valid group ID. + * @param {string} groupRoleId Must be a valid group role ID. + * @param {UpdateGroupRoleRequest} [updateGroupRoleRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof GroupsApi */ - public searchGroups(query?: string, offset?: number, n?: number, options?: AxiosRequestConfig) { - return GroupsApiFp(this.configuration).searchGroups(query, offset, n, options).then((request) => request(this.axios, this.basePath)); + public updateGroupRole(groupId: string, groupRoleId: string, updateGroupRoleRequest?: UpdateGroupRoleRequest, options?: AxiosRequestConfig) { + return GroupsApiFp(this.configuration).updateGroupRole(groupId, groupRoleId, updateGroupRoleRequest, options).then((request) => request(this.axios, this.basePath)); + } +} + + +/** + * InstancesApi - axios parameter creator + * @export + */ +export const InstancesApiAxiosParamCreator = function (configuration?: Configuration) { + return { + /** + * Close an instance or update the closedAt time when it will be closed. You can only close an instance if the ownerId is yourself or if the instance owner is a group and you have the `group-instance-manage` permission. + * @summary Close Instance + * @param {string} worldId Must be a valid world ID. + * @param {string} instanceId Must be a valid instance ID. + * @param {boolean} [hardClose] Whether to hard close the instance. Defaults to false. + * @param {string} [closedAt] The time after which users won\'t be allowed to join the instances. If omitted, the instance will be closed immediately. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + closeInstance: async (worldId: string, instanceId: string, hardClose?: boolean, closedAt?: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'worldId' is not null or undefined + assertParamExists('closeInstance', 'worldId', worldId) + // verify required parameter 'instanceId' is not null or undefined + assertParamExists('closeInstance', 'instanceId', instanceId) + const localVarPath = `/instances/{worldId}:{instanceId}` + .replace(`{${"worldId"}}`, encodeURIComponent(String(worldId))) + .replace(`{${"instanceId"}}`, encodeURIComponent(String(instanceId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + if (hardClose !== undefined) { + localVarQueryParameter['hardClose'] = hardClose; + } + + if (closedAt !== undefined) { + localVarQueryParameter['closedAt'] = (closedAt as any instanceof Date) ? + (closedAt as any).toISOString() : + closedAt; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Create an instance + * @summary Create Instance + * @param {CreateInstanceRequest} createInstanceRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + createInstance: async (createInstanceRequest: CreateInstanceRequest, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'createInstanceRequest' is not null or undefined + assertParamExists('createInstance', 'createInstanceRequest', createInstanceRequest) + const localVarPath = `/instances`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(createInstanceRequest, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Returns an instance. Please read [Instances Tutorial](https://vrchatapi.github.io/tutorials/instances/) for more information on Instances. If an invalid instanceId is provided, this endpoint will simply return \"null\"! + * @summary Get Instance + * @param {string} worldId Must be a valid world ID. + * @param {string} instanceId Must be a valid instance ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getInstance: async (worldId: string, instanceId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'worldId' is not null or undefined + assertParamExists('getInstance', 'worldId', worldId) + // verify required parameter 'instanceId' is not null or undefined + assertParamExists('getInstance', 'instanceId', instanceId) + const localVarPath = `/instances/{worldId}:{instanceId}` + .replace(`{${"worldId"}}`, encodeURIComponent(String(worldId))) + .replace(`{${"instanceId"}}`, encodeURIComponent(String(instanceId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Returns an instance. Please read [Instances Tutorial](https://vrchatapi.github.io/tutorials/instances/) for more information on Instances. + * @summary Get Instance By Short Name + * @param {string} shortName Must be a valid instance short name. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getInstanceByShortName: async (shortName: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'shortName' is not null or undefined + assertParamExists('getInstanceByShortName', 'shortName', shortName) + const localVarPath = `/instances/s/{shortName}` + .replace(`{${"shortName"}}`, encodeURIComponent(String(shortName))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Returns an instance short name. + * @summary Get Instance Short Name + * @param {string} worldId Must be a valid world ID. + * @param {string} instanceId Must be a valid instance ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getShortName: async (worldId: string, instanceId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'worldId' is not null or undefined + assertParamExists('getShortName', 'worldId', worldId) + // verify required parameter 'instanceId' is not null or undefined + assertParamExists('getShortName', 'instanceId', instanceId) + const localVarPath = `/instances/{worldId}:{instanceId}/shortName` + .replace(`{${"worldId"}}`, encodeURIComponent(String(worldId))) + .replace(`{${"instanceId"}}`, encodeURIComponent(String(instanceId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, } +}; - /** - * Unbans a user from a Group. - * @summary Unban Group Member - * @param {string} groupId Must be a valid group ID. - * @param {string} userId Must be a valid user ID. - * @param {*} [options] Override http request option. - * @throws {RequiredError} - * @memberof GroupsApi - */ - public unbanGroupMember(groupId: string, userId: string, options?: AxiosRequestConfig) { - return GroupsApiFp(this.configuration).unbanGroupMember(groupId, userId, options).then((request) => request(this.axios, this.basePath)); +/** + * InstancesApi - functional programming interface + * @export + */ +export const InstancesApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = InstancesApiAxiosParamCreator(configuration) + return { + /** + * Close an instance or update the closedAt time when it will be closed. You can only close an instance if the ownerId is yourself or if the instance owner is a group and you have the `group-instance-manage` permission. + * @summary Close Instance + * @param {string} worldId Must be a valid world ID. + * @param {string} instanceId Must be a valid instance ID. + * @param {boolean} [hardClose] Whether to hard close the instance. Defaults to false. + * @param {string} [closedAt] The time after which users won\'t be allowed to join the instances. If omitted, the instance will be closed immediately. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async closeInstance(worldId: string, instanceId: string, hardClose?: boolean, closedAt?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.closeInstance(worldId, instanceId, hardClose, closedAt, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Create an instance + * @summary Create Instance + * @param {CreateInstanceRequest} createInstanceRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async createInstance(createInstanceRequest: CreateInstanceRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.createInstance(createInstanceRequest, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Returns an instance. Please read [Instances Tutorial](https://vrchatapi.github.io/tutorials/instances/) for more information on Instances. If an invalid instanceId is provided, this endpoint will simply return \"null\"! + * @summary Get Instance + * @param {string} worldId Must be a valid world ID. + * @param {string} instanceId Must be a valid instance ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getInstance(worldId: string, instanceId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getInstance(worldId, instanceId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Returns an instance. Please read [Instances Tutorial](https://vrchatapi.github.io/tutorials/instances/) for more information on Instances. + * @summary Get Instance By Short Name + * @param {string} shortName Must be a valid instance short name. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getInstanceByShortName(shortName: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getInstanceByShortName(shortName, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Returns an instance short name. + * @summary Get Instance Short Name + * @param {string} worldId Must be a valid world ID. + * @param {string} instanceId Must be a valid instance ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getShortName(worldId: string, instanceId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getShortName(worldId, instanceId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, } +}; - /** - * Updates a Group and returns it. - * @summary Update Group - * @param {string} groupId Must be a valid group ID. - * @param {UpdateGroupRequest} [updateGroupRequest] - * @param {*} [options] Override http request option. - * @throws {RequiredError} - * @memberof GroupsApi - */ - public updateGroup(groupId: string, updateGroupRequest?: UpdateGroupRequest, options?: AxiosRequestConfig) { - return GroupsApiFp(this.configuration).updateGroup(groupId, updateGroupRequest, options).then((request) => request(this.axios, this.basePath)); - } +/** + * InstancesApi - factory interface + * @export + */ +export const InstancesApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = InstancesApiFp(configuration) + return { + /** + * Close an instance or update the closedAt time when it will be closed. You can only close an instance if the ownerId is yourself or if the instance owner is a group and you have the `group-instance-manage` permission. + * @summary Close Instance + * @param {string} worldId Must be a valid world ID. + * @param {string} instanceId Must be a valid instance ID. + * @param {boolean} [hardClose] Whether to hard close the instance. Defaults to false. + * @param {string} [closedAt] The time after which users won\'t be allowed to join the instances. If omitted, the instance will be closed immediately. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + closeInstance(worldId: string, instanceId: string, hardClose?: boolean, closedAt?: string, options?: any): AxiosPromise { + return localVarFp.closeInstance(worldId, instanceId, hardClose, closedAt, options).then((request) => request(axios, basePath)); + }, + /** + * Create an instance + * @summary Create Instance + * @param {CreateInstanceRequest} createInstanceRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + createInstance(createInstanceRequest: CreateInstanceRequest, options?: any): AxiosPromise { + return localVarFp.createInstance(createInstanceRequest, options).then((request) => request(axios, basePath)); + }, + /** + * Returns an instance. Please read [Instances Tutorial](https://vrchatapi.github.io/tutorials/instances/) for more information on Instances. If an invalid instanceId is provided, this endpoint will simply return \"null\"! + * @summary Get Instance + * @param {string} worldId Must be a valid world ID. + * @param {string} instanceId Must be a valid instance ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getInstance(worldId: string, instanceId: string, options?: any): AxiosPromise { + return localVarFp.getInstance(worldId, instanceId, options).then((request) => request(axios, basePath)); + }, + /** + * Returns an instance. Please read [Instances Tutorial](https://vrchatapi.github.io/tutorials/instances/) for more information on Instances. + * @summary Get Instance By Short Name + * @param {string} shortName Must be a valid instance short name. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getInstanceByShortName(shortName: string, options?: any): AxiosPromise { + return localVarFp.getInstanceByShortName(shortName, options).then((request) => request(axios, basePath)); + }, + /** + * Returns an instance short name. + * @summary Get Instance Short Name + * @param {string} worldId Must be a valid world ID. + * @param {string} instanceId Must be a valid instance ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getShortName(worldId: string, instanceId: string, options?: any): AxiosPromise { + return localVarFp.getShortName(worldId, instanceId, options).then((request) => request(axios, basePath)); + }, + }; +}; +/** + * InstancesApi - object-oriented interface + * @export + * @class InstancesApi + * @extends {BaseAPI} + */ +export class InstancesApi extends BaseAPI { /** - * Updates a gallery for a Group. - * @summary Update Group Gallery - * @param {string} groupId Must be a valid group ID. - * @param {string} groupGalleryId Must be a valid group gallery ID. - * @param {UpdateGroupGalleryRequest} [updateGroupGalleryRequest] + * Close an instance or update the closedAt time when it will be closed. You can only close an instance if the ownerId is yourself or if the instance owner is a group and you have the `group-instance-manage` permission. + * @summary Close Instance + * @param {string} worldId Must be a valid world ID. + * @param {string} instanceId Must be a valid instance ID. + * @param {boolean} [hardClose] Whether to hard close the instance. Defaults to false. + * @param {string} [closedAt] The time after which users won\'t be allowed to join the instances. If omitted, the instance will be closed immediately. * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof GroupsApi + * @memberof InstancesApi */ - public updateGroupGallery(groupId: string, groupGalleryId: string, updateGroupGalleryRequest?: UpdateGroupGalleryRequest, options?: AxiosRequestConfig) { - return GroupsApiFp(this.configuration).updateGroupGallery(groupId, groupGalleryId, updateGroupGalleryRequest, options).then((request) => request(this.axios, this.basePath)); + public closeInstance(worldId: string, instanceId: string, hardClose?: boolean, closedAt?: string, options?: AxiosRequestConfig) { + return InstancesApiFp(this.configuration).closeInstance(worldId, instanceId, hardClose, closedAt, options).then((request) => request(this.axios, this.basePath)); } /** - * Updates a Group Member - * @summary Update Group Member - * @param {string} groupId Must be a valid group ID. - * @param {string} userId Must be a valid user ID. - * @param {UpdateGroupMemberRequest} [updateGroupMemberRequest] + * Create an instance + * @summary Create Instance + * @param {CreateInstanceRequest} createInstanceRequest * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof GroupsApi + * @memberof InstancesApi */ - public updateGroupMember(groupId: string, userId: string, updateGroupMemberRequest?: UpdateGroupMemberRequest, options?: AxiosRequestConfig) { - return GroupsApiFp(this.configuration).updateGroupMember(groupId, userId, updateGroupMemberRequest, options).then((request) => request(this.axios, this.basePath)); + public createInstance(createInstanceRequest: CreateInstanceRequest, options?: AxiosRequestConfig) { + return InstancesApiFp(this.configuration).createInstance(createInstanceRequest, options).then((request) => request(this.axios, this.basePath)); } /** - * Edits a Group post - * @summary Edits a Group post - * @param {string} groupId Must be a valid group ID. - * @param {string} notificationId Must be a valid notification ID. - * @param {CreateGroupPostRequest} createGroupPostRequest + * Returns an instance. Please read [Instances Tutorial](https://vrchatapi.github.io/tutorials/instances/) for more information on Instances. If an invalid instanceId is provided, this endpoint will simply return \"null\"! + * @summary Get Instance + * @param {string} worldId Must be a valid world ID. + * @param {string} instanceId Must be a valid instance ID. * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof GroupsApi + * @memberof InstancesApi */ - public updateGroupPost(groupId: string, notificationId: string, createGroupPostRequest: CreateGroupPostRequest, options?: AxiosRequestConfig) { - return GroupsApiFp(this.configuration).updateGroupPost(groupId, notificationId, createGroupPostRequest, options).then((request) => request(this.axios, this.basePath)); + public getInstance(worldId: string, instanceId: string, options?: AxiosRequestConfig) { + return InstancesApiFp(this.configuration).getInstance(worldId, instanceId, options).then((request) => request(this.axios, this.basePath)); } /** - * Updates whether the user is representing the group. When `isRepresenting` is set to `true`, this flag will be set to `false` for all other groups - * @summary Update Group Representation - * @param {string} groupId Must be a valid group ID. - * @param {UpdateGroupRepresentationRequest} updateGroupRepresentationRequest + * Returns an instance. Please read [Instances Tutorial](https://vrchatapi.github.io/tutorials/instances/) for more information on Instances. + * @summary Get Instance By Short Name + * @param {string} shortName Must be a valid instance short name. * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof GroupsApi + * @memberof InstancesApi */ - public updateGroupRepresentation(groupId: string, updateGroupRepresentationRequest: UpdateGroupRepresentationRequest, options?: AxiosRequestConfig) { - return GroupsApiFp(this.configuration).updateGroupRepresentation(groupId, updateGroupRepresentationRequest, options).then((request) => request(this.axios, this.basePath)); + public getInstanceByShortName(shortName: string, options?: AxiosRequestConfig) { + return InstancesApiFp(this.configuration).getInstanceByShortName(shortName, options).then((request) => request(this.axios, this.basePath)); } /** - * Updates a group role by ID. - * @summary Update Group Role - * @param {string} groupId Must be a valid group ID. - * @param {string} groupRoleId Must be a valid group role ID. - * @param {UpdateGroupRoleRequest} [updateGroupRoleRequest] + * Returns an instance short name. + * @summary Get Instance Short Name + * @param {string} worldId Must be a valid world ID. + * @param {string} instanceId Must be a valid instance ID. * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof GroupsApi + * @memberof InstancesApi */ - public updateGroupRole(groupId: string, groupRoleId: string, updateGroupRoleRequest?: UpdateGroupRoleRequest, options?: AxiosRequestConfig) { - return GroupsApiFp(this.configuration).updateGroupRole(groupId, groupRoleId, updateGroupRoleRequest, options).then((request) => request(this.axios, this.basePath)); + public getShortName(worldId: string, instanceId: string, options?: AxiosRequestConfig) { + return InstancesApiFp(this.configuration).getShortName(worldId, instanceId, options).then((request) => request(this.axios, this.basePath)); } } /** - * InstancesApi - axios parameter creator + * InventoryApi - axios parameter creator * @export */ -export const InstancesApiAxiosParamCreator = function (configuration?: Configuration) { +export const InventoryApiAxiosParamCreator = function (configuration?: Configuration) { return { /** - * Close an instance or update the closedAt time when it will be closed. You can only close an instance if the ownerId is yourself or if the instance owner is a group and you have the `group-instance-manage` permission. - * @summary Close Instance - * @param {string} worldId Must be a valid world ID. - * @param {string} instanceId Must be a valid instance ID. - * @param {boolean} [hardClose] Whether to hard close the instance. Defaults to false. - * @param {string} [closedAt] The time after which users won\'t be allowed to join the instances. If omitted, the instance will be closed immediately. - * @param {*} [options] Override http request option. - * @throws {RequiredError} - */ - closeInstance: async (worldId: string, instanceId: string, hardClose?: boolean, closedAt?: string, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'worldId' is not null or undefined - assertParamExists('closeInstance', 'worldId', worldId) - // verify required parameter 'instanceId' is not null or undefined - assertParamExists('closeInstance', 'instanceId', instanceId) - const localVarPath = `/instances/{worldId}:{instanceId}` - .replace(`{${"worldId"}}`, encodeURIComponent(String(worldId))) - .replace(`{${"instanceId"}}`, encodeURIComponent(String(instanceId))); + * Returns an Inventory object. + * @summary Get Inventory + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {'newest' | 'oldest'} [inventorySortOrder] Sort order for inventory retrieval. + * @param {InventoryItemType} [inventoryItemType] Filter for inventory retrieval. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getInventory: async (n?: number, offset?: number, inventorySortOrder?: 'newest' | 'oldest', inventoryItemType?: InventoryItemType, options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/inventory`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -19931,20 +21205,26 @@ export const InstancesApiAxiosParamCreator = function (configuration?: Configura baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; // authentication authCookie required - if (hardClose !== undefined) { - localVarQueryParameter['hardClose'] = hardClose; + if (n !== undefined) { + localVarQueryParameter['n'] = n; } - if (closedAt !== undefined) { - localVarQueryParameter['closedAt'] = (closedAt as any instanceof Date) ? - (closedAt as any).toISOString() : - closedAt; + if (offset !== undefined) { + localVarQueryParameter['offset'] = offset; + } + + if (inventorySortOrder !== undefined) { + localVarQueryParameter['inventorySortOrder'] = inventorySortOrder; + } + + if (inventoryItemType !== undefined) { + localVarQueryParameter['inventoryItemType'] = inventoryItemType; } @@ -19959,16 +21239,14 @@ export const InstancesApiAxiosParamCreator = function (configuration?: Configura }; }, /** - * Create an instance - * @summary Create Instance - * @param {CreateInstanceRequest} createInstanceRequest + * Returns a list of InventoryDrop objects. + * @summary List Inventory Drops + * @param {boolean} [active] Filter for users\' listings and inventory bundles. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - createInstance: async (createInstanceRequest: CreateInstanceRequest, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'createInstanceRequest' is not null or undefined - assertParamExists('createInstance', 'createInstanceRequest', createInstanceRequest) - const localVarPath = `/instances`; + getInventoryDrops: async (active?: boolean, options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/inventory/drops`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -19976,20 +21254,21 @@ export const InstancesApiAxiosParamCreator = function (configuration?: Configura baseOptions = configuration.baseOptions; } - const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; // authentication authCookie required + if (active !== undefined) { + localVarQueryParameter['active'] = active; + } + - localVarHeaderParameter['Content-Type'] = 'application/json'; - setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - localVarRequestOptions.data = serializeDataIfNeeded(createInstanceRequest, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), @@ -19997,21 +21276,17 @@ export const InstancesApiAxiosParamCreator = function (configuration?: Configura }; }, /** - * Returns an instance. Please read [Instances Tutorial](https://vrchatapi.github.io/tutorials/instances/) for more information on Instances. If an invalid instanceId is provided, this endpoint will simply return \"null\"! - * @summary Get Instance - * @param {string} worldId Must be a valid world ID. - * @param {string} instanceId Must be a valid instance ID. + * Returns an InventoryTemplate object. + * @summary Get Inventory Template + * @param {string} inventoryTemplateId Must be a valid inventory template ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getInstance: async (worldId: string, instanceId: string, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'worldId' is not null or undefined - assertParamExists('getInstance', 'worldId', worldId) - // verify required parameter 'instanceId' is not null or undefined - assertParamExists('getInstance', 'instanceId', instanceId) - const localVarPath = `/instances/{worldId}:{instanceId}` - .replace(`{${"worldId"}}`, encodeURIComponent(String(worldId))) - .replace(`{${"instanceId"}}`, encodeURIComponent(String(instanceId))); + getInventoryTemplate: async (inventoryTemplateId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'inventoryTemplateId' is not null or undefined + assertParamExists('getInventoryTemplate', 'inventoryTemplateId', inventoryTemplateId) + const localVarPath = `/inventory/template/{inventoryTemplateId}` + .replace(`{${"inventoryTemplateId"}}`, encodeURIComponent(String(inventoryTemplateId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -20037,17 +21312,17 @@ export const InstancesApiAxiosParamCreator = function (configuration?: Configura }; }, /** - * Returns an instance. Please read [Instances Tutorial](https://vrchatapi.github.io/tutorials/instances/) for more information on Instances. - * @summary Get Instance By Short Name - * @param {string} shortName Must be a valid instance short name. + * Returns an InventoryItem object held by the currently logged in user. + * @summary Get Own Inventory Item + * @param {string} inventoryItemId Must be a valid inventory item ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getInstanceByShortName: async (shortName: string, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'shortName' is not null or undefined - assertParamExists('getInstanceByShortName', 'shortName', shortName) - const localVarPath = `/instances/s/{shortName}` - .replace(`{${"shortName"}}`, encodeURIComponent(String(shortName))); + getOwnInventoryItem: async (inventoryItemId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'inventoryItemId' is not null or undefined + assertParamExists('getOwnInventoryItem', 'inventoryItemId', inventoryItemId) + const localVarPath = `/inventory/{inventoryItemId}` + .replace(`{${"inventoryItemId"}}`, encodeURIComponent(String(inventoryItemId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -20073,21 +21348,16 @@ export const InstancesApiAxiosParamCreator = function (configuration?: Configura }; }, /** - * Returns an instance short name. - * @summary Get Instance Short Name - * @param {string} worldId Must be a valid world ID. - * @param {string} instanceId Must be a valid instance ID. + * Returns an InventorySpawn object. + * @summary Spawn Inventory Item + * @param {string} id Id for inventory item spawning. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getShortName: async (worldId: string, instanceId: string, options: AxiosRequestConfig = {}): Promise => { - // verify required parameter 'worldId' is not null or undefined - assertParamExists('getShortName', 'worldId', worldId) - // verify required parameter 'instanceId' is not null or undefined - assertParamExists('getShortName', 'instanceId', instanceId) - const localVarPath = `/instances/{worldId}:{instanceId}/shortName` - .replace(`{${"worldId"}}`, encodeURIComponent(String(worldId))) - .replace(`{${"instanceId"}}`, encodeURIComponent(String(instanceId))); + spawnInventoryItem: async (id: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'id' is not null or undefined + assertParamExists('spawnInventoryItem', 'id', id) + const localVarPath = `/inventory/spawn`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -20101,6 +21371,10 @@ export const InstancesApiAxiosParamCreator = function (configuration?: Configura // authentication authCookie required + if (id !== undefined) { + localVarQueryParameter['id'] = id; + } + setSearchParams(localVarUrlObj, localVarQueryParameter); @@ -20116,210 +21390,204 @@ export const InstancesApiAxiosParamCreator = function (configuration?: Configura }; /** - * InstancesApi - functional programming interface + * InventoryApi - functional programming interface * @export */ -export const InstancesApiFp = function(configuration?: Configuration) { - const localVarAxiosParamCreator = InstancesApiAxiosParamCreator(configuration) +export const InventoryApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = InventoryApiAxiosParamCreator(configuration) return { /** - * Close an instance or update the closedAt time when it will be closed. You can only close an instance if the ownerId is yourself or if the instance owner is a group and you have the `group-instance-manage` permission. - * @summary Close Instance - * @param {string} worldId Must be a valid world ID. - * @param {string} instanceId Must be a valid instance ID. - * @param {boolean} [hardClose] Whether to hard close the instance. Defaults to false. - * @param {string} [closedAt] The time after which users won\'t be allowed to join the instances. If omitted, the instance will be closed immediately. + * Returns an Inventory object. + * @summary Get Inventory + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {'newest' | 'oldest'} [inventorySortOrder] Sort order for inventory retrieval. + * @param {InventoryItemType} [inventoryItemType] Filter for inventory retrieval. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async closeInstance(worldId: string, instanceId: string, hardClose?: boolean, closedAt?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.closeInstance(worldId, instanceId, hardClose, closedAt, options); + async getInventory(n?: number, offset?: number, inventorySortOrder?: 'newest' | 'oldest', inventoryItemType?: InventoryItemType, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getInventory(n, offset, inventorySortOrder, inventoryItemType, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Create an instance - * @summary Create Instance - * @param {CreateInstanceRequest} createInstanceRequest + * Returns a list of InventoryDrop objects. + * @summary List Inventory Drops + * @param {boolean} [active] Filter for users\' listings and inventory bundles. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async createInstance(createInstanceRequest: CreateInstanceRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.createInstance(createInstanceRequest, options); + async getInventoryDrops(active?: boolean, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getInventoryDrops(active, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Returns an instance. Please read [Instances Tutorial](https://vrchatapi.github.io/tutorials/instances/) for more information on Instances. If an invalid instanceId is provided, this endpoint will simply return \"null\"! - * @summary Get Instance - * @param {string} worldId Must be a valid world ID. - * @param {string} instanceId Must be a valid instance ID. + * Returns an InventoryTemplate object. + * @summary Get Inventory Template + * @param {string} inventoryTemplateId Must be a valid inventory template ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getInstance(worldId: string, instanceId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getInstance(worldId, instanceId, options); + async getInventoryTemplate(inventoryTemplateId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getInventoryTemplate(inventoryTemplateId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Returns an instance. Please read [Instances Tutorial](https://vrchatapi.github.io/tutorials/instances/) for more information on Instances. - * @summary Get Instance By Short Name - * @param {string} shortName Must be a valid instance short name. + * Returns an InventoryItem object held by the currently logged in user. + * @summary Get Own Inventory Item + * @param {string} inventoryItemId Must be a valid inventory item ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getInstanceByShortName(shortName: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getInstanceByShortName(shortName, options); + async getOwnInventoryItem(inventoryItemId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getOwnInventoryItem(inventoryItemId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * Returns an instance short name. - * @summary Get Instance Short Name - * @param {string} worldId Must be a valid world ID. - * @param {string} instanceId Must be a valid instance ID. + * Returns an InventorySpawn object. + * @summary Spawn Inventory Item + * @param {string} id Id for inventory item spawning. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getShortName(worldId: string, instanceId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getShortName(worldId, instanceId, options); + async spawnInventoryItem(id: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.spawnInventoryItem(id, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, } }; /** - * InstancesApi - factory interface + * InventoryApi - factory interface * @export */ -export const InstancesApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { - const localVarFp = InstancesApiFp(configuration) +export const InventoryApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = InventoryApiFp(configuration) return { /** - * Close an instance or update the closedAt time when it will be closed. You can only close an instance if the ownerId is yourself or if the instance owner is a group and you have the `group-instance-manage` permission. - * @summary Close Instance - * @param {string} worldId Must be a valid world ID. - * @param {string} instanceId Must be a valid instance ID. - * @param {boolean} [hardClose] Whether to hard close the instance. Defaults to false. - * @param {string} [closedAt] The time after which users won\'t be allowed to join the instances. If omitted, the instance will be closed immediately. + * Returns an Inventory object. + * @summary Get Inventory + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {'newest' | 'oldest'} [inventorySortOrder] Sort order for inventory retrieval. + * @param {InventoryItemType} [inventoryItemType] Filter for inventory retrieval. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - closeInstance(worldId: string, instanceId: string, hardClose?: boolean, closedAt?: string, options?: any): AxiosPromise { - return localVarFp.closeInstance(worldId, instanceId, hardClose, closedAt, options).then((request) => request(axios, basePath)); + getInventory(n?: number, offset?: number, inventorySortOrder?: 'newest' | 'oldest', inventoryItemType?: InventoryItemType, options?: any): AxiosPromise { + return localVarFp.getInventory(n, offset, inventorySortOrder, inventoryItemType, options).then((request) => request(axios, basePath)); }, /** - * Create an instance - * @summary Create Instance - * @param {CreateInstanceRequest} createInstanceRequest + * Returns a list of InventoryDrop objects. + * @summary List Inventory Drops + * @param {boolean} [active] Filter for users\' listings and inventory bundles. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - createInstance(createInstanceRequest: CreateInstanceRequest, options?: any): AxiosPromise { - return localVarFp.createInstance(createInstanceRequest, options).then((request) => request(axios, basePath)); + getInventoryDrops(active?: boolean, options?: any): AxiosPromise> { + return localVarFp.getInventoryDrops(active, options).then((request) => request(axios, basePath)); }, /** - * Returns an instance. Please read [Instances Tutorial](https://vrchatapi.github.io/tutorials/instances/) for more information on Instances. If an invalid instanceId is provided, this endpoint will simply return \"null\"! - * @summary Get Instance - * @param {string} worldId Must be a valid world ID. - * @param {string} instanceId Must be a valid instance ID. + * Returns an InventoryTemplate object. + * @summary Get Inventory Template + * @param {string} inventoryTemplateId Must be a valid inventory template ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getInstance(worldId: string, instanceId: string, options?: any): AxiosPromise { - return localVarFp.getInstance(worldId, instanceId, options).then((request) => request(axios, basePath)); + getInventoryTemplate(inventoryTemplateId: string, options?: any): AxiosPromise { + return localVarFp.getInventoryTemplate(inventoryTemplateId, options).then((request) => request(axios, basePath)); }, /** - * Returns an instance. Please read [Instances Tutorial](https://vrchatapi.github.io/tutorials/instances/) for more information on Instances. - * @summary Get Instance By Short Name - * @param {string} shortName Must be a valid instance short name. + * Returns an InventoryItem object held by the currently logged in user. + * @summary Get Own Inventory Item + * @param {string} inventoryItemId Must be a valid inventory item ID. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getInstanceByShortName(shortName: string, options?: any): AxiosPromise { - return localVarFp.getInstanceByShortName(shortName, options).then((request) => request(axios, basePath)); + getOwnInventoryItem(inventoryItemId: string, options?: any): AxiosPromise { + return localVarFp.getOwnInventoryItem(inventoryItemId, options).then((request) => request(axios, basePath)); }, /** - * Returns an instance short name. - * @summary Get Instance Short Name - * @param {string} worldId Must be a valid world ID. - * @param {string} instanceId Must be a valid instance ID. + * Returns an InventorySpawn object. + * @summary Spawn Inventory Item + * @param {string} id Id for inventory item spawning. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getShortName(worldId: string, instanceId: string, options?: any): AxiosPromise { - return localVarFp.getShortName(worldId, instanceId, options).then((request) => request(axios, basePath)); + spawnInventoryItem(id: string, options?: any): AxiosPromise { + return localVarFp.spawnInventoryItem(id, options).then((request) => request(axios, basePath)); }, }; }; /** - * InstancesApi - object-oriented interface + * InventoryApi - object-oriented interface * @export - * @class InstancesApi + * @class InventoryApi * @extends {BaseAPI} */ -export class InstancesApi extends BaseAPI { +export class InventoryApi extends BaseAPI { /** - * Close an instance or update the closedAt time when it will be closed. You can only close an instance if the ownerId is yourself or if the instance owner is a group and you have the `group-instance-manage` permission. - * @summary Close Instance - * @param {string} worldId Must be a valid world ID. - * @param {string} instanceId Must be a valid instance ID. - * @param {boolean} [hardClose] Whether to hard close the instance. Defaults to false. - * @param {string} [closedAt] The time after which users won\'t be allowed to join the instances. If omitted, the instance will be closed immediately. + * Returns an Inventory object. + * @summary Get Inventory + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {'newest' | 'oldest'} [inventorySortOrder] Sort order for inventory retrieval. + * @param {InventoryItemType} [inventoryItemType] Filter for inventory retrieval. * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof InstancesApi + * @memberof InventoryApi */ - public closeInstance(worldId: string, instanceId: string, hardClose?: boolean, closedAt?: string, options?: AxiosRequestConfig) { - return InstancesApiFp(this.configuration).closeInstance(worldId, instanceId, hardClose, closedAt, options).then((request) => request(this.axios, this.basePath)); + public getInventory(n?: number, offset?: number, inventorySortOrder?: 'newest' | 'oldest', inventoryItemType?: InventoryItemType, options?: AxiosRequestConfig) { + return InventoryApiFp(this.configuration).getInventory(n, offset, inventorySortOrder, inventoryItemType, options).then((request) => request(this.axios, this.basePath)); } /** - * Create an instance - * @summary Create Instance - * @param {CreateInstanceRequest} createInstanceRequest + * Returns a list of InventoryDrop objects. + * @summary List Inventory Drops + * @param {boolean} [active] Filter for users\' listings and inventory bundles. * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof InstancesApi + * @memberof InventoryApi */ - public createInstance(createInstanceRequest: CreateInstanceRequest, options?: AxiosRequestConfig) { - return InstancesApiFp(this.configuration).createInstance(createInstanceRequest, options).then((request) => request(this.axios, this.basePath)); + public getInventoryDrops(active?: boolean, options?: AxiosRequestConfig) { + return InventoryApiFp(this.configuration).getInventoryDrops(active, options).then((request) => request(this.axios, this.basePath)); } /** - * Returns an instance. Please read [Instances Tutorial](https://vrchatapi.github.io/tutorials/instances/) for more information on Instances. If an invalid instanceId is provided, this endpoint will simply return \"null\"! - * @summary Get Instance - * @param {string} worldId Must be a valid world ID. - * @param {string} instanceId Must be a valid instance ID. + * Returns an InventoryTemplate object. + * @summary Get Inventory Template + * @param {string} inventoryTemplateId Must be a valid inventory template ID. * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof InstancesApi + * @memberof InventoryApi */ - public getInstance(worldId: string, instanceId: string, options?: AxiosRequestConfig) { - return InstancesApiFp(this.configuration).getInstance(worldId, instanceId, options).then((request) => request(this.axios, this.basePath)); + public getInventoryTemplate(inventoryTemplateId: string, options?: AxiosRequestConfig) { + return InventoryApiFp(this.configuration).getInventoryTemplate(inventoryTemplateId, options).then((request) => request(this.axios, this.basePath)); } /** - * Returns an instance. Please read [Instances Tutorial](https://vrchatapi.github.io/tutorials/instances/) for more information on Instances. - * @summary Get Instance By Short Name - * @param {string} shortName Must be a valid instance short name. + * Returns an InventoryItem object held by the currently logged in user. + * @summary Get Own Inventory Item + * @param {string} inventoryItemId Must be a valid inventory item ID. * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof InstancesApi + * @memberof InventoryApi */ - public getInstanceByShortName(shortName: string, options?: AxiosRequestConfig) { - return InstancesApiFp(this.configuration).getInstanceByShortName(shortName, options).then((request) => request(this.axios, this.basePath)); + public getOwnInventoryItem(inventoryItemId: string, options?: AxiosRequestConfig) { + return InventoryApiFp(this.configuration).getOwnInventoryItem(inventoryItemId, options).then((request) => request(this.axios, this.basePath)); } /** - * Returns an instance short name. - * @summary Get Instance Short Name - * @param {string} worldId Must be a valid world ID. - * @param {string} instanceId Must be a valid instance ID. + * Returns an InventorySpawn object. + * @summary Spawn Inventory Item + * @param {string} id Id for inventory item spawning. * @param {*} [options] Override http request option. * @throws {RequiredError} - * @memberof InstancesApi + * @memberof InventoryApi */ - public getShortName(worldId: string, instanceId: string, options?: AxiosRequestConfig) { - return InstancesApiFp(this.configuration).getShortName(worldId, instanceId, options).then((request) => request(this.axios, this.basePath)); + public spawnInventoryItem(id: string, options?: AxiosRequestConfig) { + return InventoryApiFp(this.configuration).spawnInventoryItem(id, options).then((request) => request(this.axios, this.basePath)); } } @@ -23420,6 +24688,113 @@ export class PrintsApi extends BaseAPI { } +/** + * PropsApi - axios parameter creator + * @export + */ +export const PropsApiAxiosParamCreator = function (configuration?: Configuration) { + return { + /** + * Returns a Prop object. + * @summary Get Prop + * @param {string} propId Prop ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getProp: async (propId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'propId' is not null or undefined + assertParamExists('getProp', 'propId', propId) + const localVarPath = `/props/{propId}` + .replace(`{${"propId"}}`, encodeURIComponent(String(propId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + } +}; + +/** + * PropsApi - functional programming interface + * @export + */ +export const PropsApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = PropsApiAxiosParamCreator(configuration) + return { + /** + * Returns a Prop object. + * @summary Get Prop + * @param {string} propId Prop ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getProp(propId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getProp(propId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + } +}; + +/** + * PropsApi - factory interface + * @export + */ +export const PropsApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = PropsApiFp(configuration) + return { + /** + * Returns a Prop object. + * @summary Get Prop + * @param {string} propId Prop ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getProp(propId: string, options?: any): AxiosPromise { + return localVarFp.getProp(propId, options).then((request) => request(axios, basePath)); + }, + }; +}; + +/** + * PropsApi - object-oriented interface + * @export + * @class PropsApi + * @extends {BaseAPI} + */ +export class PropsApi extends BaseAPI { + /** + * Returns a Prop object. + * @summary Get Prop + * @param {string} propId Prop ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof PropsApi + */ + public getProp(propId: string, options?: AxiosRequestConfig) { + return PropsApiFp(this.configuration).getProp(propId, options).then((request) => request(this.axios, this.basePath)); + } +} + + /** * UsersApi - axios parameter creator * @export @@ -23625,7 +25000,7 @@ export const UsersApiAxiosParamCreator = function (configuration?: Configuration * Get user\'s submitted feedback * @summary Get User Feedback * @param {string} userId Must be a valid user ID. - * @param {boolean} [contentId] Filter for users\' previously submitted feedback, e.g., a groupId, useeId, avatarId, etc. + * @param {boolean} [contentId] Filter for users\' previously submitted feedback, e.g., a groupId, userId, avatarId, etc. * @param {number} [n] The number of objects to return. * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {*} [options] Override http request option. @@ -24186,7 +25561,7 @@ export const UsersApiFp = function(configuration?: Configuration) { * Get user\'s submitted feedback * @summary Get User Feedback * @param {string} userId Must be a valid user ID. - * @param {boolean} [contentId] Filter for users\' previously submitted feedback, e.g., a groupId, useeId, avatarId, etc. + * @param {boolean} [contentId] Filter for users\' previously submitted feedback, e.g., a groupId, userId, avatarId, etc. * @param {number} [n] The number of objects to return. * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {*} [options] Override http request option. @@ -24394,7 +25769,7 @@ export const UsersApiFactory = function (configuration?: Configuration, basePath * Get user\'s submitted feedback * @summary Get User Feedback * @param {string} userId Must be a valid user ID. - * @param {boolean} [contentId] Filter for users\' previously submitted feedback, e.g., a groupId, useeId, avatarId, etc. + * @param {boolean} [contentId] Filter for users\' previously submitted feedback, e.g., a groupId, userId, avatarId, etc. * @param {number} [n] The number of objects to return. * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {*} [options] Override http request option. @@ -24600,7 +25975,7 @@ export class UsersApi extends BaseAPI { * Get user\'s submitted feedback * @summary Get User Feedback * @param {string} userId Must be a valid user ID. - * @param {boolean} [contentId] Filter for users\' previously submitted feedback, e.g., a groupId, useeId, avatarId, etc. + * @param {boolean} [contentId] Filter for users\' previously submitted feedback, e.g., a groupId, userId, avatarId, etc. * @param {number} [n] The number of objects to return. * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. * @param {*} [options] Override http request option. diff --git a/base.ts b/base.ts index d88dfdf..abd4834 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.20.0 + * The version of the OpenAPI document: 1.20.1 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index 4d3c2cc..60cfca6 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.20.0 + * The version of the OpenAPI document: 1.20.1 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index f53ee60..8d6ff34 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.20.0 + * The version of the OpenAPI document: 1.20.1 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index 364096b..3b7103a 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.20.0 + * The version of the OpenAPI document: 1.20.1 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index db4346e..c28b582 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.20.0", + "version": "1.20.1", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.20.0", + "version": "1.20.1", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index e298291..8c2a6de 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.20.0", + "version": "1.20.1", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "repository": { From e80c1a95e56f8dd92f1ef9f8cd7cb9ab6f0817b2 Mon Sep 17 00:00:00 2001 From: VRCCat Date: Wed, 20 Aug 2025 21:40:38 +0000 Subject: [PATCH 130/130] Upgrade Node SDK to spec 1.20.2 --- api.ts | 1345 ++++++++++++++++++++++++++++++++++++++++++++- base.ts | 2 +- common.ts | 2 +- configuration.ts | 2 +- index.ts | 2 +- package-lock.json | 4 +- package.json | 2 +- 7 files changed, 1350 insertions(+), 9 deletions(-) diff --git a/api.ts b/api.ts index 02351f6..7ef6cd8 100644 --- a/api.ts +++ b/api.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.20.1 + * The version of the OpenAPI document: 1.20.2 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -2215,6 +2215,194 @@ export interface BanGroupMemberRequest { */ 'userId': string; } +/** + * + * @export + * @interface CalendarEvent + */ +export interface CalendarEvent { + /** + * + * @type {string} + * @memberof CalendarEvent + */ + 'accessType': string; + /** + * + * @type {string} + * @memberof CalendarEvent + */ + 'category'?: string; + /** + * + * @type {number} + * @memberof CalendarEvent + */ + 'closeInstanceAfterEndMinutes'?: number; + /** + * + * @type {string} + * @memberof CalendarEvent + */ + 'createdAt': string; + /** + * + * @type {string} + * @memberof CalendarEvent + */ + 'deletedAt'?: string | null; + /** + * + * @type {string} + * @memberof CalendarEvent + */ + 'description'?: string; + /** + * + * @type {string} + * @memberof CalendarEvent + */ + 'endsAt'?: string; + /** + * + * @type {boolean} + * @memberof CalendarEvent + */ + 'featured'?: boolean; + /** + * + * @type {number} + * @memberof CalendarEvent + */ + 'guestEarlyJoinMinutes'?: number; + /** + * + * @type {number} + * @memberof CalendarEvent + */ + 'hostEarlyJoinMinutes'?: number; + /** + * + * @type {string} + * @memberof CalendarEvent + */ + 'id': string; + /** + * + * @type {string} + * @memberof CalendarEvent + */ + 'imageId'?: string; + /** + * + * @type {string} + * @memberof CalendarEvent + */ + 'imageUrl'?: string | null; + /** + * + * @type {number} + * @memberof CalendarEvent + */ + 'interestedUserCount'?: number; + /** + * + * @type {boolean} + * @memberof CalendarEvent + */ + 'isDraft'?: boolean; + /** + * + * @type {Array} + * @memberof CalendarEvent + */ + 'languages'?: Array; + /** + * + * @type {string} + * @memberof CalendarEvent + */ + 'ownerId'?: string; + /** + * + * @type {Array} + * @memberof CalendarEvent + */ + 'platforms'?: Array; + /** + * + * @type {Array} + * @memberof CalendarEvent + */ + 'roleIds'?: Array | null; + /** + * + * @type {string} + * @memberof CalendarEvent + */ + 'startsAt'?: string; + /** + * + * @type {Array} + * @memberof CalendarEvent + */ + 'tags'?: Array; + /** + * + * @type {string} + * @memberof CalendarEvent + */ + 'title': string; + /** + * + * @type {string} + * @memberof CalendarEvent + */ + 'type'?: string; + /** + * + * @type {string} + * @memberof CalendarEvent + */ + 'updatedAt'?: string; + /** + * + * @type {boolean} + * @memberof CalendarEvent + */ + 'usesInstanceOverflow'?: boolean; + /** + * + * @type {CalendarEventUserInterest} + * @memberof CalendarEvent + */ + 'userInterest'?: CalendarEventUserInterest; +} +/** + * + * @export + * @interface CalendarEventUserInterest + */ +export interface CalendarEventUserInterest { + /** + * + * @type {string} + * @memberof CalendarEventUserInterest + */ + 'createdAt'?: string; + /** + * + * @type {boolean} + * @memberof CalendarEventUserInterest + */ + 'isFollowing'?: boolean; + /** + * + * @type {string} + * @memberof CalendarEventUserInterest + */ + 'updatedAt'?: string; +} /** * * @export @@ -2325,6 +2513,135 @@ export interface CreateAvatarRequest { */ 'unityVersion'?: string; } +/** + * + * @export + * @interface CreateCalendarEventRequest + */ +export interface CreateCalendarEventRequest { + /** + * Event title + * @type {string} + * @memberof CreateCalendarEventRequest + */ + 'title': string; + /** + * Time the event starts at + * @type {string} + * @memberof CreateCalendarEventRequest + */ + 'startsAt': string; + /** + * + * @type {string} + * @memberof CreateCalendarEventRequest + */ + 'description': string; + /** + * Time the event ends at + * @type {string} + * @memberof CreateCalendarEventRequest + */ + 'endsAt': string; + /** + * + * @type {string} + * @memberof CreateCalendarEventRequest + */ + 'category': string; + /** + * + * @type {Array} + * @memberof CreateCalendarEventRequest + */ + 'tags'?: Array; + /** + * + * @type {boolean} + * @memberof CreateCalendarEventRequest + */ + 'isDraft'?: boolean; + /** + * + * @type {string} + * @memberof CreateCalendarEventRequest + */ + 'imageId'?: string; + /** + * + * @type {Array} + * @memberof CreateCalendarEventRequest + */ + 'roleIds'?: Array; + /** + * + * @type {string} + * @memberof CreateCalendarEventRequest + */ + 'parentId'?: string; + /** + * + * @type {Array} + * @memberof CreateCalendarEventRequest + */ + 'platforms'?: Array; + /** + * + * @type {Array} + * @memberof CreateCalendarEventRequest + */ + 'languages'?: Array; + /** + * Send notification to group members. + * @type {boolean} + * @memberof CreateCalendarEventRequest + */ + 'sendCreationNotification': boolean; + /** + * + * @type {boolean} + * @memberof CreateCalendarEventRequest + */ + 'featured'?: boolean; + /** + * + * @type {number} + * @memberof CreateCalendarEventRequest + */ + 'hostEarlyJoinMinutes'?: number; + /** + * + * @type {number} + * @memberof CreateCalendarEventRequest + */ + 'guestEarlyJoinMinutes'?: number; + /** + * + * @type {number} + * @memberof CreateCalendarEventRequest + */ + 'closeInstanceAfterEndMinutes'?: number; + /** + * + * @type {boolean} + * @memberof CreateCalendarEventRequest + */ + 'usesInstanceOverflow'?: boolean; + /** + * + * @type {string} + * @memberof CreateCalendarEventRequest + */ + 'accessType': CreateCalendarEventRequestAccessTypeEnum; +} + +export const CreateCalendarEventRequestAccessTypeEnum = { + Public: 'public', + Group: 'group' +} as const; + +export type CreateCalendarEventRequestAccessTypeEnum = typeof CreateCalendarEventRequestAccessTypeEnum[keyof typeof CreateCalendarEventRequestAccessTypeEnum]; + /** * * @export @@ -4426,6 +4743,19 @@ export interface FinishFileDataUploadRequest { */ 'maxParts': string; } +/** + * + * @export + * @interface FollowCalendarEventRequest + */ +export interface FollowCalendarEventRequest { + /** + * + * @type {boolean} + * @memberof FollowCalendarEventRequest + */ + 'isFollowing': boolean; +} /** * * @export @@ -8215,6 +8545,31 @@ export const OrderOption = { export type OrderOption = typeof OrderOption[keyof typeof OrderOption]; +/** + * + * @export + * @interface PaginatedCalendarEventList + */ +export interface PaginatedCalendarEventList { + /** + * + * @type {Array} + * @memberof PaginatedCalendarEventList + */ + 'results'?: Array; + /** + * The total number of results that the query would return if there were no pagination. + * @type {number} + * @memberof PaginatedCalendarEventList + */ + 'totalCount'?: number; + /** + * Whether there are more results after this page. + * @type {boolean} + * @memberof PaginatedCalendarEventList + */ + 'hasNext'?: boolean; +} /** * * @export @@ -10275,7 +10630,122 @@ export interface UpdateAvatarRequest { /** * * @export - * @interface UpdateFavoriteGroupRequest + * @interface UpdateCalendarEventRequest + */ +export interface UpdateCalendarEventRequest { + /** + * Event title + * @type {string} + * @memberof UpdateCalendarEventRequest + */ + 'title'?: string; + /** + * Time the vent starts at + * @type {string} + * @memberof UpdateCalendarEventRequest + */ + 'startsAt'?: string; + /** + * + * @type {string} + * @memberof UpdateCalendarEventRequest + */ + 'description'?: string; + /** + * Time the vent starts at + * @type {string} + * @memberof UpdateCalendarEventRequest + */ + 'endsAt'?: string; + /** + * + * @type {string} + * @memberof UpdateCalendarEventRequest + */ + 'category'?: string; + /** + * + * @type {Array} + * @memberof UpdateCalendarEventRequest + */ + 'tags'?: Array; + /** + * + * @type {boolean} + * @memberof UpdateCalendarEventRequest + */ + 'isDraft'?: boolean; + /** + * + * @type {string} + * @memberof UpdateCalendarEventRequest + */ + 'imageId'?: string; + /** + * + * @type {Array} + * @memberof UpdateCalendarEventRequest + */ + 'roleIds'?: Array; + /** + * + * @type {string} + * @memberof UpdateCalendarEventRequest + */ + 'parentId'?: string; + /** + * + * @type {Array} + * @memberof UpdateCalendarEventRequest + */ + 'platforms'?: Array; + /** + * + * @type {Array} + * @memberof UpdateCalendarEventRequest + */ + 'languages'?: Array; + /** + * Send notification to group members. + * @type {boolean} + * @memberof UpdateCalendarEventRequest + */ + 'sendCreationNotification'?: boolean; + /** + * + * @type {boolean} + * @memberof UpdateCalendarEventRequest + */ + 'featured'?: boolean; + /** + * + * @type {number} + * @memberof UpdateCalendarEventRequest + */ + 'hostEarlyJoinMinutes'?: number; + /** + * + * @type {number} + * @memberof UpdateCalendarEventRequest + */ + 'guestEarlyJoinMinutes'?: number; + /** + * + * @type {number} + * @memberof UpdateCalendarEventRequest + */ + 'closeInstanceAfterEndMinutes'?: number; + /** + * + * @type {boolean} + * @memberof UpdateCalendarEventRequest + */ + 'usesInstanceOverflow'?: boolean; +} +/** + * + * @export + * @interface UpdateFavoriteGroupRequest */ export interface UpdateFavoriteGroupRequest { /** @@ -13916,6 +14386,877 @@ export class AvatarsApi extends BaseAPI { } +/** + * CalendarApi - axios parameter creator + * @export + */ +export const CalendarApiAxiosParamCreator = function (configuration?: Configuration) { + return { + /** + * Creates an event for a group on the calendar + * @summary Create a calendar event + * @param {string} groupId Must be a valid group ID. + * @param {CreateCalendarEventRequest} createCalendarEventRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + createGroupCalendarEvent: async (groupId: string, createCalendarEventRequest: CreateCalendarEventRequest, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'groupId' is not null or undefined + assertParamExists('createGroupCalendarEvent', 'groupId', groupId) + // verify required parameter 'createCalendarEventRequest' is not null or undefined + assertParamExists('createGroupCalendarEvent', 'createCalendarEventRequest', createCalendarEventRequest) + const localVarPath = `/calendar/{groupId}/event` + .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(createCalendarEventRequest, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Delete a group calendar event + * @summary Delete a calendar event + * @param {string} groupId Must be a valid group ID. + * @param {string} calendarId Must be a valid calendar ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + deleteGroupCalendarEvent: async (groupId: string, calendarId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'groupId' is not null or undefined + assertParamExists('deleteGroupCalendarEvent', 'groupId', groupId) + // verify required parameter 'calendarId' is not null or undefined + assertParamExists('deleteGroupCalendarEvent', 'calendarId', calendarId) + const localVarPath = `/calendar/{groupId}/{calendarId}` + .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))) + .replace(`{${"calendarId"}}`, encodeURIComponent(String(calendarId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Follow or unfollow an event on a group\'s calendar + * @summary Follow a calendar event + * @param {string} groupId Must be a valid group ID. + * @param {string} calendarId Must be a valid calendar ID. + * @param {FollowCalendarEventRequest} followCalendarEventRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + followGroupCalendarEvent: async (groupId: string, calendarId: string, followCalendarEventRequest: FollowCalendarEventRequest, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'groupId' is not null or undefined + assertParamExists('followGroupCalendarEvent', 'groupId', groupId) + // verify required parameter 'calendarId' is not null or undefined + assertParamExists('followGroupCalendarEvent', 'calendarId', calendarId) + // verify required parameter 'followCalendarEventRequest' is not null or undefined + assertParamExists('followGroupCalendarEvent', 'followCalendarEventRequest', followCalendarEventRequest) + const localVarPath = `/calendar/{groupId}/{calendarId}/follow` + .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))) + .replace(`{${"calendarId"}}`, encodeURIComponent(String(calendarId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(followCalendarEventRequest, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get a list of a user\'s calendar events for the month in ?date + * @summary List calendar events + * @param {string} [date] The month to search in. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getCalendarEvents: async (date?: string, n?: number, offset?: number, options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/calendar`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + if (date !== undefined) { + localVarQueryParameter['date'] = (date as any instanceof Date) ? + (date as any).toISOString() : + date; + } + + if (n !== undefined) { + localVarQueryParameter['n'] = n; + } + + if (offset !== undefined) { + localVarQueryParameter['offset'] = offset; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get a list of a featured calendar events for the month in ?date + * @summary List featured calendar events + * @param {string} [date] The month to search in. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFeaturedCalendarEvents: async (date?: string, n?: number, offset?: number, options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/calendar/featured`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + if (date !== undefined) { + localVarQueryParameter['date'] = (date as any instanceof Date) ? + (date as any).toISOString() : + date; + } + + if (n !== undefined) { + localVarQueryParameter['n'] = n; + } + + if (offset !== undefined) { + localVarQueryParameter['offset'] = offset; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get a list of a followed calendar events for the month in ?date + * @summary List followed calendar events + * @param {string} [date] The month to search in. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFollowedCalendarEvents: async (date?: string, n?: number, offset?: number, options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/calendar/following`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + if (date !== undefined) { + localVarQueryParameter['date'] = (date as any instanceof Date) ? + (date as any).toISOString() : + date; + } + + if (n !== undefined) { + localVarQueryParameter['n'] = n; + } + + if (offset !== undefined) { + localVarQueryParameter['offset'] = offset; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get a group calendar event + * @summary Get a calendar event + * @param {string} groupId Must be a valid group ID. + * @param {string} calendarId Must be a valid calendar ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getGroupCalendarEvent: async (groupId: string, calendarId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'groupId' is not null or undefined + assertParamExists('getGroupCalendarEvent', 'groupId', groupId) + // verify required parameter 'calendarId' is not null or undefined + assertParamExists('getGroupCalendarEvent', 'calendarId', calendarId) + const localVarPath = `/calendar/{groupId}/{calendarId}` + .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))) + .replace(`{${"calendarId"}}`, encodeURIComponent(String(calendarId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Returns the specified calendar in iCalendar (ICS) format. + * @summary Download calendar event as ICS + * @param {string} groupId Must be a valid group ID. + * @param {string} calendarId Must be a valid calendar ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getGroupCalendarEventICS: async (groupId: string, calendarId: string, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'groupId' is not null or undefined + assertParamExists('getGroupCalendarEventICS', 'groupId', groupId) + // verify required parameter 'calendarId' is not null or undefined + assertParamExists('getGroupCalendarEventICS', 'calendarId', calendarId) + const localVarPath = `/calendar/{groupId}/{calendarId}.ics` + .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))) + .replace(`{${"calendarId"}}`, encodeURIComponent(String(calendarId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Get a list of a group\'s calendar events + * @summary List a group\'s calendar events + * @param {string} groupId Must be a valid group ID. + * @param {string} [date] The month to search in. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getGroupCalendarEvents: async (groupId: string, date?: string, n?: number, offset?: number, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'groupId' is not null or undefined + assertParamExists('getGroupCalendarEvents', 'groupId', groupId) + const localVarPath = `/calendar/{groupId}` + .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + if (date !== undefined) { + localVarQueryParameter['date'] = (date as any instanceof Date) ? + (date as any).toISOString() : + date; + } + + if (n !== undefined) { + localVarQueryParameter['n'] = n; + } + + if (offset !== undefined) { + localVarQueryParameter['offset'] = offset; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Updates an event for a group on the calendar + * @summary Update a calendar event + * @param {string} groupId Must be a valid group ID. + * @param {string} calendarId Must be a valid calendar ID. + * @param {UpdateCalendarEventRequest} updateCalendarEventRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + updateGroupCalendarEvent: async (groupId: string, calendarId: string, updateCalendarEventRequest: UpdateCalendarEventRequest, options: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'groupId' is not null or undefined + assertParamExists('updateGroupCalendarEvent', 'groupId', groupId) + // verify required parameter 'calendarId' is not null or undefined + assertParamExists('updateGroupCalendarEvent', 'calendarId', calendarId) + // verify required parameter 'updateCalendarEventRequest' is not null or undefined + assertParamExists('updateGroupCalendarEvent', 'updateCalendarEventRequest', updateCalendarEventRequest) + const localVarPath = `/calendar/{groupId}/{calendarId}/event` + .replace(`{${"groupId"}}`, encodeURIComponent(String(groupId))) + .replace(`{${"calendarId"}}`, encodeURIComponent(String(calendarId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication authCookie required + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(updateCalendarEventRequest, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + } +}; + +/** + * CalendarApi - functional programming interface + * @export + */ +export const CalendarApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = CalendarApiAxiosParamCreator(configuration) + return { + /** + * Creates an event for a group on the calendar + * @summary Create a calendar event + * @param {string} groupId Must be a valid group ID. + * @param {CreateCalendarEventRequest} createCalendarEventRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async createGroupCalendarEvent(groupId: string, createCalendarEventRequest: CreateCalendarEventRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.createGroupCalendarEvent(groupId, createCalendarEventRequest, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Delete a group calendar event + * @summary Delete a calendar event + * @param {string} groupId Must be a valid group ID. + * @param {string} calendarId Must be a valid calendar ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async deleteGroupCalendarEvent(groupId: string, calendarId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.deleteGroupCalendarEvent(groupId, calendarId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Follow or unfollow an event on a group\'s calendar + * @summary Follow a calendar event + * @param {string} groupId Must be a valid group ID. + * @param {string} calendarId Must be a valid calendar ID. + * @param {FollowCalendarEventRequest} followCalendarEventRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async followGroupCalendarEvent(groupId: string, calendarId: string, followCalendarEventRequest: FollowCalendarEventRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.followGroupCalendarEvent(groupId, calendarId, followCalendarEventRequest, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Get a list of a user\'s calendar events for the month in ?date + * @summary List calendar events + * @param {string} [date] The month to search in. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getCalendarEvents(date?: string, n?: number, offset?: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getCalendarEvents(date, n, offset, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Get a list of a featured calendar events for the month in ?date + * @summary List featured calendar events + * @param {string} [date] The month to search in. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getFeaturedCalendarEvents(date?: string, n?: number, offset?: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getFeaturedCalendarEvents(date, n, offset, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Get a list of a followed calendar events for the month in ?date + * @summary List followed calendar events + * @param {string} [date] The month to search in. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getFollowedCalendarEvents(date?: string, n?: number, offset?: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getFollowedCalendarEvents(date, n, offset, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Get a group calendar event + * @summary Get a calendar event + * @param {string} groupId Must be a valid group ID. + * @param {string} calendarId Must be a valid calendar ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getGroupCalendarEvent(groupId: string, calendarId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getGroupCalendarEvent(groupId, calendarId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Returns the specified calendar in iCalendar (ICS) format. + * @summary Download calendar event as ICS + * @param {string} groupId Must be a valid group ID. + * @param {string} calendarId Must be a valid calendar ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getGroupCalendarEventICS(groupId: string, calendarId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getGroupCalendarEventICS(groupId, calendarId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Get a list of a group\'s calendar events + * @summary List a group\'s calendar events + * @param {string} groupId Must be a valid group ID. + * @param {string} [date] The month to search in. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getGroupCalendarEvents(groupId: string, date?: string, n?: number, offset?: number, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getGroupCalendarEvents(groupId, date, n, offset, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Updates an event for a group on the calendar + * @summary Update a calendar event + * @param {string} groupId Must be a valid group ID. + * @param {string} calendarId Must be a valid calendar ID. + * @param {UpdateCalendarEventRequest} updateCalendarEventRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async updateGroupCalendarEvent(groupId: string, calendarId: string, updateCalendarEventRequest: UpdateCalendarEventRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.updateGroupCalendarEvent(groupId, calendarId, updateCalendarEventRequest, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + } +}; + +/** + * CalendarApi - factory interface + * @export + */ +export const CalendarApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = CalendarApiFp(configuration) + return { + /** + * Creates an event for a group on the calendar + * @summary Create a calendar event + * @param {string} groupId Must be a valid group ID. + * @param {CreateCalendarEventRequest} createCalendarEventRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + createGroupCalendarEvent(groupId: string, createCalendarEventRequest: CreateCalendarEventRequest, options?: any): AxiosPromise { + return localVarFp.createGroupCalendarEvent(groupId, createCalendarEventRequest, options).then((request) => request(axios, basePath)); + }, + /** + * Delete a group calendar event + * @summary Delete a calendar event + * @param {string} groupId Must be a valid group ID. + * @param {string} calendarId Must be a valid calendar ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + deleteGroupCalendarEvent(groupId: string, calendarId: string, options?: any): AxiosPromise { + return localVarFp.deleteGroupCalendarEvent(groupId, calendarId, options).then((request) => request(axios, basePath)); + }, + /** + * Follow or unfollow an event on a group\'s calendar + * @summary Follow a calendar event + * @param {string} groupId Must be a valid group ID. + * @param {string} calendarId Must be a valid calendar ID. + * @param {FollowCalendarEventRequest} followCalendarEventRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + followGroupCalendarEvent(groupId: string, calendarId: string, followCalendarEventRequest: FollowCalendarEventRequest, options?: any): AxiosPromise { + return localVarFp.followGroupCalendarEvent(groupId, calendarId, followCalendarEventRequest, options).then((request) => request(axios, basePath)); + }, + /** + * Get a list of a user\'s calendar events for the month in ?date + * @summary List calendar events + * @param {string} [date] The month to search in. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getCalendarEvents(date?: string, n?: number, offset?: number, options?: any): AxiosPromise { + return localVarFp.getCalendarEvents(date, n, offset, options).then((request) => request(axios, basePath)); + }, + /** + * Get a list of a featured calendar events for the month in ?date + * @summary List featured calendar events + * @param {string} [date] The month to search in. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFeaturedCalendarEvents(date?: string, n?: number, offset?: number, options?: any): AxiosPromise { + return localVarFp.getFeaturedCalendarEvents(date, n, offset, options).then((request) => request(axios, basePath)); + }, + /** + * Get a list of a followed calendar events for the month in ?date + * @summary List followed calendar events + * @param {string} [date] The month to search in. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getFollowedCalendarEvents(date?: string, n?: number, offset?: number, options?: any): AxiosPromise { + return localVarFp.getFollowedCalendarEvents(date, n, offset, options).then((request) => request(axios, basePath)); + }, + /** + * Get a group calendar event + * @summary Get a calendar event + * @param {string} groupId Must be a valid group ID. + * @param {string} calendarId Must be a valid calendar ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getGroupCalendarEvent(groupId: string, calendarId: string, options?: any): AxiosPromise { + return localVarFp.getGroupCalendarEvent(groupId, calendarId, options).then((request) => request(axios, basePath)); + }, + /** + * Returns the specified calendar in iCalendar (ICS) format. + * @summary Download calendar event as ICS + * @param {string} groupId Must be a valid group ID. + * @param {string} calendarId Must be a valid calendar ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getGroupCalendarEventICS(groupId: string, calendarId: string, options?: any): AxiosPromise { + return localVarFp.getGroupCalendarEventICS(groupId, calendarId, options).then((request) => request(axios, basePath)); + }, + /** + * Get a list of a group\'s calendar events + * @summary List a group\'s calendar events + * @param {string} groupId Must be a valid group ID. + * @param {string} [date] The month to search in. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getGroupCalendarEvents(groupId: string, date?: string, n?: number, offset?: number, options?: any): AxiosPromise { + return localVarFp.getGroupCalendarEvents(groupId, date, n, offset, options).then((request) => request(axios, basePath)); + }, + /** + * Updates an event for a group on the calendar + * @summary Update a calendar event + * @param {string} groupId Must be a valid group ID. + * @param {string} calendarId Must be a valid calendar ID. + * @param {UpdateCalendarEventRequest} updateCalendarEventRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + updateGroupCalendarEvent(groupId: string, calendarId: string, updateCalendarEventRequest: UpdateCalendarEventRequest, options?: any): AxiosPromise { + return localVarFp.updateGroupCalendarEvent(groupId, calendarId, updateCalendarEventRequest, options).then((request) => request(axios, basePath)); + }, + }; +}; + +/** + * CalendarApi - object-oriented interface + * @export + * @class CalendarApi + * @extends {BaseAPI} + */ +export class CalendarApi extends BaseAPI { + /** + * Creates an event for a group on the calendar + * @summary Create a calendar event + * @param {string} groupId Must be a valid group ID. + * @param {CreateCalendarEventRequest} createCalendarEventRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof CalendarApi + */ + public createGroupCalendarEvent(groupId: string, createCalendarEventRequest: CreateCalendarEventRequest, options?: AxiosRequestConfig) { + return CalendarApiFp(this.configuration).createGroupCalendarEvent(groupId, createCalendarEventRequest, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Delete a group calendar event + * @summary Delete a calendar event + * @param {string} groupId Must be a valid group ID. + * @param {string} calendarId Must be a valid calendar ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof CalendarApi + */ + public deleteGroupCalendarEvent(groupId: string, calendarId: string, options?: AxiosRequestConfig) { + return CalendarApiFp(this.configuration).deleteGroupCalendarEvent(groupId, calendarId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Follow or unfollow an event on a group\'s calendar + * @summary Follow a calendar event + * @param {string} groupId Must be a valid group ID. + * @param {string} calendarId Must be a valid calendar ID. + * @param {FollowCalendarEventRequest} followCalendarEventRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof CalendarApi + */ + public followGroupCalendarEvent(groupId: string, calendarId: string, followCalendarEventRequest: FollowCalendarEventRequest, options?: AxiosRequestConfig) { + return CalendarApiFp(this.configuration).followGroupCalendarEvent(groupId, calendarId, followCalendarEventRequest, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Get a list of a user\'s calendar events for the month in ?date + * @summary List calendar events + * @param {string} [date] The month to search in. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof CalendarApi + */ + public getCalendarEvents(date?: string, n?: number, offset?: number, options?: AxiosRequestConfig) { + return CalendarApiFp(this.configuration).getCalendarEvents(date, n, offset, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Get a list of a featured calendar events for the month in ?date + * @summary List featured calendar events + * @param {string} [date] The month to search in. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof CalendarApi + */ + public getFeaturedCalendarEvents(date?: string, n?: number, offset?: number, options?: AxiosRequestConfig) { + return CalendarApiFp(this.configuration).getFeaturedCalendarEvents(date, n, offset, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Get a list of a followed calendar events for the month in ?date + * @summary List followed calendar events + * @param {string} [date] The month to search in. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof CalendarApi + */ + public getFollowedCalendarEvents(date?: string, n?: number, offset?: number, options?: AxiosRequestConfig) { + return CalendarApiFp(this.configuration).getFollowedCalendarEvents(date, n, offset, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Get a group calendar event + * @summary Get a calendar event + * @param {string} groupId Must be a valid group ID. + * @param {string} calendarId Must be a valid calendar ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof CalendarApi + */ + public getGroupCalendarEvent(groupId: string, calendarId: string, options?: AxiosRequestConfig) { + return CalendarApiFp(this.configuration).getGroupCalendarEvent(groupId, calendarId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Returns the specified calendar in iCalendar (ICS) format. + * @summary Download calendar event as ICS + * @param {string} groupId Must be a valid group ID. + * @param {string} calendarId Must be a valid calendar ID. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof CalendarApi + */ + public getGroupCalendarEventICS(groupId: string, calendarId: string, options?: AxiosRequestConfig) { + return CalendarApiFp(this.configuration).getGroupCalendarEventICS(groupId, calendarId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Get a list of a group\'s calendar events + * @summary List a group\'s calendar events + * @param {string} groupId Must be a valid group ID. + * @param {string} [date] The month to search in. + * @param {number} [n] The number of objects to return. + * @param {number} [offset] A zero-based offset from the default object sorting from where search results start. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof CalendarApi + */ + public getGroupCalendarEvents(groupId: string, date?: string, n?: number, offset?: number, options?: AxiosRequestConfig) { + return CalendarApiFp(this.configuration).getGroupCalendarEvents(groupId, date, n, offset, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * Updates an event for a group on the calendar + * @summary Update a calendar event + * @param {string} groupId Must be a valid group ID. + * @param {string} calendarId Must be a valid calendar ID. + * @param {UpdateCalendarEventRequest} updateCalendarEventRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof CalendarApi + */ + public updateGroupCalendarEvent(groupId: string, calendarId: string, updateCalendarEventRequest: UpdateCalendarEventRequest, options?: AxiosRequestConfig) { + return CalendarApiFp(this.configuration).updateGroupCalendarEvent(groupId, calendarId, updateCalendarEventRequest, options).then((request) => request(this.axios, this.basePath)); + } +} + + /** * EconomyApi - axios parameter creator * @export diff --git a/base.ts b/base.ts index abd4834..42acb8e 100644 --- a/base.ts +++ b/base.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.20.1 + * The version of the OpenAPI document: 1.20.2 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/common.ts b/common.ts index 60cfca6..03a5bbe 100644 --- a/common.ts +++ b/common.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.20.1 + * The version of the OpenAPI document: 1.20.2 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/configuration.ts b/configuration.ts index 8d6ff34..99e31ca 100644 --- a/configuration.ts +++ b/configuration.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.20.1 + * The version of the OpenAPI document: 1.20.2 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/index.ts b/index.ts index 3b7103a..853188b 100644 --- a/index.ts +++ b/index.ts @@ -3,7 +3,7 @@ /** * VRChat API Documentation * - * The version of the OpenAPI document: 1.20.1 + * The version of the OpenAPI document: 1.20.2 * Contact: vrchatapi.lpv0t@aries.fyi * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/package-lock.json b/package-lock.json index c28b582..9870517 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "vrchat", - "version": "1.20.1", + "version": "1.20.2", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "vrchat", - "version": "1.20.1", + "version": "1.20.2", "license": "MIT", "dependencies": { "@types/tough-cookie": "^4.0.1", diff --git a/package.json b/package.json index 8c2a6de..c1b64df 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vrchat", - "version": "1.20.1", + "version": "1.20.2", "description": "🟡🔵 VRChat API Library for JavaScript and TypeScript", "author": "OpenAPI-Generator Contributors", "repository": {